ADO Record Toevoegen
- Vorige Pagina ADO Sorteren
- Volgende Pagina ADO Update
We kunnen het SQL INSERT INTO-commando gebruiken om een record toe te voegen aan een tabel in de database.
Record toevoegen aan tabel in database
Wij willen een nieuw record toevoegen aan de Customers-tabel in de Northwind-database. Om dit te doen, moeten we eerst een formulier maken dat de invoervelden bevat die we nodig hebben om gegevens van te verzamelen:
<html> <body> <form method="post" action="demo_add.asp"> <table> <tr> <td>CustomerID:</td> <td><input name="custid"></td> </tr><tr> <td>Bedrijfsnaam:</td> <td><input name="compname"></td> </tr><tr> <td>Contactnaam:</td> <td><input name="contname"></td> </tr><tr> <td>Adres:</td> <td><input name="address"></td> </tr><tr> <td>Stad:</td> <td><input name="city"></td> </tr><tr> <td>Postcode:</td> <td><input name="postcode"></td> </tr><tr> <td>Land:</td> <td><input name="country"></td> </tr> </table> <br /><br /> <input type="submit" value="Nieuw toevoegen"> <input type="reset" value="Annuleren"> </form> </body> </html>
Wanneer de gebruiker op de bevestigingsknop drukt, wordt dit formulier naar het bestand "demo_add.asp" gestuurd. Het bestand "demo_add.asp" bevat code om een nieuw record toe te voegen aan de 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("Geen update-permissies!") else Response.Write("<h3>" & recaffected & " record added</h3>") end if conn.close %> </body> </html>
Belangrijke Zaken
Bij het gebruik van de INSERT command-opdracht, let op het volgende:
- Als een tabel een hoofdsleutel bevat, zorg ervoor dat de waarde die je toevoegt aan het hoofdsleutelveld uniek en niet leeg is (anders zal de provider het record niet toevoegen of kan er een fout optreden).
- Als een tabel een automatisch nummererend veld bevat, voeg dit veld dan niet toe aan de INSERT-opdracht (de waarde van dit veld wordt verzorgd door de provider).
Over lege gegevens-velden
In een MS Access-database, als je de AllowZeroLength-eigenschap instelt op 'Ja', kun je nullengrote strings ('') invoeren in tekst, hyperlinks en memo-velden.
Opmerking:Niet alle databases ondersteunen strings van nul lengte, dus kan er een fout optreden wanneer je een record met lege velden toevoegt. Het is daarom belangrijk om na te gaan welke datatypes je database ondersteunt.
- Vorige Pagina ADO Sorteren
- Volgende Pagina ADO Update