Problemas de coneccion y sintáxis

felipe.molina
14 de Junio del 2002
Tengo una pagina ASP que cuando la ejecuto presenta el sgte. error:

Tipo de error:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Controlador ODBC Microsoft Access] Error de sintaxis (falta operador) en la expresión de consulta 'COD_ARTI=0015 060120'.
/tienda/verpro.asp, línea 55

El codigo de la pagina del metodo de conexxion es el siguiente:

<%
51 - set conexion = Server.CreateObject("ADODB.Connection")
52 - set RsProd = Server.CreateObject("ADODB.RecordSet")
53 - conexion.Open "tienda","",""
54 - SQL="SELECT * FROM PRODUCTOS WHERE COD_ARTI=" &
Request.QueryString("codpro")
55 - RsProd.Open SQL,conexion,2,3
56 - %>

los numeros al lado izq. separados por un guion es la linea.

gracias de antemano

Atreides
14 de Junio del 2002
Creo que tu problema es el espacio que hay en el dato:
COD_ARTI=0015 060120
Supongo que el campo COD_ARTI debe ser de tipo texto, si es asi deberias poner la instruccion asi:
54 - SQL="SELECT * FROM PRODUCTOS WHERE COD_ARTI=\'" &
Request.QueryString("codpro") & "\'"

Espero haberte ayudado.





Atreides
14 de Junio del 2002
Felipe no hagas caso de la respuesta anterior.
Es un error del copy/paste :)

54 - SQL="SELECT * FROM PRODUCTOS WHERE COD_ARTI=\'" & Request.QueryString("codpro" & "\'"

Te lo explico con palabras:
Tienes que encerrar el dato entre comillas simples. De la siguiente forma, despues del = va una comilla simple seguida de comillas dobles y al final de la instruccion tienes unir mediante & una comilla simple que debes poner entre comillas dobles. Un lio total.




felipe.molina
14 de Junio del 2002
Atreides, gracias pero copie tal cual la coneccion y ahora dice:


Tipo de error:
Error de compilación de Microsoft VBScript (0x800A03EA)
Error de sintaxis
/tienda/verpro.asp, línea 54, columna 4
SQL="SELECT * FROM PRODUCTOS WHERE COD_ARTI=\'" & Request.QueryString("codpro" & "\'"
---^