Ver Mensaje Individual
  #9 (permalink)  
Antiguo 09/07/2005, 13:29
mariano_donati
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 20 años, 1 mes
Puntos: 9
no, no... estamos confundiendo. El INSERT INTO estás haciendo la inserción de registros mediante una sentencia SQL. De la forma que vos estás haciendo la inserción de registros es a través del objeto RecordSet, con lo cual no necesitas ninguna sentencia SQL. Ahí lo que te falta es guardar los cambios del RecordSet en la base de datos, es decir, le estás asignando valores a los respectivos campos, pero nunca los guardas en la fuente de datos. Hace falta agregar antes de RS.Close(), RS.Update(). Así te quedaría el código:


Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("\dirdb\librovisitas.mdb"))
Conn.Open "Libro"
set rs=createobject("ADODB.Recordset")
rs.open "formularios"
rs.addnew
rs("nombres")=request.form("nombres")
rs("apellidos")=request.form("apellidos")
rs("empresa")=request.form("empresa")
rs("telefono")=request.form("telefono")
rs("mail")=request.form("mail")
rs("comentario")=request.form("comentario")
comentarios=replace(request.form("comentarios"),ch r(10),"<br>")
rs("comentarios")=comentarios
rs.Update()
rs.close
conn.close
set rs=nothing
set conn=nothing

Y adelantandome un poco, si haces eso seguramente te dará error que el RecordSet actual no permite actualizaciones, esto es así por el tipo de bloqueo que tiene el RS por defecto, el cual solo te permite leer registros, y no actualizarlos, modificarlos, borrarlos, o insertar nuevos. Para que no te pase eso cambia la linea en donde abrís el RS por esta:

rs.Open "formularios", Conn, 1, 3.

Cuando abrís un RS, hay que indicarle que conexión vas a utilizar (segundo parametro). El cuarto parametro, también marcado en negrita, es el tipo de bloqueo que debes usar para modificar, borrar, actualizar o insertar registros.
Además, esta linea Conn.Open "Libro" es innecesaria. A la conexión le tienes que pasar como argumento el Driver que se utiliza para conectarse, y luego le pasas el Path en donde está ubicada tu base de datos.
Una salvedad, supongo que cuando haces rs.Open "formularios", se supone que "formularios" es la tabla en donde deseas realizar la inserción de registros.
Espero que te funcione.
Saludos.
__________________
Add, never Remove

Última edición por mariano_donati; 09/07/2005 a las 13:36