El Guru Programador
Usuario DESCONOCIDO | Registrate Gratis | Usuarios Registrados
Foro de ASP/ASP.NET
Foros del Guru > ASP/ASP.NET
Usuario Problema con Base de Datos
Desconocido
Enviado - 24/7/2002
 
Tengo un problemita con mi pagina ASP, las consultas sql trabajan bien solo si es de lectura pero si debo ingresar un registro o modificarlo me sale el siguiente error en mi navegador...

Tipo de error:
Microsoft JET Database Engine (0x80004005)
La operación debe usar una consulta actualizable.
/tuexamen/ingresar.asp, línea 21

******* Y mi linea es la siguiente****
<%
Dim nick, nombre, apellido, email, clave, sexo
nick = Trim(Request.Form("nick"))
nombre = Trim(Request.Form("nombre"))
apellido = Trim(Request.Form("apellido"))
email = Trim(Request.Form("email"))
clave = Trim(Request.Form("clave1"))
sexo = Trim(Request.Form("sexo"))
sql = "SELECT * FROM usuarios WHERE nick='"+nick+"'"
Recordset1.Open sql, MM_conex_STRING
if Recordset1.EOF then
sql1 = "INSERT INTO usuarios (nick, Nombre, Apellido, email, clave, sexo) VALUES ('"+nick+"','"+nombre+"','"+apellido+"','"+email+"','"+clave+"','"+sexo+"')"
set recordset1 = MM_conex_STRING.execute(sql1)
response.Write("Usuario Ingresado con Éxito")
else
response.Redirect("registro.asp")
End if
%>


Que puedo hacer para corregir este error??
Gracias de antemano..
 
agiossa
7 Mensaje(s)
Enviado - 31/7/2002
 
Pedile a tu proveedor de hosting (si no lo podés hacer directamente vos) que de permisos de escritura y modificación sobre la .MDB

Saludos,
Antonio F. Giossa
Ingeniero de Sistemas
 
ivelazquez
3 Mensaje(s)
Enviado - 24/9/2002
 
Hola, espero que ya tengas creada la conexion a tu bd, si no, aqui te va un ejemplo de como seria tu actualizacion:

<%
dim con, rs
Dim nick, nombre, apellido, email, clave, sexo

'recojes los valores del formulario
nick = Trim(Request.Form("nick"))
nombre = Trim(Request.Form("nombre"))
apellido = Trim(Request.Form("apellido"))
email = Trim(Request.Form("email"))
clave = Trim(Request.Form("clave1"))
sexo = Trim(Request.Form("sexo"))

' Creas la conexión a la base de datos sin DSN, es la que a mi me gusta =)
set con = Server.CreateObject("ADODB.Connection")

'le pasamos el driver a utilizar y la ubicacion de la base, recuerda cambiar tanto las palabras directorio como el nombre de la base
strcon = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("directorio/tuBase.mdb")

'y le decimos que abra la conexion
con.Open strcon

'creamos un recordset
txtsql = "Select * from usuarios"
set rs = Con.execute (txtsql)

'ahora formamos nuestra sentencia sql para el insert
insertar = "INSERT into usuarios (nick, Nombre, Apellido, email, clave, sexo) values ('"& nick &"','"& nombre &"','"& apellido &"','"& email &"','"& clave &"','"& sexo &"')"

'por ultimo executamos la sentencia para ingresar el registro
Con.execute (insertar)
%>

Te recuerdo que este ejemplo te sirve para insertar nuevos registros a tu base de datos, y si quieres actualizar solo tendrias que hacer unas pequeñas modificaciones, ademas note que tu sentencia de update esta mal, ya que estas poniendo un signo de +, en lugar de un &.

Saludos desde Monterrey, Mexico
Ignacio Velazquez
 
 

 

Contactos myStudio Network