ADO-Datensatz hinzufügen
- Vorherige Seite ADO-Sortierung
- Nächste Seite ADO-Aktualisierung
Wir können den INSERT INTO-Befehl von SQL verwenden, um Einträge zu einer Tabelle in der Datenbank hinzuzufügen.
Eintrag hinzufügen zur Tabelle in der Datenbank
Wir möchten ein neues Eintrag in die Customers-Tabelle der Northwind-Datenbank hinzufügen. Zunächst müssen wir ein Formular erstellen, das die Eingabefelder enthält, aus denen wir die notwendigen Daten sammeln möchten:
<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="Neu hinzufügen"> <input type="reset" value="Abbrechen"> </form> </body> </html>
Wenn der Benutzer auf die Bestätigungs Taste drückt, wird dieses Formular an die Datei "demo_add.asp" gesendet. Die Datei "demo_add.asp" enthält den Code, um eine neue Zeile in die Tabelle Customers hinzuzufügen:
<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>
Wichtig
Bei der Verwendung des INSERT command-Befehls beachten Sie bitte die folgenden Punkte:
- Wenn die Tabelle ein Primärschlüssel enthält, stellen Sie sicher, dass der Wert, der in das Primärschlüsselfeld eingefügt wird, einzigartig und nicht leer ist (sonst wird der Provider diesen Datensatz nicht hinzufügen oder es kann ein Fehler auftreten).
- Wenn die Tabelle ein automatisch nummeriertes Feld enthält, sollten Sie dieses Feld im INSERT-Befehl nicht berücksichtigen (der Wert dieses Felds wird vom Provider verwaltet).
Über leere Datenfelder
Im MS Access-Datenbank, wenn Sie die Eigenschaft AllowZeroLength auf "Ja" setzen, können Sie in Text, Hyperlinks und Memo-Feldern Nulllänge-Strings ("") eingeben.
Anmerkung:Nicht alle Datenbanken unterstützen Strings mit Nulllänge, daher kann es bei der Hinzufügung von Datensätzen mit leeren Feldern zu Fehlern kommen. Es ist daher wichtig, die unterstützten Datentypen der von Ihnen verwendeten Datenbank zu überprüfen.
- Vorherige Seite ADO-Sortierung
- Nächste Seite ADO-Aktualisierung