Foros del Web » Programando para Internet » ASP Clásico »

como revisar si tengo un registro con ese mismo valor q inserto?

Estas en el tema de como revisar si tengo un registro con ese mismo valor q inserto? en el foro de ASP Clásico en Foros del Web. que tal como puedo buscar dentro de mi tabla si el valor q le estoy insertando es el mismo, por decir que antes de insertar ...
  #1 (permalink)  
Antiguo 09/08/2007, 15:21
Avatar de Gaby_Corr  
Fecha de Ingreso: junio-2005
Mensajes: 672
Antigüedad: 19 años
Puntos: 0
como revisar si tengo un registro con ese mismo valor q inserto?

que tal como puedo buscar dentro de mi tabla si el valor q le estoy insertando es el mismo, por decir que antes de insertar quiero q busque en mi tabla y revise si hay un registro con el valor q le estoy dando , pues q no haga el insert sino pues si.

ayuda!!
__________________
" Recuerda , estas donde debes estar ..."
  #2 (permalink)  
Antiguo 09/08/2007, 20:37
Avatar de Cbas  
Fecha de Ingreso: enero-2002
Ubicación: capital federal
Mensajes: 437
Antigüedad: 22 años, 5 meses
Puntos: 2
Re: como revisar si tengo un registro con ese mismo valor q inserto?

Y hacé un select con los datos que querés agregar, si el recordset te devuelve registros, no lo agregás, sino hacés el insert...
Por ejemplo

sSQL = "SELECT * FROM usuarios where email = '" & email & "'"
oRc.open sSQL, conn
if orc.eof then
sSQL = "INSERT INTO usuario....."
else
response.write "El email ya existe"
end if

No sé.. algo así se me ocurriría

SALUDOS!
__________________
La Perfección es enemigo de lo bueno.
  #3 (permalink)  
Antiguo 10/08/2007, 07:15
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: como revisar si tengo un registro con ese mismo valor q inserto?

Otra es definir una llave en esa tabla y colocar el insert dentro de on Error, si truena es por que esta duplicada la llave, capturas el error y le avisas al usuario

Otra, puedes localizar el valor respectivo previo al envío del formulario mediante ajax.
  #4 (permalink)  
Antiguo 10/08/2007, 09:00
Avatar de Gaby_Corr  
Fecha de Ingreso: junio-2005
Mensajes: 672
Antigüedad: 19 años
Puntos: 0
Re: como revisar si tengo un registro con ese mismo valor q inserto?

Cita:
Iniciado por Cbas Ver Mensaje
Y hacé un select con los datos que querés agregar, si el recordset te devuelve registros, no lo agregás, sino hacés el insert...
Por ejemplo

sSQL = "SELECT * FROM usuarios where email = '" & email & "'"
oRc.open sSQL, conn
if orc.eof then
sSQL = "INSERT INTO usuario....."
else
response.write "El email ya existe"
end if

No sé.. algo así se me ocurriría

SALUDOS!

hola de nuevo, pues hice algo como lo que mencionas pero me manda un mensaje de error:

ADODB.Recordset (0x800A0E78)
Operation is not allowed when the object is closed.

Código:
set cn = Server.CreateObject("ADODB.Connection")
set rs = Server.Createobject("ADODB.RecordSet")
cn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & "DBQ=" & server.mappath("\db\"+"usuarios.mdb") & ";" & "PWD="
squery = "SELECT *  FROM usuarios where email= '" & sEmail & "'"
rs.open squery,cn
if rs.eof then			
cn.execute "INSERT INTO usuarios(username,password,fullname,email,usdate) VALUES('"&sUser&"','"&Password&"','"&sNombre&"','"&sEmail&"','"&dfecha&"')"
else
response.Write "EL usuario y/o correo electrónico ya existen"
end if
		
cn.Close
Set cn = nothing
rs.Close
Set rs = nothing
__________________
" Recuerda , estas donde debes estar ..."
  #5 (permalink)  
Antiguo 10/08/2007, 14:59
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Re: como revisar si tengo un registro con ese mismo valor q inserto?

Si cierras la conexión, el objeto se cierra también. Solo cierra la tabla antes de la conexión
  #6 (permalink)  
Antiguo 13/08/2007, 06:25
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Re: como revisar si tengo un registro con ese mismo valor q inserto?

Exacto. Hazlo asi:

Código:
set cn = Server.CreateObject("ADODB.Connection")
set rs = Server.Createobject("ADODB.RecordSet")
cn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & "DBQ=" & server.mappath("\db\"+"usuarios.mdb") & ";" & "PWD="

set rs = cn.execute "SELECT *  FROM usuarios where email= '" & sEmail & "'" 
if rs.eof then            
    cn.execute "INSERT INTO usuarios(username,password,fullname,email,usdate) VALUES('"&sUser&"','"&Password&"','"&sNombre&"','"&sEmail&"','"&dfecha&"')"
else
    response.Write "EL usuario y/o correo electrónico ya existen"
end if

 rs.close
set rs = nothing

cn.Close
Set cn = nothing
 
un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -
  #7 (permalink)  
Antiguo 14/08/2007, 15:29
Avatar de Gaby_Corr  
Fecha de Ingreso: junio-2005
Mensajes: 672
Antigüedad: 19 años
Puntos: 0
Re: como revisar si tengo un registro con ese mismo valor q inserto?

si tenian razon, ese era el problema que tenia, gracias!!
__________________
" Recuerda , estas donde debes estar ..."
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:59.