ما از دستور DELETE اس کیو ال برای حذف رکورد از جدول بانک اطلاعتی استفاده می کنیم 
 
 ما می خواهیم رکوردی را از جدول Customers  که در بانک Northwind  است حذف کنیم
 

 به دو صفحه نیاز داریم :

test1.asp

test2.asp

  دستورات فایل test1.asp :
در صفحه test1.asp دستوراتی می نویسیم که تمام فیلدهای رکوردهای جدول Customers  را در یک جدول html لیست می کند

 

<html>
<body>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "d:/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
  response.write("<th>" & ucase(x.name) & "</th>")
next
%>
</tr>
<% do until rs.EOF %>
<tr>
<form method="post" action="test2.asp">
<%
for each x in rs.Fields
  if x.name="customerID" then%>
    <td>
    <input type="submit" name="customerID" value="<%=x.value%>">
    </td>
  <%else%>
    <td><%Response.Write(x.value)%></td>
  <%end if
next
%>
</form>
<%rs.MoveNext%>
</tr>
<%
loop
conn.close
%>
</table>

</body>
</html>

 
 در اینجا ما شماره customerID هر مشتری را روی یک دکمه از نوع submit نمایش می دهیم
 با کلیک روی ان دکمه کاربر به صفحه test2.asp منتق می شود
 هر سطری از جدول نمایش داده ها یک فرم است و هر فرمی دکمهsubmit خودش را دارد
 
 دستورات فایل test2.asp :
 

 

<html>
<body>

<h2>Delete Record</h2>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "d:/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="test2.asp">
  <table>
  <%for each x in rs.Fields%>
  <tr>
  <td><%=x.name%></td>
  <td><input name="<%=x.name%>" value="<%=x.value%>"></td>
  <%next%>
  </tr>
  </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>


 

 

 داده های فیلدهای رکورد مورد نظر را ابتدا در یک فرم نمایش می دهد

با کلیک روی دکمه delete که از نوع submit است دوباره به همین صفحه test2.asp برمی گردیم ولی این بار دستورات قسمت else اجرا می شود

شرط if یعنی مقدار companyname فرمی که از صفحه  test1.asp ارسال شده یک شرط گمراه کنده است چون در فرم صفه test1.asp اصلا چنین فیلدی وجود ندارد

پس همیشه با ورود به صفحه test2 از صفحه test1 ،  دستور if انجام می شود

 شرط if و else برای این بکار برده شده که دستورات  نمایش  داده های رکورد مورد نظر و عملیات حذف انها در یک برنامه نوشته شود

شما می توانید به سلیقه خود تعداد برنامه ها  را بیشتر کنید و دستورات شرط را حذف کنید در این صورت باید دستورات قسمت else در صفحه سومی نوشته شود

و شماره id فرم برای ان ارسال شود