SQL - No anda el where de consulta sql

 
Vista:

No anda el where de consulta sql

Publicado por Sandra (6 intervenciones) el 20/10/2005 18:54:51
Hola, ojala alguien me pueda ayudar, ya que hace rato estoy trabada con un error creo que en una consulta SQL...
Les cuento: Tengo las tablas: Menu, Perfil, PerfilMenu (que relaciona estas 2) y USuarios.
La idea es crear un menu en una pagina de ASP en donde cada usuario, de acuerdo al perfil que tiene en la bd, pueda ingresar a ciertas opciones y no a otras. O sea que solamente se le muestren las opciones a las que puede ingresar segun su perfil.
Para esto el usuario ingresa usuario y clave, y hago la siguiente consulta:

"Select distinct m.IDMenu, m.Texto, m.URL from Menu m, usuarios u, perfiles p, PerfilMenu pm WHERE u.usuario = " & CStr("nombre") & " and p.perfil = u.perfil AND pm.perfil = p.perfil AND pm.IDMenu = m.IDMenu AND u.perfil = pm.perfil"

en donde: CStr("Nombre") lo saca del formulario (Request.Form("nombre")
La tabla Menu tiene: IDMenu, Texto y URL
La tabla Perfiles tiene: Perfil y Descripcion
La tabla PerfilMenu tiene: IDMenu y Perfil
La tabla Usuarios tiene, entre otras cosas: usuario, perfil, clave, etc. (con una clase valido usuario y clave, pero eso anda ok)

La consulta me devuelve un recordset, que despues lo recorro para mostrar las opciones del menu en forma de links:

while not rs.EOF
Response.Write "<table>"
Response.Write "<tr><td><a href=" & rs.Fields(2) & " target='Home'>" & rs.Fields(1) & "</a></td></tr>"
Response.Write "</table>"
rs.MoveNext
wend

El tema es que no me da error, pero en vez de mostrarme solamente las opciones (Texto de la tabla menu) a las que el usuario tiene acceso, siempre, ingrese el usuario que ingrese (siempre que usuario y clave sean validos), me muestra TODAS las opciones de la tabla menu, como si no le diera bola a las clausulas WHERE.

La verdad que no la tengo muy clara con SQL y quizas haya algo mal, pero yo miro la consulta una y otra vez y me pareceria que esta bien... No encuentro el error.

Ojala me puedan ayudar, MIL GRACIAS!!!!!!!

Saludos,
Sandra :-)
[email protected]
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:No anda el where de consulta sql

Publicado por Isaías (5072 intervenciones) el 20/10/2005 19:01:27
¿Y si reemplazas las comillas dobles internas por nada?

" & CStr(nombre) & "
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:No anda el where de consulta sql

Publicado por Sandra (6 intervenciones) el 20/10/2005 19:10:47
GRACIAS!!!!!!!!!!!!!!!!!!!!!!!!! Me re ayudaste, no andaba sacandole las comillas pero sí anduvo asi: CStr("'" & nombre & "'")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar