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

No coinciden los tipos de datos en la expresión de criterios

Estas en el tema de No coinciden los tipos de datos en la expresión de criterios en el foro de ASP Clásico en Foros del Web. Hola a todos. Necesito ayuda con problema. Primero os pongo el código en ASP de la página que no funciona: <html> <head> <title>veure_treb</title> </head> <body> ...
  #1 (permalink)  
Antiguo 28/08/2003, 12:38
 
Fecha de Ingreso: mayo-2003
Mensajes: 17
Antigüedad: 22 años
Puntos: 0
No coinciden los tipos de datos en la expresión de criterios

Hola a todos.
Necesito ayuda con problema. Primero os pongo el código en ASP de la página que no funciona:

<html>
<head>
<title>veure_treb</title>
</head>
<body>
<p><font size="3" face="Arial, Helvetica, sans-serif">NIF: <%=request.form("nif")%><br>

<%
dim a
dim b
dim c
dim d
%>

<%
On Error Resume Next
Set Conn = CreateObject("ADODB.Connection")
Conn.Open "final"
conn.begintrans

sSQL = "select * from treballador where nif='" & request("nif") & "'"

Set RS=Conn.Execute(sSQL)

If Err.Description <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"
Else
Response.Write "<B></B>"
End If
%>

<%
a=RS("adreça")
b=RS("permisos")
%>

<table border="1" align="center" bordercolor="#000000" bgcolor="#CCCCCC">
<tr>
<th><font size="3" face="Arial, Helvetica, sans-serif">NIF</font></th>
<th><font size="3" face="Arial, Helvetica, sans-serif">Nom</font></th>
<th><font size="3" face="Arial, Helvetica, sans-serif">Telefon</font></th>
<th><font size="3" face="Arial, Helvetica, sans-serif">Horari</font></th>
</tr>
<%
Do While Not RS.Eof
%>
<tr>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("nif")%></font></td>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("nom")%></font></td>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("telefon")%></font></td>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("horari")%></font></td>
</tr>

<%
RS.MoveNext
Loop
Conn.Close
conn.committrans
%>

<%
c=Clng(a)
d=Clng(b)
%>

<br>
<%=c%>
<br>
<%=d%>
<br>

<%
On Error Resume Next
Set Conn = CreateObject("ADODB.Connection")
Conn.Open "final"

sSQL = "select * from adreça where id_adreça = '" & c & "'"

Set RS=Conn.Execute(sSQL)

If Err.Description <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"
Else
Response.Write "<B></B>"
End If
%>

<table border="1" align="center" bordercolor="#000000" bgcolor="#CCCCCC">
<tr>
<th><font size="3" face="Arial, Helvetica, sans-serif">Carrer</font></th>
<th><font size="3" face="Arial, Helvetica, sans-serif">Localitat</font></th>
<th><font size="3" face="Arial, Helvetica, sans-serif">Codi Postal</font></th>
<th><font size="3" face="Arial, Helvetica, sans-serif">Província</font></th>
</tr>
<%
Do While Not RS.Eof
%>
<tr>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("carrer")%></font></td>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("localitat")%></font></td>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("cp")%></font></td>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("provincia")%></font></td>
</tr>

<%
RS.MoveNext
Loop
Conn.Close
%>

<%
On Error Resume Next
Set Conn = CreateObject("ADODB.Connection")
Conn.Open "final"

sSQL = "select * from permisos where id_permis='" & d & "'"

Set RS=Conn.Execute(sSQL)

If Err.Description <> "" then
Response.Write "<B>Error en BBDD: " & Err.Description & "</B>"
Else
Response.Write "<B></B>"
End If
%>

<table border="1" align="center" bordercolor="#000000" bgcolor="#CCCCCC">
<tr>
<th><font size="3" face="Arial, Helvetica, sans-serif">Permisos</font></th>
</tr>
<%
Do While Not RS.Eof
%>
<tr>
<td><font size="3" face="Arial, Helvetica, sans-serif"><%=RS("nom")%></font></td>
</tr>

<%
RS.MoveNext
Loop
Conn.Close
%>

</font>
</body>
</html>

Al ejecutar esta página me aparece el error "No coinciden los tipos de datos en la expresión de criterios" en las sentencias SQL
"select * from adreça where id_adreça = '" & c & "'" y
"select * from permisos where id_permis='" & d & "'"

Todos los campos que empiezan con "id_" son autonuméricos.
La base de datos está en Microsoft Access XP.

He utilizado la función de conversión de tipos "Clng" pero por lo visto no ha funcionado.

Muchas gracias por vuestra ayuda.
  #2 (permalink)  
Antiguo 28/08/2003, 12:47
 
Fecha de Ingreso: agosto-2003
Mensajes: 20
Antigüedad: 21 años, 8 meses
Puntos: 0
Hola.

¿Has probado a quitarle las comillas simple que has puesto?

"select * from adreça where id_adreça = " & c
"select * from permisos where id_permis=" & d

Saludos.
  #3 (permalink)  
Antiguo 28/08/2003, 13:13
 
Fecha de Ingreso: mayo-2003
Mensajes: 17
Antigüedad: 22 años
Puntos: 0
Ha funcionado perfectamente.
Gracias amigo, me has ayudado mucho. Un saludo
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 09:02.