ลบบันทึก ADO

เราสามารถใช้คำสั่ง DELETE ของ SQL เพื่อลบบันทึกบางบันทึกในตารางฐานข้อมูล

ลบบันทึกในตาราง

เราต้องการลบบันทึกหนึ่งบันทึกในตาราง Customers ของฐานข้อมูล Northwind ตรงไปตรงมา เราต้องการสร้างตารางเพื่อบันทึกบันทึกทั้งหมดใน Customers

<html>
<body>
<%
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>รายชื่อฐานข้อมูล</h2>
<table border="1" width="100%">
<tr>
<%
for each x in rs.Fields
  response.write("<th>" & ucase(x.name) & "</th>")
next
%>

<% 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><%Response.Write(x.value)%></td>
  <%end if
next
%>

<%rs.MoveNext%>

<%
loop
conn.close
%>



หากผู้ใช้คลิกที่ปุ่มในคอลัมน์ "customerID" จะเปิดไฟล์ "demo_delete.asp" นี้ ไฟล์นี้มีรหัสแบบแบบที่สร้างช่องบันทึกซึ่งขึ้นอยู่กับช่องของบันทึกในฐานข้อมูล และมีปุ่ม "ลบบันทึก" สำหรับลบบันทึกปัจจุบัน:

<html>
<body>
<h2>ลบบันทึก</h2>
<%
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>
  <%next%>
  
  
  

<% 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 %>