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

Duda con ASP, SQL y paso de parámetros.

Estas en el tema de Duda con ASP, SQL y paso de parámetros. en el foro de ASP Clásico en Foros del Web. Hola. Lo que quiero hacer es muy sencillo: Llamo a una página asp pasándole por URL una variable. Esta variable es el identificador del registro ...
  #1 (permalink)  
Antiguo 19/08/2004, 03:54
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 20 años, 7 meses
Puntos: 1
Duda con ASP, SQL y paso de parámetros.

Hola.

Lo que quiero hacer es muy sencillo:

Llamo a una página asp pasándole por URL una variable. Esta variable es el identificador del registro que quiero buscar en la base de datos.

Pues bien, tengo 2 dudas.

1- ¿qué operador hace falta para indicarle que busque en la BD AQUEL ÚNICO registro que cumple la condición que queremos? ¿LIKE ó IN?

ejemplo: sSQL="SELECT * FROM Noticies_04 WHERE id In 2"
ó sSQL="SELECT * FROM Noticies_04 WHERE id LIKE 2"

yo quiero que seleccione SÓLO el registro con id = 2.
Además, lo primero me da el error[Microsoft][ODBC Microsoft Access Driver] In operator without () in query expression 'id In '2''.

2- Si pongo el 2, me funciona, pero yo quiero usar como criterio la variable que me pasan por URL. Hago esto:

idnot=Request.QueryString("idnoticia")
sSQL="SELECT * FROM Noticies_04 WHERE id LIKE idnot"

y no funciona!!!

Por favor, ayuda!


Gracias!
  #2 (permalink)  
Antiguo 19/08/2004, 06:55
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
supongamos que lo pasas por la barra de direcciones (url)
asi
http://localhost/tusitio/algunapagina.asp?idnoticia=2

en tu pagina asp debes recogerlo asi:

<% dim idnot
idnot=Request.QueryString("idnoticia")

sSQL="SELECT * FROM Noticies_04 WHERE id = "& idnot &""
%>

espero te sirva,
cuando quieres mostrar solo un registro osea el identico al que buscas usas igual = y cuando necesitas buscar varios registrs parecidos o que tengan lo qeu buscas en la mitad, al inicio o al final usas like.
cuando usas esto "& idnot &" es proqeu es una variable de tipo numerica, si desearas pasar por url o hacer una consulta con cadena de caracteres, debes colocar comillas simples y dobles asi: '"& idnot &"'
espero te sea de utilidad cualquier cosa pregunta de nuevo..
suerte.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com

Última edición por lexus; 19/08/2004 a las 07:00
  #3 (permalink)  
Antiguo 19/08/2004, 08:04
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 20 años, 7 meses
Puntos: 1
Muchas gracias Lexus.

Funciona perfectamente!

Hasta pronto!

Última edición por banderas20; 20/08/2004 a las 01:47
  #4 (permalink)  
Antiguo 30/08/2004, 04:38
 
Fecha de Ingreso: noviembre-2003
Mensajes: 456
Antigüedad: 20 años, 7 meses
Puntos: 1
Hosti! Ahora pasándole más parámetros no funciona!

Pongo

sSQL="Insert Into mejorado (Titol,Subtitol,Data,Text,Font,Enllaç1,Enllaç2,Enl laç3) values ('" & Titol & "','" & Subtitol & "','" & Data & "','" & Text & "','" & Font & "','" & link1 & "','" & link2 & "','" & link3 & "')"

y me dice:

Syntax error in INSERT INTO statement

El campo Text lo he definido como tipo MEMO. ¿puede haber problemas con eso?

Gracias!
  #5 (permalink)  
Antiguo 31/08/2004, 09:01
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
De acuerdo

hola,

intenta con este otro metodo de agregar, depronto es un poco mas ordenado y facil de entender

sql="select * from tutabla where tucampo = tucriterio"
rs.Open sql, con, 3, 3

rs.addnew
rs("Titol") = Titol
rs("Subtitol") = Subtitol
rs("Data") = Data
rs("Text") = Text
rs("Font") = Font
rs("Enllaç1") = link1
rs("Enllaç2") = link2
rs("Enllaç3") = link3
rs.update
' tines que fijarte tambien que esten bien definidas las variables que estas usando y que hayan los campos correctos en la base de datos.

o en caso que desees seguir haciendolo como sabes con insert
revisa si tienes un error en esta parte por el espacio


sSQL="Insert Into mejorado (Titol,Subtitol,Data,Text,Font,Enllaç1,Enllaç2,Enl laç3) values ('" & Titol & "','" & Subtitol & "','" & Data & "','" & Text & "','" & Font & "','" & link1 & "','" & link2 & "','" & link3 & "')"


espero te sirva de algo.
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
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 18:12.