ADO Slet Record

Vi kan bruge SQL's DELETE-kommando til at slette et bestemt indlæg fra en database tabel.

Sletning af poster i tabellen

Vi ønsker at slette et enkelt indlæg fra Customers-tabellen i Northwind-databasen. Først skal vi oprette en tabel for at liste alle indlæg i 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>List Database</h2>
<table border="1" bredde="100%">
<tr>
<%
for each x in rs.Fields
  response.write("<th>" & ucase(x.name) & "</th>")
næste
%>
</tr>
<% do indtil rs.EOF %>
<tr>
<form metode="post" action="demo_delete.asp">
<%
for each x in rs.Fields
  hvis x.name="customerID" så%>
    <td>
    <input type="submit" navn="customerID" værdi="<%=x.value%>">
    </td>
  <%else%>
    <td><%Response.Write(x.value)%></td>
  <%end if
næste
%>
</form>
<%rs.MoveNext%>
</tr>
<%
loop
conn.close
%>
</table>
</body>
</html>

Hvis brugeren klikker på knappen i "customerID"-kolonnen, åbnes en ny fil "demo_delete.asp". Denne fil indeholder kildekoden til inputfelter, der er baseret på felterne i databasen, og den indeholder også en "slet record"-knap:

<html>
<body>
<h2>Slet Record</h2>
<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
cid=Request.Form("customerID"
hvis Request.form("companyname")="" så
  set rs=Server.CreateObject("ADODB.Recordset")
  rs.open "SELECT * FROM customers WHERE customerID='" & cid & "'",conn
  %>
  <form metode="post" action="demo_delete.asp">
  <table>
  <%for each x in rs.Fields%>
  <tr>
  <td><%=x.name%></td>
  <td><input navn="<%=x.name%>" værdi="<%=x.value%>"></td>
  <%next%>
  </tr>
  </table>
  <br /><br />
  <input type="submit" value="Slet 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("Ingen opdateringsrettigheder!")
  else 
    response.write("Record " & cid & " blev slettet!")
  end if 
end if
conn.close
%>
</body>
</html>