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

Problema con consulta SQL

Estas en el tema de Problema con consulta SQL en el foro de ASP Clásico en Foros del Web. Tengo el siguiente sql para sacar todos los datos de la tabla usuario para luego trabajar con ellos y ademas sacar la cantidad de reservas ...
  #1 (permalink)  
Antiguo 29/10/2004, 08:53
 
Fecha de Ingreso: marzo-2003
Ubicación: onde toy?
Mensajes: 1.437
Antigüedad: 21 años, 3 meses
Puntos: 9
Problema con consulta SQL

Tengo el siguiente sql para sacar todos los datos de la tabla usuario para luego trabajar con ellos y ademas sacar la cantidad de reservas efectuadas de la tabla Actividades.. pero me qrroja el sgte error.

Código:
sql = "SELECT  a.*,  Count(e.estado)as cuentas from usuarios a, actividades e  where e.solicita = "&iduser&" and e.estado = '"&estado&"' and a.iduser = "&iduser&""
Error
Ha intentado ejecutar una consulta que no incluye la expresión especificada 'iduser' como parte de una función de agregado


no es posible hacer esto??
__________________
Buena Vida...
Francisco
  #2 (permalink)  
Antiguo 29/10/2004, 09:00
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Hola Bluesman74cl!
Lo que podés hacer es fijarte si tenés declarada la variable correctamente, ya que suele tirar ese tipo de errores cuando no tenés definida la variable o no tiene un valor inicial válido asignado.
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #3 (permalink)  
Antiguo 29/10/2004, 09:04
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 5 meses
Puntos: 1
Saludos.

Asegurate de que iduser este treyendo algún valor. Has un response.write de esa varibale antes de ejecutar el query.

Tambien puedes probar así:

Código PHP:
sql "SELECT  a.*,  Count(e.estado) as cuentas from usuarios a, actividades e  where e.solicita = " iduser " and e.estado = '" estado "' and a.iduser = '" &  iduser "'" 
Suerte
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.

Última edición por José Molina; 29/10/2004 a las 09:07
  #4 (permalink)  
Antiguo 29/10/2004, 09:15
 
Fecha de Ingreso: marzo-2003
Ubicación: onde toy?
Mensajes: 1.437
Antigüedad: 21 años, 3 meses
Puntos: 9
si hago un response.write del sql sale esto

SELECT a.*, Count(e.estado)as cuentas from usuarios a, actividades e where e.solicita = 51 and e.estado = 'Reservada' and a.iduser = 51
y eso significa que iduser está trayendo el 51


José Molina... el ' " &Variable_de_tipo_string & " ' es para trabajar con datos tipo String , sin las comillas simples es para trabajar con numericos...
__________________
Buena Vida...
Francisco

Última edición por Bluesman74cl; 29/10/2004 a las 09:17
  #5 (permalink)  
Antiguo 29/10/2004, 09:44
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 19 años, 8 meses
Puntos: 2
Ok, Aqui vamos con los detalles de la tabla

Tabla:
id | numeric | 5 | valores nulos no
campo1 |char |10| valores nulos si
campo2 | numeric |9 | valores nulos si La que hace el problema
campo3 | char |10| valores nulos si

Definición adicional campo2
Predeterminado nada
Precisión 18
Escala 0
Identidad no
Fórmula nada

Ahora te hago otra pregunta entonces. Sucede que antes de ingresar los datos en una Tabla tengo que validar que no exista.
Sé que tengo que hacerlo mediante consultas, pero el tema es que si rebota el ingreso debería volver a la pag anterior (Hacer un Back) para no perder los datos que estaban llenados y a la vez cambiar el valor de ese campo para que se puedan ingresar los datos.
Hay una forma de lograrlo????
Había pensado que en el caso que en la pag de procesos encuentre el campo repetido redireccione a un sector del body de la misma que notifique el error indicando el rollback.
Qué opinas. Aún no lo pruebo pero... habría forma que un botón en la pag oficie del botón volver del browser????
Mas que nada para que no se pierdan los datos que ya estaban en el formulrario.
Gracias por tu atención!!!
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #6 (permalink)  
Antiguo 29/10/2004, 09:49
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Si tienes una función de agregado como count, necesitas un group by con todos los campos simples del select, es decir, los que estan contenidos en A.*

Cita:
sql = "Select A.*, COUNT(E.estado) as Cuentas
From Usuarios A INNER JOIN Actividades E ON a.IdUser = e.IdUser
Where A.IdUser = " & iduser " and e.Estado = '" & estado & "'
Group By ........"
Saludos

Última edición por Myakire; 29/10/2004 a las 09:52
  #7 (permalink)  
Antiguo 29/10/2004, 09:51
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
Verinchi, te equivocaste de post, ¿o no?, veamos eso en el que corresponde.
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 10:59.