ADO tilføjelse af record
- Forrige side ADO sortering
- Næste side ADO opdatering
Vi kan bruge SQL's INSERT INTO-kommando til at tilføje rækker til tabellen i databasen.
Tilføjelse af rækker til tabellen i databasen
Vi håber at tilføje et nyt indlæg til Customers-tabellen i Northwind-databasen. Først skal vi oprette en formular, som indeholder de inputfelter, vi har brug for at indsamle data fra:
<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="Tilføj Ny"> <input type="reset" value="Annuller"> </form> </body> </html>
Når brugeren trykker på bekræft knappen, vil denne formular blive sendt til filen "demo_add.asp" navngivet. Filen "demo_add.asp" indeholder kode, der kan tilføje et nyt post til Customers tabel:
<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") & "')" on error resume next conn.Execute sql,recaffected if err<>0 then Response.Write("No update permissions!") else Response.Write("<h3>" & recaffected & " record added</h3>") end if conn.close %> </body> </html>
Vigtige oplysninger
Når du bruger INSERT command kommandoen, skal du bemærke følgende:
- Hvis tabellen har en primærnøgle, skal du sikre dig, at værdien, der tilføjes til primærnøglefeltet, er unik og ikke tom (ellers vil provideren ikke tilføje dette record, eller der kan opstå en fejl).
- Hvis tabellen har et automatisk nummereret felt, skal du ikke inkludere dette felt i INSERT kommandoen (værdien af dette felt håndteres af provideren).
Om tomme datafelter
I MS Access database, hvis du sætter AllowZeroLength egenskaben til "Ja", kan du indtaste strenge med null længde ("") i tekst, hyperlink og memo felter.
Kommentar:Ikke alle databaser understøtter strenge med null længde, så når du tilføjer en record med tomme felter, kan der opstå fejl. Det er derfor vigtigt at kontrollere de datatyper, som din database understøtter.
- Forrige side ADO sortering
- Næste side ADO opdatering