![]() |
![]() |
| 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
|
|||
|
|||
|
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. |
|
#2
|
|||
|
|||
|
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 |
|
#3
|
|||
|
|||
|
Lentitud
En cuanto a la lentitud...
Todas las tablas tienen indices por los campos intervinientes en los join? |
|
#4
|
|||
|
|||
|
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 ? |
|
#5
|
|||
|
|||
|
Indices
los indices son indispensables!!!!
estas andando en auto con el freno de mano puesto!!! je para esta consulta en particular necesitas tener los siguientes indices SELECT M.NALBA,M.OBRA,M.FECHA,M.ORIGI,H.ALBA2 , MO.NOME,MO.CLIE,L.PARTE,L.TIPO,L.HORA1 FROM MAEALBA M, LINPRTS L, MAEOBRA MO, HSTMOVI H WHERE M.FECHA > '9/30/2005' AND L.NALBA=M.NALBA AND L.TIPO='E' AND MO.OBRA=L.OBRA AND H.OBRA=MO.OBRA MAEALBA : fecha, nalba LINPRTS : nalba, tipo, obra MAEOBRA : obra HSTMOVI : obra esto es lo ideal, veras la diferencia de velocidad |
![]() |
| 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 |
|