Quiero grabar al menos un registro

14/03/2005 - 19:03 por CARIVEH | Informe spam
Estoy intentando grabar al menos un registro, agradeceria su apoyo
Tengo el siguiente codigo:

<%
Dim rs, conn, sql
Set rs = Server.CreateObject("ADODB.Recordset")
conn = "Provider=Microsoft.Jet.OLEDB.4.0;"
conn = conn & "Data Source=c:\Archivos de programa\Microsoft Visual
Studio\Vb98\Biblio.MDB"
sql = "SELECT * FROM Authors WHERE NOT ISNULL([Year Born])"
rs.Open sql, conn
rs.addnew
rs("Au_Id")="7777"
rs("Author")="Carlitos"
rs("Year Born")="1998"
rs.update
%>


me da el error siguiente :

Tipo de error:
ADODB.Recordset (0x800A0CB3)
El Recordset actual no admite actualizaciones. Puede ser una limitación del
proveedor o del tipo de bloqueo seleccionado.
/proof/otra.asp, línea 8 (rs.addnew)

Preguntas similare

Leer las respuestas

#6 Valdov
15/03/2005 - 16:47 | Informe spam
Ese error normalmente lo arroja cuando el query esta mal. Usas access, en tu
asp pon como comentario un momento las lineas donde se ejecuta el query y
manda imprimir sobre el html el query lo copias y lo ejecutas directamente
en access. Asi si hay algun error lo detectas directo en access y te quitas
de problemas de saber si es la conexion o el recordset y vas descartando
cosas.

Valdov

Id en Msn Messenger:


"CARIVEH" wrote in message
news:
he estado probando los diferentes ejemplos...pero en este caso particular


me
arroja este error

Tipo de error:
Microsoft JET Database Engine (0x80004005)
La operación debe usar una consulta actualizable.
/proof/otra.asp, línea 32 (oConn.Execute SQL)



"Manuel Vera" escribió en el mensaje
news:%
> Hola
> Lo primero que debes hacer es abrir la conexion (no lo haz hecho).
>
> Ejemplo:
> Set oConn = Server.CreateObject("ADODB.Connection")
> oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
> "Data Source=" & server.MapPath("/data/mibase.mdb") & ";" & _
> "User Id=admin;" & _
> "Password="
> Fijate que en tu codigo no tienes el metodo ".Open". Unicamente estas
> asignando una sadena string a tu variable "conn".
>
> Luego es que puedes abrir el recordset. Aqui debes tener en cuenta como


lo
> abres. Tu colocaste:
> rs.Open sql, conn
> Pero despues de conn, van 2 parametros adicionales que te permiten
> posteriormente hacer el ".update". No estoy muy seguro cuales serían los
> valores que necesitas, pues yo lo hago de otra forma que sería:
>
> Ejemplo:
> sql ="INSERT INTO Authors (Au_Id, Author,[Year Born] )"
> sql=sql & "values (7777, 'Carlitos', 1998)"
> oConn.Execute SQL
>
> Finalmente, debes asegurarte que la carpeta donde esta ubicado tu MDB
> tenga
> permisos de escritura. Igualmente (bajo W-2000 y W-XP) el archivo MDB


debe
> terner permisos de escritura o actualización.
>
> Salu2
> MV
>
> "CARIVEH" wrote in message
> news:%
>> Estoy intentando grabar al menos un registro, agradeceria su apoyo
>> Tengo el siguiente codigo:
>>
>> <%
>> Dim rs, conn, sql
>> Set rs = Server.CreateObject("ADODB.Recordset")
>> conn = "Provider=Microsoft.Jet.OLEDB.4.0;"
>> conn = conn & "Data Source=c:\Archivos de programa\Microsoft Visual
>> Studio\Vb98\Biblio.MDB"
>> sql = "SELECT * FROM Authors WHERE NOT ISNULL([Year Born])"
>> rs.Open sql, conn
>> rs.addnew
>> rs("Au_Id")="7777"
>> rs("Author")="Carlitos"
>> rs("Year Born")="1998"
>> rs.update
>> %>
>>
>>
>> me da el error siguiente :
>>
>> Tipo de error:
>> ADODB.Recordset (0x800A0CB3)
>> El Recordset actual no admite actualizaciones. Puede ser una limitación
> del
>> proveedor o del tipo de bloqueo seleccionado.
>> /proof/otra.asp, línea 8 (rs.addnew)
>>
>
>


Respuesta Responder a este mensaje
#7 Trauckos
17/03/2005 - 20:43 | Informe spam
Eso problema se genera la base es de solo lectura o el usuario no tiene
permiso
"Valdov" escribió en el mensaje
news:%23PRj$
Ese error normalmente lo arroja cuando el query esta mal. Usas access, en
tu
asp pon como comentario un momento las lineas donde se ejecuta el query y
manda imprimir sobre el html el query lo copias y lo ejecutas directamente
en access. Asi si hay algun error lo detectas directo en access y te
quitas
de problemas de saber si es la conexion o el recordset y vas descartando
cosas.

Valdov

Id en Msn Messenger:


"CARIVEH" wrote in message
news:
he estado probando los diferentes ejemplos...pero en este caso particular


me
arroja este error

Tipo de error:
Microsoft JET Database Engine (0x80004005)
La operación debe usar una consulta actualizable.
/proof/otra.asp, línea 32 (oConn.Execute SQL)



"Manuel Vera" escribió en el mensaje
news:%
> Hola
> Lo primero que debes hacer es abrir la conexion (no lo haz hecho).
>
> Ejemplo:
> Set oConn = Server.CreateObject("ADODB.Connection")
> oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
> "Data Source=" & server.MapPath("/data/mibase.mdb") & ";" & _
> "User Id=admin;" & _
> "Password="
> Fijate que en tu codigo no tienes el metodo ".Open". Unicamente estas
> asignando una sadena string a tu variable "conn".
>
> Luego es que puedes abrir el recordset. Aqui debes tener en cuenta como


lo
> abres. Tu colocaste:
> rs.Open sql, conn
> Pero despues de conn, van 2 parametros adicionales que te permiten
> posteriormente hacer el ".update". No estoy muy seguro cuales serían
> los
> valores que necesitas, pues yo lo hago de otra forma que sería:
>
> Ejemplo:
> sql ="INSERT INTO Authors (Au_Id, Author,[Year Born] )"
> sql=sql & "values (7777, 'Carlitos', 1998)"
> oConn.Execute SQL
>
> Finalmente, debes asegurarte que la carpeta donde esta ubicado tu MDB
> tenga
> permisos de escritura. Igualmente (bajo W-2000 y W-XP) el archivo MDB


debe
> terner permisos de escritura o actualización.
>
> Salu2
> MV
>
> "CARIVEH" wrote in message
> news:%
>> Estoy intentando grabar al menos un registro, agradeceria su apoyo
>> Tengo el siguiente codigo:
>>
>> <%
>> Dim rs, conn, sql
>> Set rs = Server.CreateObject("ADODB.Recordset")
>> conn = "Provider=Microsoft.Jet.OLEDB.4.0;"
>> conn = conn & "Data Source=c:\Archivos de programa\Microsoft Visual
>> Studio\Vb98\Biblio.MDB"
>> sql = "SELECT * FROM Authors WHERE NOT ISNULL([Year Born])"
>> rs.Open sql, conn
>> rs.addnew
>> rs("Au_Id")="7777"
>> rs("Author")="Carlitos"
>> rs("Year Born")="1998"
>> rs.update
>> %>
>>
>>
>> me da el error siguiente :
>>
>> Tipo de error:
>> ADODB.Recordset (0x800A0CB3)
>> El Recordset actual no admite actualizaciones. Puede ser una
>> limitación
> del
>> proveedor o del tipo de bloqueo seleccionado.
>> /proof/otra.asp, línea 8 (rs.addnew)
>>
>
>






Respuesta Responder a este mensaje
#8 CARIVEH
17/03/2005 - 23:05 | Informe spam
Gracias de Nuevo a todos,
Tal como me sugieren hice las pruebas en access y si funciona el query.
tambien hice las verificaciones de los accesos en Winxp, y tambien en el
administrador de IIS.
Me gustaria que diesen una orientacion mas profunda sobre la cuestion de los
derechos en IIS, o en el lugar que se tengan que efectuar, por ejemplo, si
el nombre del Usuario es el de supervisor o el de otro...etc..

Agradeceria su apoyo, porque hasta el momento ...sigo sin grabar un solo
registro!!!!!
"Trauckos" escribió en el mensaje
news:%
Eso problema se genera la base es de solo lectura o el usuario no tiene
permiso
"Valdov" escribió en el mensaje
news:%23PRj$
Ese error normalmente lo arroja cuando el query esta mal. Usas access, en
tu
asp pon como comentario un momento las lineas donde se ejecuta el query y
manda imprimir sobre el html el query lo copias y lo ejecutas
directamente
en access. Asi si hay algun error lo detectas directo en access y te
quitas
de problemas de saber si es la conexion o el recordset y vas descartando
cosas.

Valdov

Id en Msn Messenger:


"CARIVEH" wrote in message
news:
he estado probando los diferentes ejemplos...pero en este caso
particular


me
arroja este error

Tipo de error:
Microsoft JET Database Engine (0x80004005)
La operación debe usar una consulta actualizable.
/proof/otra.asp, línea 32 (oConn.Execute SQL)



"Manuel Vera" escribió en el mensaje
news:%
> Hola
> Lo primero que debes hacer es abrir la conexion (no lo haz hecho).
>
> Ejemplo:
> Set oConn = Server.CreateObject("ADODB.Connection")
> oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
> "Data Source=" & server.MapPath("/data/mibase.mdb") & ";" & _
> "User Id=admin;" & _
> "Password="
> Fijate que en tu codigo no tienes el metodo ".Open". Unicamente estas
> asignando una sadena string a tu variable "conn".
>
> Luego es que puedes abrir el recordset. Aqui debes tener en cuenta
> como


lo
> abres. Tu colocaste:
> rs.Open sql, conn
> Pero despues de conn, van 2 parametros adicionales que te permiten
> posteriormente hacer el ".update". No estoy muy seguro cuales serían
> los
> valores que necesitas, pues yo lo hago de otra forma que sería:
>
> Ejemplo:
> sql ="INSERT INTO Authors (Au_Id, Author,[Year Born] )"
> sql=sql & "values (7777, 'Carlitos', 1998)"
> oConn.Execute SQL
>
> Finalmente, debes asegurarte que la carpeta donde esta ubicado tu MDB
> tenga
> permisos de escritura. Igualmente (bajo W-2000 y W-XP) el archivo MDB


debe
> terner permisos de escritura o actualización.
>
> Salu2
> MV
>
> "CARIVEH" wrote in message
> news:%
>> Estoy intentando grabar al menos un registro, agradeceria su apoyo
>> Tengo el siguiente codigo:
>>
>> <%
>> Dim rs, conn, sql
>> Set rs = Server.CreateObject("ADODB.Recordset")
>> conn = "Provider=Microsoft.Jet.OLEDB.4.0;"
>> conn = conn & "Data Source=c:\Archivos de programa\Microsoft Visual
>> Studio\Vb98\Biblio.MDB"
>> sql = "SELECT * FROM Authors WHERE NOT ISNULL([Year Born])"
>> rs.Open sql, conn
>> rs.addnew
>> rs("Au_Id")="7777"
>> rs("Author")="Carlitos"
>> rs("Year Born")="1998"
>> rs.update
>> %>
>>
>>
>> me da el error siguiente :
>>
>> Tipo de error:
>> ADODB.Recordset (0x800A0CB3)
>> El Recordset actual no admite actualizaciones. Puede ser una
>> limitación
> del
>> proveedor o del tipo de bloqueo seleccionado.
>> /proof/otra.asp, línea 8 (rs.addnew)
>>
>
>










Respuesta Responder a este mensaje
#9 Manuel Vera
17/03/2005 - 23:29 | Informe spam
Yo no se mucho de XP, pues trabajo con W-98 y PWS.

Has esta prueba:
-entra como usuario administrador
-coloca una carpeta llamada "data" dentro de "c:\inetpub\wwwroot" o en la
carpeta raiz de tu servicio web en IIS.
-En el IIS configura que esa carpeta tenga permisos de lectura/escritura
para todos los usuarios. Quitale el permiso de ejecucion.
-luego, coloca alli el MDB.
-modifica las propiedades del MDB y le estableces la seguridad para que
permita lectura/escritura (modificable). Creo que lo puedes hacer con boton
derecho en el explorador de archivos.
-finalmente, apunta a ese MDB en la carpeta "data" desde tu código y
probálo.

Salu2
MV
Respuesta Responder a este mensaje
#10 Valdov
18/03/2005 - 16:37 | Informe spam
Haber, haz una prueba, comparte con todos los derechos la carpeta donde se
encuentra la base de datos.

Valdov

Id en Msn Messenger:


"CARIVEH" wrote in message
news:
Gracias de Nuevo a todos,
Tal como me sugieren hice las pruebas en access y si funciona el query.
tambien hice las verificaciones de los accesos en Winxp, y tambien en el
administrador de IIS.
Me gustaria que diesen una orientacion mas profunda sobre la cuestion de


