ASP - Insertar con ASP

 
Vista:

Insertar con ASP

Publicado por Rafael López (3 intervenciones) el 30/05/2005 14:58:42
Por favor necesito codigo de ejemplo para insertar datos en una base de datos Access sin DSN y sin ODBC, utilizando cadena de conexión y query en SQL, lo estoy trantando de hacer pero me da un error que dice "se requiere un query actualizable", el codigo que estoy usando es el siguiente:

SET cn = ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & BASEDEDATOS

SQL="INSERT INTO TABLA VALUES(' " & cadena & " ')"

cn.Execute SQL '------------> AQUI SE PRODUCE EL ERROR

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Insertar con ASP

Publicado por tintin (40 intervenciones) el 30/05/2005 22:58:09
En vez de guardar la consulta en una variable y luego ejekutarla, prueba a acer la consulta de la siguiente manera:

set variable = conexion.Execute("consulta")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Insertar con ASP

Publicado por Oscar (50 intervenciones) el 31/05/2005 07:48:12
pues cometes un gran eror.. bueno mas que error son faltantes , algo importante que no haces es abrir el RECOSET , practicamente abres ala conxion a la base de datos pero no la tabla ni sus punteros.. la sintaxis que debes ocupar es:

SET cn=ADODB.Connection
cn.Open "provider = bla bla bla.........
Set RS = Server.CreateObject ("ADODB.RecordSet")
sql = "SELECT * FROM [tabla]
RS.Open sql
SQL="INSERT INTO TABLA VALUES(' " & cadena & " ')"
cn.Execute SQL

codigo probado y funcional

Saludos..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Insertar con ASP

Publicado por estela (2 intervenciones) el 01/06/2005 19:56:54
Hola a todos y gracias x la atencion
Probe tu codigo y no me da error pero no me escribe en la Tabla del database.
Lo escribo, para ver si encontras tu el error, yo no soy capaz:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:/Inetpub/wwwroot/tutorial_asp/bddpack/db1.mdb")

Set RS = Server.CreateObject("ADODB.Recordset")
sql = "SELECT * FROM Clientes"
sSQL="INSERT INTO Clientes (nombre,telefono) values ('" & nombre & "','" & telefono & "')"
'RS.Open sSQL 'si esta sentencia esta activa me dice que hace falta una query aggiornabile
Set RS=Conn.Execute(sql)
%>
Gracias mil
estela
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Insertar con ASP

Publicado por Oscar (50 intervenciones) el 02/06/2005 04:48:27
aqui estoy de nuevo :)
OJO !!!

Set RS = Server.CreateObject("ADODB.Recordset")
sql = "SELECT * FROM Clientes"
sSQL="INSERT INTO Clientes (nombre,telefono) values ('" & nombre & "','" & telefono & "')"

'RS.Open sSQL 'si esta sentencia esta activa me dice que hace falta una query aggiornabile ESTA SENTENCIA NO ES LA QUE SE ABRE A LA QUE LE DEBES APLICAR EL OPEN ES A TU VARIABLE SQL Y NO A SSQL ----- RS.OPEN SQL

Set RS=Conn.Execute(sql) AQUI NO DEBES EXECUTAR SQL SINO SSQL Y NO ES NECESARIO EL SET ------- CONN.EXECUTE SSQL

Saludos ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Insertar con ASP

Publicado por estela (2 intervenciones) el 03/06/2005 11:21:47
Gracias Oscar no funciona todavia.
IE dice:
Tipo di errore:
ADODB.Recordset (0x800A0E7D)
Connessione chiusa o non valida in questo contesto. Impossibile utilizzarla per eseguire l'operazione./tutorial_asp/bddpack/insertar.asp, line 28

Te aclaro que la linea 28 es la que abre el objeto RS previamente creado:
--------------------------------
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:/Inetpub/wwwroot/tutorial_asp/bddpack/db1.mdb")
Set RS = Server.CreateObject("ADODB.Recordset")
sql = "SELECT * FROM Clientes"
sSQL="INSERT INTO Clientes (nombre,telefono) values ('" & nombre & "','" & telefono & "')"
RS.Open sql 'esta es la linea 28
Conn.Execute sSQL
-----------------------------------------
Este es un tutorial que yo adapte para hacer con DSN less, quizas cometi algun otro error. No se... misterio

Gracias todavia. Estela

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar