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

problema con ASP y SQL

Estas en el tema de problema con ASP y SQL en el foro de ASP Clásico en Foros del Web. Hola a todos, soy nuevo en ASP y espero me ayuden. tengo una tabla en la base de datos SQL 200 server llamda Correo1 con ...
  #1 (permalink)  
Antiguo 04/05/2007, 00:38
 
Fecha de Ingreso: noviembre-2003
Mensajes: 127
Antigüedad: 21 años, 5 meses
Puntos: 1
problema con ASP y SQL

Hola a todos, soy nuevo en ASP y espero me ayuden.
tengo una tabla en la base de datos SQL 200 server llamda Correo1 con la estructura:
Nombre=varchar
Apellido=varchar
Email=varchar

Tengo este simple formulario llamado ingreso.html:
Código HTML:
<html>
<head>
<title>Listado de la Base de Datos</title>
</head>
<body>
<big><big><p>REGISTRO DE DATOS</big></big> <br><br></p>
<div align="center"><center>
<form method="Post" action="ingreso.asp">
<input type="text" name="Dato1" size="20">
<input type="text" name="Dato2" size="20">
<input type="text" name="Dato3" size="20">
<input type="submit" value="Ingresar" name="B1"><input type="reset"
value="Restablecer" name="B2">
</form>
</body>
</html> 
y el ASP llamado ingreso.asp es el siguiente:
Código HTML:
<%@ Language="VBScript" %>
<html>
<head>
<title>Listado de la Base de Datos</title>
</head>
<body>
<big><big><p>REGISTRO DE DATOS</big></big> <br><br></p>
<div align="center"><center>
<%
Dim Con
Dim rs
Dim Temp
Set Con=Server.CreateObject ("ADODB.Connection")
Con.Open "Driver={SQL Server};Server=192.168.130.129;Database=Correo1;Uid=dbuser;Pwd=dbuser123;"
set rs = Server.CreateObject("ADODB.recordset")
Temp="Select * From Tabla1 Where Upper(Nombre)='" & Upper(Request("Dato1")) & "' And Upper(Apellido)='" & Upper(Request("Dato2")) & "' And Upper(Email)='" & Upper(Request("Dato3")) & "'"
rs.open Temp,Con,2,3,1
If rs.BOF and rs.EOF Then
rs.AddNew
rs("Nombre") = Request("Dato1")
rs("Apellido") = Request("Dato2")
rs("Email") = Request("Dato3")
rs.Update
%>
<p>Ingreso de datos completado</p>
<%
Else
Response.write"El registro ya existe "
End If
rs.Close
Con.Close
%>
</body>
</html> 
La tabla llamada tabla1 en el servidor SQL está vacia, no se ha agregado ningún registro; y cuando lo intento hacer mediante "ingreso.html" me da el siguiente error:

Error de Microsoft VBScript en tiempo de ejecución error '800a000d'

No coinciden los tipos: 'Upper'

/ingreso.asp, línea 16

Espero me ayuden,le doy vueltas al asunto y no entiendo.

Gracias.

David
  #2 (permalink)  
Antiguo 04/05/2007, 05:52
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 19 años, 4 meses
Puntos: 7
Re: problema con ASP y SQL

Hola,

Dos cosas:

- La funcion Upper no existe en ASP. Usa UCASE

-
Chequea que el querystring no este vacio antes de usarlo. Tambien te dará error de tipos si viene vacio.



Un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -
  #3 (permalink)  
Antiguo 05/05/2007, 00:14
 
Fecha de Ingreso: noviembre-2003
Mensajes: 127
Antigüedad: 21 años, 5 meses
Puntos: 1
Re: problema con ASP y SQL

Hola tammander;gracias por tomarte la moléstia de leer y responder a mi post.
Yendo a mi pregunta;puse Upper en lugar de UCASE por que cuando lo hago con UCASE me da este error:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]'UCASE' is not a recognized function name.

/ingreso.asp, línea 17

leí por ahi que ucase era valida para ACCES y no para SQL server, puede q esté yo equivocado pero como dije al inicio del post, soy nuevo en ASP y autodidacta.

Espero me ayuden.

Gracias

David
  #4 (permalink)  
Antiguo 05/05/2007, 09:46
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses
Puntos: 88
Re: problema con ASP y SQL

bueno, retomando lo que te dice tammander()

v1=UCASE(request("datos1")
etc..

me explicarias para que quieres hacer mayusculas los nombres de las variables a consultar?????

Temp="Select * From Tabla1 Where Upper(Nombre)='" & Upper(Request("Dato1")) & "' And Upper(Apellido)='" & Upper(Request("Dato2")) & "' And Upper(Email)='" & Upper(Request("Dato3")) & "'"

segun deberia ser de esta manera

Temp="Select * From Tabla1 Where Nombre='" & Upper(Request("Dato1")) & "' And Apellido='" & Upper(Request("Dato2")) & "' And Email='" & Upper(Request("Dato3")) & "'"

intentalo y nos dices que paso

suerte
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #5 (permalink)  
Antiguo 05/05/2007, 09:49
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses
Puntos: 88
Re: problema con ASP y SQL

a por cierto...

Temp="Select * From Tabla1 Where Nombre='" & UCASE(Request("Dato1")) & "' And Apellido='" & UCASE(Request("Dato2")) & "' And Email='" & UCASE(Request("Dato3")) & "'"

a esto es a lo que se referia TAMMANDER()
compañero
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #6 (permalink)  
Antiguo 06/05/2007, 00:08
 
Fecha de Ingreso: noviembre-2003
Mensajes: 127
Antigüedad: 21 años, 5 meses
Puntos: 1
Re: problema con ASP y SQL

Gracias Shiryu_Libra y Tammander me sirvió la ayuda que me dieron;hice los cambios que me dijeron y funcionó muy bien.
Respecto a tu pregunta Shiryu_Libra; estoy siguiendo un tutorial de ASP que encontre en la web y en dicho tutorial utilizaba el UCASE como lo puse yo; pero ahora y siguiendo la ayuda de ustedes se que estaba mal, gracias.
Y seguro volveré por acá a seguir molestando con mis preguntas.
Gracias
David
  #7 (permalink)  
Antiguo 06/05/2007, 00:19
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 2 meses
Puntos: 88
Re: problema con ASP y SQL

solo recuerda que cuando hagas consultas en la base de datos, evita ponerle, el UCASE a los campos de la base, por que te marcaria error

en nuevas dudas... aki estamos

suerte

Tutorial de ASP
ASP FACIL
te recomiendo esas paginas
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
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 07:47.