ADO lägga till post
- Föregående sida ADO sortering
- Nästa sida ADO uppdatering
Vi kan använda SQL:s INSERT INTO-kommando för att lägga till poster i tabell i databasen.
Lägg till poster i tabell i databasen
Vi hoppas att lägga till ett nytt register i Customers-tabellen i Northwind-databasen. Först måste vi skapa ett formulär som innehåller de inmatningsfält vi behöver samla in data från:
<html> <body> <form method="post" action="demo_add.asp"> <table> <tr> <td>CustomerID:</td> <td><input name="custid"></td> </tr><tr> <td>Company Name:</td> <td><input name="compname"></td> </tr><tr> <td>Contact Name:</td> <td><input name="contname"></td> </tr><tr> <td>Address:</td> <td><input name="address"></td> </tr><tr> <td>City:</td> <td><input name="city"></td> </tr><tr> <td>Postal Code:</td> <td><input name="postcode"></td> </tr><tr> <td>Country:</td> <td><input name="country"></td> </tr> </table> <br /><br /> <input type="submit" value="Lägg till ny"> <input type="reset" value="Avbryt"> </form> %> </body>
När användaren trycker på bekräftelsknappen skickas denna formulär till filen "demo_add.asp" som innehåller kod för att lägga till ett nytt post i tabellen Customers:
<html> <body> <% set conn=Server.CreateObject("ADODB.Connection") conn.Provider="Microsoft.Jet.OLEDB.4.0" conn.Open "c:/webdata/northwind.mdb" sql="INSERT INTO customers (customerID,companyname," sql=sql & "contactname,address,city,postalcode,country)" sql=sql & " VALUES " sql=sql & "('" & Request.Form("custid") & "'," sql=sql & "'" & Request.Form("compname") & "'," sql=sql & "'" & Request.Form("contname") & "'," sql=sql & "'" & Request.Form("address") & "'," sql=sql & "'" & Request.Form("city") & "'," sql=sql & "'" & Request.Form("postcode") & "'," sql=sql & "'" & Request.Form("country") & "')" på fel fortsätt nästa conn.Execute sql,recaffected om err<>0 då Response.Write("Inga uppdateringsrättigheter!") annars Response.Write("<h3>" & recaffected & " record added</h3>") end if end if conn.close %> </body>
</html>
Viktiga saker att tänka på
- När du använder INSERT command-kommandot, notera följande:
- Om tabellen har en huvudnyckel, se till att värdet du lägger till i huvudnyckelsfältet är unikt och inte tomt (annars kommer providern inte att lägga till posten, eller kan det uppstå ett fel).
Om det finns ett automatiskt numrerat fält i tabellen, bör du inte inkludera detta fält i INSERT-kommandot (värdet för detta fält hanteras av providern).
I MS Access-databasen, om du sätter AllowZeroLength-egenskapen till "Ja", kan du ange strängar med noll längd ("") i text, hyperlänk och anteckningsfält.
Kommentar:Alla databaser stöder inte strängar med noll längd, så det kan uppstå fel när du lägger till poster med tomma fält. Det är därför viktigt att kontrollera vilka datatyper din databas stöder.
- Föregående sida ADO sortering
- Nästa sida ADO uppdatering