Ενημέρωση Εγγραφών με το ADO
- Προηγούμενη Σελίδα Προσθήκη του ADO
- Επόμενη Σελίδα Διαγραφή του ADO
Μπορούμε να χρησιμοποιήσουμε το SQL UPDATE για να ενημερώσουμε μια καταγραφή της βάσης δεδομένων.
Ενημέρωση καταγραφής βάσης δεδομένων
Ελπίζουμε να ενημερώσουμε το αρχείο Northwind των Customers. Πρώτα πρέπει να δημιουργήσουμε ένα πίνακα, για να καταγράψουμε όλα τα αρχεία των 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" 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="demo_update.asp"> <% for each x in rs.Fields if lcase(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", θα ανοίξει ένα νέο αρχείο "demo_update.asp". Αυτό το αρχείο περιέχει τον κώδικα δημιουργίας πεδίων εισαγωγής που βασίζεται στα πεδία των καταγραφών της βάσης δεδομένων, καθώς και ένα κουμπί "Ενημέρωση" για την αποθήκευση των αλλαγών:
<html> <body> <h2>Update 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") 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_update.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="Update record"> </form> <% else sql="UPDATE customers SET " sql=sql & "companyname='" & Request.Form("companyname") & "'," sql=sql & "contactname='" & Request.Form("contactname") & "'," sql=sql & "address='" & Request.Form("address") & "'," sql=sql & "city='" & Request.Form("city") & "'," sql=sql & "postalcode='" & Request.Form("postalcode") & "'," sql=sql & "country='" & Request.Form("country") & "'" sql=sql & " WHERE customerID='" & cid & "'" on error resume next conn.Execute sql if err<>0 then response.write("Δεν υπάρχουν δικαιώματα ενημέρωσης!") else response.write("Εγγραφή " & cid & " ενημερώθηκε!") end if end if conn.close %> </body> </html>
- Προηγούμενη Σελίδα Προσθήκη του ADO
- Επόμενη Σελίδα Διαγραφή του ADO