Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FROM

Estas en el tema de No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FROM en el foro de SQL Server en Foros del Web. Buenas a todos!!! En principio daros las gracias por estar hay, por que aunque no hace mucho que me e registrado os llevo siguiendo desde ...
  #1 (permalink)  
Antiguo 20/01/2011, 20:34
Avatar de Andyma21  
Fecha de Ingreso: febrero-2010
Ubicación: Burgos
Mensajes: 7
Antigüedad: 14 años, 2 meses
Puntos: 0
No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FROM

Buenas a todos!!!
En principio daros las gracias por estar hay, por que aunque no hace mucho que me e registrado os llevo siguiendo desde hace mucho tiempo. Sois en gran parte los que me resolvéis los problemas gracias a los mensajes de la gente.

Llevo tres días con esto y ya me estoy liando hasta yo.
Aunque he leído el mensaje de xAlex, y sus respuestas como 20 veces, no consigo resolver mi problema y estoy mezclando todo.

Os explico... ( haber si me explico bien)
Estoy trabajando con Visual Basic 6 y Microsoft Access 2000

Tengo 5 tablas:
- Alumnos con campos como: COD_EMP, IDALUMNO, PAPELLIDO, SAPELLIDO, NOMBRE, IDLOCALIDAD, EDAD ....y más
-Matriculas: COD_EMP, IDMATRICULA, IDALUMNO, ANIO, IDGRADO, IDAULA, IDTUTOR, PAGO
-Localidades: COD_EMP, IDLOCALIDAD, LOCALIDAD, CP
-Grados: COD_EMP, IDGRADO, GRADO
-Aulas: COD_EMP, IDAULA, IDGRADO, AULA

En la tabla alumnos guardo la información de los alumnos (evidentemente) en el campo IDLOCALIDAD guardo el código de la localidad.
En la tabla matriculas guardo las matriculaciones de los alumnos por año, fecha matriculación, el código del grado y el código del aula, donde se matriculan ese año.
En la tabla grados guardo el nombre del grado y
En la tabla aulas guardo el nombre del aula

Necesito hacer una consulta que me extraiga estos datos para mostrarlos en un MSHFlexGrid antes de mandarlos a imprimir.

Select MATRICULAS.COD_EMP, MATRICULAS.IDMATRICULA, MATRICULAS.IDALUMNO, MATRICULAS.ANIO AS AÑO, ALUMNOS.PAPELLIDO, ALUMNOS.SAPELLIDO, ALUMNOS.NOMBRE, ALUMNOS.SEXO, ALUMNOS.EDAD, LOCALIDADES.LOCALIDAD, GRADOS.GRADO, AULAS.AULA


La consulta la hice así:

FormInformes.sqlInf = "SELECT MATRICULAS.COD_EMP, MATRICULAS.IDMATRICULA, MATRICULAS.IDALUMNO, MATRICULAS.ANIO AS AÑO, ALUMNOS.PAPELLIDO, ALUMNOS.SAPELLIDO, ALUMNOS.NOMBRE, ALUMNOS.SEXO, ALUMNOS.EDAD, LOCALIDADES.LOCALIDAD, GRADOS.GRADO, AULAS.AULA FROM AULAS INNER JOIN (GRADOS INNER JOIN (LOCALIDADES INNER JOIN (ALUMNOS INNER JOIN (MATRICULAS INNER JOIN ALUMNOS ON MATRICULAS.IDALUMNO = ALUMNOS.IDALUMNO) ON ALUMNOS.IDALUMNO = MATRICULAS.IDALUMNO) ON LOCALIDADES.IDLOCALIDAD = ALUMNOS.IDLOCALIDAD) ON GRADOS.IDGRADO = MATRICULAS.IDGRADO) ON AULAS.IDAULA = GRADOS.IDAULA Where MATRICULAS.ANIO='" + mdiPrincipal.anoactivo + "' and MATRICULAS.COD_EMP='" + mdiPrincipal.colegioActivo + "' order by ALUMNOS.IDALUMNO"

Y me da este error:
No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FROM

Alguien podría decirme que estoy haciendo mal????

Muchas gracias de antemano

Un saludo Andy
  #2 (permalink)  
Antiguo 21/01/2011, 08:50
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FRO

Estas poniendo 2 veces un inner join con la tabla alumnos y eso no es posible en la forma en que lo estas haciendo.

Saludos!
  #3 (permalink)  
Antiguo 21/01/2011, 09:34
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FRO

Tus clausulas INNER JOIN, estan mal tecleadas debe ser:

FROM tablax inner join tablaz on tablax.id = tablaz.id
inner join tablay on tablax.id = tablay.id
etc.
__________________
MCTS Isaias Islas
  #4 (permalink)  
Antiguo 21/01/2011, 09:52
Avatar de Andyma21  
Fecha de Ingreso: febrero-2010
Ubicación: Burgos
Mensajes: 7
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FRO

Muchas gracias por las respuestas...

pero no lo entiendo..... iislas.

Podrias ponerme el ejemplo con los datos de mis tablas haber si lo pillo mejor

lo he dado tantas vueltas que ya me lio
  #5 (permalink)  
Antiguo 21/01/2011, 10:51
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FRO

Amig@, despues del INNER JOIN, debes indicar que campos hacen el "enlace" entre ambas tablas.

Lee tu ayuda en linea..
__________________
MCTS Isaias Islas
  #6 (permalink)  
Antiguo 21/01/2011, 11:12
Avatar de Andyma21  
Fecha de Ingreso: febrero-2010
Ubicación: Burgos
Mensajes: 7
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FRO

Hola muchas gracias, pero ya lo e conseguido. os dejo aki el código, por si hay alguen por hay que le venga bien.


FormInformes.sqlInf = "SELECT MATRICULAS.COD_EMP, MATRICULAS.IDMATRICULA,MATRICULAS.IDALUMNO, MATRICULAS.ANIO AS AÑO, ALUMNOS.PAPELLIDO,ALUMNOS.SAPELLIDO, ALUMNOS.NOMBRE, ALUMNOS.SEXO, ALUMNOS.EDAD, LOCALIDADES.LOCALIDAD, GRADOS.GRADO, AULAS.AULA FROM AULAS INNER JOIN (GRADOS INNER JOIN (LOCALIDADES INNER JOIN (MATRICULAS INNER JOIN ALUMNOS ON MATRICULAS.IDALUMNO = ALUMNOS.IDALUMNO) ON LOCALIDADES.IDLOCALIDAD = ALUMNOS.IDLOCALIDAD) ON GRADOS.IDGRADO = MATRICULAS.IDGRADO) ON AULAS.IDGRADO = GRADOS.IDGRADO Where MATRICULAS.ANIO='" + frmListados.cmbano.Text + "' and MATRICULAS.COD_EMP='" + mdiPrincipal.colegioActivo + "' order by ALUMNOS.IDALUMNO"

Cuidaros y seguir asi....un abrazo
  #7 (permalink)  
Antiguo 21/01/2011, 11:16
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: No se puede repetir el nombre de la tabla 'ALUMNOS' en la cláusula del FRO

Deberias aplicar las reglas de la buena codificacion, pero bueno, cada quien a su gusto.
__________________
MCTS Isaias Islas

Etiquetas: alumnos, nombre, repetir, tablas
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 19:33.