فهرست سرفصل‌های ASP
خانه (HOME) معرفی (WebPages Intro) ریزر (WebPages Razor) چیدمان (WebPages Layout) پوشه ها (WebPages Folders) گلوبال (WebPages Global) فرم ها (WebPages Forms) اشیا (WebPages Objects) فایل ها (WebPages Files) پایگاه داده ها (WebPages Databases) هلپرها (WebPages Helpers) وب گرید (WebPages WebGrid) نمودارها (WebPages Charts) ایمیل (WebPages Email) امنیت (WebPages Security) انتشار (WebPages Publish) نمونه ها (WebPages Examples) کلاس ها (WebPages Classes) معرفی (Razor Intro) سینتکس (Razor Syntax) متغیرها (Razor C# Variables) حلقه ها (Razor C# Loops) منطق (Razor C# Logic) متغیرها (Razor VB Variables) حلقه ها (Razor VB Loops) منطق (Razor VB Logic) معرفی (ASP Intro) سینتکس (ASP Syntax) متغیرها (ASP Variables) رویه ها (ASP Procedures) شرط ها (ASP Conditionals) حلقه ها (ASP Looping) فرم ها (ASP Forms) کوکی ها (ASP Cookies) نشست (ASP Session) برنامه (ASP Application) اینکلود (#include) (ASP #include) Global.asa (ASP Global.asa) AJAX (ASP AJAX) ایمیل (ASP e-mail) نمونه ها (ASP Examples) گواهینامه (ASP Certificate) توابع VB (ASP VB Functions) کلیدواژه های VB (ASP VB Keywords) Response (ASP Response) Request (ASP Request) Application (ASP Application) Session (ASP Session) Server (ASP Server) Error (ASP Error) FileSystem (ASP FileSystem) TextStream (ASP TextStream) Drive (ASP Drive) File (ASP File) Folder (ASP Folder) Dictionary (ASP Dictionary) AdRotator (ASP AdRotator) BrowserCap (ASP BrowserCap) پیوند محتوا (ASP Content Linking) گرداننده محتوا (ASP Content Rotator) راهنمای سریع (ASP Quick Ref) معرفی (ADO Intro) اتصال (ADO Connect) رکوردست (ADO Recordset) نمایش (ADO Display) کوئری (ADO Query) مرتب سازی (ADO Sort) افزودن (ADO Add) به روزرسانی (ADO Update) حذف (ADO Delete) فرمان (ADO Command) اتصال (ADO Connection) خطا (ADO Error) فیلد (ADO Field) پارامتر (ADO Parameter) ویژگی (ADO Property) رکورد (ADO Record) رکوردست (ADO Recordset) جریان (ADO Stream) انواع داده (ADO DataTypes)
نتیجه‌ای برای جستجو یافت نشد.
ASP

ASP — حذف (ADO Delete)

آخرین بروزرسانی: 1404/08/14

حذف (ADO Delete)

اینجا «حذف رکورد ADO» را می بینیم. «DELETE» یعنی پاک کردن سطر. «رکورد (Record)» یک سطر جدول است. مثل حذف نام یک دانش آموز از دفتر کلاس.

نمایش رکوردها و دکمه حذف

اول همه رکوردها فهرست می شوند. سپس برای هر سطر، یک دکمه گذاشته می شود تا شناسه همان رکورد ارسال شود.

<html>
<body>
<%
  Dim conn
  Dim rs
  Dim x
  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Provider = "Microsoft.Jet.OLEDB.4.0"
  conn.Open "c:/webdata/northwind.mdb"
  Set rs = Server.CreateObject("ADODB.Recordset")
  rs.Open "SELECT * FROM customers", conn
%>
<h2>List Database</h2>
<table border="1" width="100%">
  <tr>
    <% For Each x In rs.Fields %>
      <th><%= UCase(x.Name) %></th>
    <% Next %>
  </tr>
  <% Do Until rs.EOF %>
    <tr>
      <form method="post" action="demo_delete.asp">
        <% For Each x In rs.Fields %>
          <% If x.Name = "customerID" Then %>
            <td>
              <input type="submit" name="customerID" value="<%= x.Value %>" />
            </td>
          <% Else %>
            <td><%= x.Value %></td>
          <% End If %>
        <% Next %>
      </form>
      <% rs.MoveNext %>
    </tr>
  <% Loop %>
<%
  conn.Close
%>
</table>
</body>
</html>

مشاهده در ادیتور

تأیید و حذف رکورد با DELETE

پس از کلیک روی شناسه، صفحه حذف باز می شود. ابتدا رکورد را نشان می دهد. سپس با دکمه حذف، فرمان DELETE اجرا می شود.

<html>
<body>
<h2>Delete Record</h2>
<%
  Dim conn
  Dim rs
  Dim cid
  Dim sql
  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Provider = "Microsoft.Jet.OLEDB.4.0"
  conn.Open "c:/webdata/northwind.mdb"
  cid = Request.Form("customerID")
  If Request.Form("companyname") = "" Then
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open "SELECT * FROM customers WHERE customerID='" & cid & "'", conn
%>
<form method="post" action="demo_delete.asp">
  <table>
    <% For Each x In rs.Fields %>
      <tr>
        <td><%= x.Name %></td>
        <td><input name="<%= x.Name %>" value="<%= x.Value %>" /></td>
      </tr>
    <% Next %>
  </table>
  <br /><br />
  <input type="submit" value="Delete record" />
</form>
<%
  Else
    sql = "DELETE FROM customers "
    sql = sql & "WHERE customerID='" & cid & "'"
    On Error Resume Next
    conn.Execute sql
    If Err <> 0 Then
      Response.Write "No update permissions!"
    Else
      Response.Write "Record " & cid & " was deleted!"
    End If
  End If
  conn.Close
%>
</body>
</html>

مشاهده در ادیتور

گام های عملی سریع

  1. رکوردها را فهرست کن و شناسه را ارسال کن.
  2. رکورد انتخابی را برای تأیید نمایش بده.
  3. با WHERE دقیق، فرمان DELETE را اجرا کن.
  4. پیام نتیجه را نشان بده و اتصال را ببند.

نکته: «WHERE» رکورد هدف را مشخص می کند. بدون آن، همه رکوردها حذف می شوند.

هشدار: ورودی ها را پاک سازی کن تا تزریق SQL رخ ندهد. همیشه حذف را دوباره تأیید کن.

برای ادامه مسیر، به به روزرسانی ADO و دستورهای ADO سر بزن. همچنین صفحه حذف رکورد ADO را نشانه گذاری کن.

جمع بندی سریع

  • DELETE یعنی پاک کردن رکورد.
  • WHERE را فراموش نکن.
  • قبل از حذف، نمایش و تأیید کن.
  • ورودی ها را امن سازی کن.
  • بعد از عملیات، اتصال را ببند.