los
derechos en IIS, o en el lugar que se tengan que efectuar, por ejemplo, si
el nombre del Usuario es el de supervisor o el de otro...etc..

Agradeceria su apoyo, porque hasta el momento ...sigo sin grabar un solo
registro!!!!!
"Trauckos" escribió en el mensaje
news:%
> Eso problema se genera la base es de solo lectura o el usuario no tiene
> permiso
> "Valdov" escribió en el mensaje
> news:%23PRj$
>> Ese error normalmente lo arroja cuando el query esta mal. Usas access,


en
>> tu
>> asp pon como comentario un momento las lineas donde se ejecuta el query


y
>> manda imprimir sobre el html el query lo copias y lo ejecutas
>> directamente
>> en access. Asi si hay algun error lo detectas directo en access y te
>> quitas
>> de problemas de saber si es la conexion o el recordset y vas


descartando
>> cosas.
>>
>> Valdov
>>
>> Id en Msn Messenger:
>>
>>
>> "CARIVEH" wrote in message
>> news:
>>> he estado probando los diferentes ejemplos...pero en este caso
>>> particular
>> me
>>> arroja este error
>>>
>>> Tipo de error:
>>> Microsoft JET Database Engine (0x80004005)
>>> La operación debe usar una consulta actualizable.
>>> /proof/otra.asp, línea 32 (oConn.Execute SQL)
>>>
>>>
>>>
>>> "Manuel Vera" escribió en el mensaje
>>> news:%
>>> > Hola
>>> > Lo primero que debes hacer es abrir la conexion (no lo haz hecho).
>>> >
>>> > Ejemplo:
>>> > Set oConn = Server.CreateObject("ADODB.Connection")
>>> > oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
>>> > "Data Source=" & server.MapPath("/data/mibase.mdb") & ";" & _
>>> > "User Id=admin;" & _
>>> > "Password="
>>> > Fijate que en tu codigo no tienes el metodo ".Open". Unicamente


estas
>>> > asignando una sadena string a tu variable "conn".
>>> >
>>> > Luego es que puedes abrir el recordset. Aqui debes tener en cuenta
>>> > como
>> lo
>>> > abres. Tu colocaste:
>>> > rs.Open sql, conn
>>> > Pero despues de conn, van 2 parametros adicionales que te permiten
>>> > posteriormente hacer el ".update". No estoy muy seguro cuales serían
>>> > los
>>> > valores que necesitas, pues yo lo hago de otra forma que sería:
>>> >
>>> > Ejemplo:
>>> > sql ="INSERT INTO Authors (Au_Id, Author,[Year Born] )"
>>> > sql=sql & "values (7777, 'Carlitos', 1998)"
>>> > oConn.Execute SQL
>>> >
>>> > Finalmente, debes asegurarte que la carpeta donde esta ubicado tu


MDB
>>> > tenga
>>> > permisos de escritura. Igualmente (bajo W-2000 y W-XP) el archivo


MDB
>> debe
>>> > terner permisos de escritura o actualización.
>>> >
>>> > Salu2
>>> > MV
>>> >
>>> > "CARIVEH" wrote in message
>>> > news:%
>>> >> Estoy intentando grabar al menos un registro, agradeceria su apoyo
>>> >> Tengo el siguiente codigo:
>>> >>
>>> >> <%
>>> >> Dim rs, conn, sql
>>> >> Set rs = Server.CreateObject("ADODB.Recordset")
>>> >> conn = "Provider=Microsoft.Jet.OLEDB.4.0;"
>>> >> conn = conn & "Data Source=c:\Archivos de programa\Microsoft Visual
>>> >> Studio\Vb98\Biblio.MDB"
>>> >> sql = "SELECT * FROM Authors WHERE NOT ISNULL([Year Born])"
>>> >> rs.Open sql, conn
>>> >> rs.addnew
>>> >> rs("Au_Id")="7777"
>>> >> rs("Author")="Carlitos"
>>> >> rs("Year Born")="1998"
>>> >> rs.update
>>> >> %>
>>> >>
>>> >>
>>> >> me da el error siguiente :
>>> >>
>>> >> Tipo de error:
>>> >> ADODB.Recordset (0x800A0CB3)
>>> >> El Recordset actual no admite actualizaciones. Puede ser una
>>> >> limitación
>>> > del
>>> >> proveedor o del tipo de bloqueo seleccionado.
>>> >> /proof/otra.asp, línea 8 (rs.addnew)
>>> >>
>>> >
>>> >
>>>
>>>
>>
>>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida