Latest web development tutorials

Agregar registro de ADO

Podemos utilizar el SQL INSERT EN comando para agregar registros a una tabla de base de datos.


Para agregar un registro en una tabla de base de datos

Queremos añadir un nuevo registro a la tabla Customers de la base de datos Neptuno. En primer lugar, queremos crear un formulario, el formulario contiene los datos que desea recopilar los campos de entrada:

<html>
<body>

<form method="post" action="demo_add.html">
<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="Add New">
<input type="reset" value="Cancel">
</form>

</body>
</html>

Cuando el usuario pulsa el botón Aceptar, el formulario será enviado en un archivo llamado "demo_add.asp" de. Archivo "demo_add.asp" puede contener el código para agregar un nuevo registro a la tabla Clientes:

<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>


IMPORTANTE

Cuando se utiliza el comando comando INSERT, tenga en cuenta lo siguiente:

  • Si la tabla contiene una clave principal, asegúrese de añadir valor al campo de clave principal es único y no vacío (de lo contrario, el proveedor no va a anexar los registros, o de que se produzca un error)
  • Si la tabla contiene un campo Autonumérico, no implican este campo en el comando INSERT (el valor del campo se determina por el proveedor responsable)

No hay datos sobre el terreno

En la base de datos de MS Access, si se establece la propiedad Requerido se ajusta en "Sí", se puede texto, hipervínculos y notas de campo para introducir una cadena de longitud cero ( "").

Nota: No todas las bases de datos compatibles con cadena de longitud cero, lo que puede provocar un error al agregar registros con campos en blanco. A fin de comprobar que está utilizando una base de datos apoyado tipos de datos es muy importante.