![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Según el error que da, es que interpreta un nombre de campo o de tabla como una palabra reservada del lenguaje SQL (o al menos así lo interpreto yo ese error).
Si se trata de esto, deberías buscar información de tu motor de bases de datos, mirar las palabras reservadas que tenga, y ver si alguna está en tu SQL. Un ejemplo: Si tienes un campo que se llama USERNAME, no podrás hacer sqls sobre ese campo, porque USERNAME es una palabra reservada de Interbase (por decir algo) y da conflicto al interpretar el SQL. Solución: cambiar el nombre del campo por USERSNAME o UNAME, etc. No sé si podría ocurrir con el campo "MO.DESC". Desc es típico del order by para indicar un orden descendente, pero en principio, no debería haber problemas porque está cualificado, es decir, lleva "MO." delante, por tanto indica que es un campo perteneciente a la tabla MO. Quita ese campo del select y si no da error después, hemos acertado. Como digo, no puedo asegurar que sea ese el error, pero es lo único que veo. El SQL parece estar bien. OFFTOPIC: No me he sentido más inseguro de una respuesta en mi vida .Edito: Al ver el mensaje de gluglu, ya me siento más seguro ![]() Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#2
|
||||
|
||||
|
Coincido con Lepe que puede ser el nombre del campo DESC que coincide con una palabra reservada que se puede incluir en el 'Order By' para ordenar el query en orden descendente.
__________________
Piensa siempre en positivo ! |
|
#3
|
|||
|
|||
|
Coincido con Lepe y gluglu, la solución es o cambiar el nombre del campo o usar comillas dependiendo del motor de base de datos que uses, por ejemplo:
MO."DESC" si es paradox, MO.`DESC` en MySQL, estos son los que recuerdo de memoria. |
|
#4
|
|||
|
|||
|
He probado a quitar el campo mo.desc y al ejecutar el programa en delphi ahora no me sale ningun error, pero cuando voy a ejecutar la consulta se queda como colgado y se me cuelga el ordenador.
Y si esa misma consulta la intento ejecutar en access quitando lo del mo.desc, me sale el mismo error : error de sintaxis (falta operador) en la expresión de consulta. Las tablas sobre las que trabajo son archivos dbf que tengo todos en una misma carpeta dentro del programa y solamente uso un dataset, un query y un dbgrid para mostrar la consulta. Lo único que se me ocurre es que sea normal que tarde tanto porque por ejemplo una consulta tan simple como esta : SELECT M.NALBA,H.ALBA2 FROM MAEALBA M INNER JOIN HSTMOVI H ON M.OBRA=H.OBRA; Con eso ya le cuesta un poco, casi 1 minuto, ya que estamos hablando con tablas con muchos registros (hstmovi tiene más de 76000 registros y maemovi más de 37000). Puff, es que es tal la lentitud que en delphi una consulta como esa se me cuelga el pc, en access por lo menos le cuesta pero la ejecuta. Última edición por snowlis fecha: 19-04-2007 a las 18:37:07. |
|
#5
|
|||
|
|||
|
parentesis?
aunque hace rato que no trabajo en access, creo que necesita parentesis en los join, quedaria asi:
le saque el campo DESC porque tambien creo que te traera problemas...
tambien puedes probar sin los INNER JOIN
Espero que te sea de ayuda... Saludos |
|
#6
|
|||
|
|||
|
Lentitud
En cuanto a la lentitud...
Todas las tablas tienen indices por los campos intervinientes en los join? |
|
#7
|
|||
|
|||
|
Gracias Hach por las consultas, las probaré
![]() En cuanto a los indices no los tengo, solo tengo en la carpeta los archivos de delphi y los DBF. Creo que también tenía los indices NT1,NT2 y NT3 pero los borré porque me di cuenta que el delphi se los pasaba por el forro y creo que no servía para nada, pero igual me equivoco. Si se los pongo, las consultas iran más rápidas o en que influye tener los indices o no ? |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Error al ejecutar consulta | mierda | SQL | 1 | 11-03-2007 22:06:36 |
| Error al Ejecutar consulta de Eliminacion | JoanKa | Varios | 2 | 02-01-2007 16:10:53 |
| Ejecutar una consulta de Access | Leviatan | Conexión con bases de datos | 2 | 17-10-2006 10:08:37 |
| ejecutar consulta de access | juanmdq | Tablas planas | 2 | 07-01-2005 13:59:19 |
| ADO: Error al ejecutar una consulta repetidamente | sostro | Conexión con bases de datos | 6 | 31-08-2004 17:43:50 |
|