FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Open en MDOQuery
Hola nuevamente... tengo este caso con un MDOQuery. Alguien sabrá de esto?
Uso: Delphi 7, FireBird 2, y MDOLibRC2. Tengo un MDOQuery con una consulta muy simple: Código:
select * from "Users" Es como si fuese necesario agregar campos al MDOQuery usando el editor. Pero no necesito hacer esto, ya que con el mismo componente ejecuto mil consultas en toda mi aplicación. Gracias...
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. |
#3
|
||||
|
||||
Nada vtdeleon. Deshabilité la opción Range Checking en las opciones de proyecto, y no soluciona nada. También recompilé sin la opción 'Range Checking' e instalé nuevamente los componentes. Incluso tuve que recompilar otros (los Hash que uso para validar contraseñas). Ensayé también poniendo los *.pas en carpetas \pas, y bueno, de repente ya no me da el mismo error. El error que sale es otro (Dynamic SQL Error) relacionado con el archivo MDO.pas. Pero si vuelvo a poner los *.pas en el directorio original (runtime), vuelve a salir el error inicial. No importa si compilo con la opción 'Range Checking' o sin ella.
No sé si otra persona tenga idea de lo que pasa. Mientras sigo haciendo pruebas...
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. Última edición por mlara fecha: 04-07-2006 a las 03:27:01. |
#4
|
||||
|
||||
Mi experiencia con esos componentes en estos momento es casi nula, pero llegaremos al paso al asunto.
Cita:
Si agregas los campos usando el editor, funciona? Invoca solo un campo a ver...
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#5
|
||||
|
||||
Ok,... ahora el error es otro (en mi código), así que el asunto inicial ya está solucionado.
Conclusión: Si alguien tiene el mismo problema puede probar esto: 1. Recomiple sin la opción 'Range checking' y reinstale los componentes MDOLib. 2. Como Delphi seguirá mostrando el mismo mensaje, mueva los *.pas que se encuentran en la carpeta runtime a otra carpeta (se puede llamar \pas), y listo. vtdeleon, muchas gracias. Voy a solucionar mi nuevo inconveniente, y espero no frenarme mucho.
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. Última edición por mlara fecha: 04-07-2006 a las 03:54:08. |
#6
|
|||
|
|||
Cita:
|
#7
|
||||
|
||||
LLevo usando los MDO algunos meses, MDODataset, MDOQuery, MDOSql y el monitor de sql, no he visto jamás ese fallo que comentas.
El problema con las comillas dobles no debe dar problemas, ya que el MDOCustomDataset tiene una propiedad de "doublequote identifiers", lo he probado y funciona a las mil maravillas. El problema más bien lo veo de SQL, puede que una udf, palabra reservada de SQL, etc se llame igual que tu tabla Users, y por ahí empiezan los problemas. No sabe identificar si es una tabla o una función. Yo le cambiaría el nombre a la tabla si estuviese a tiempo. Tampoco lo cambiaría por un TMDODataset, ya que este último está pensado para actualizar, y no tiene sentido si solo vas a consultar. Incluso si no necesitas moverte por los registros hacia atrás, puedes usar un TMDOSql, el cual es un componente más liviano todavía que el MDOQUERY. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#8
|
|||
|
|||
Cita:
La preferencia del MDODataset es cuando no se sabe si la query va ser actualizable o no, se pone al principio solo con el SelectSQL y cuando se quiere hacerla modificable se configuran las otras, ademas uno puede borrar la unidad MDOQuery de la uses y ahorrar unos bits |
#9
|
||||
|
||||
Realmente no lo había mirado, pero ahora sip:
En total son unas 40 lineas de código para:
Sobre el Tquery, muestro el constructor completo:
Aunque TMDOQuery deriva de TMDOCustomDataset, hace un override del constructor. Por cierto, gracias por hacerme mirar el código, seguiré usando TQuerys cuando solo vaya a consultar datos Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#10
|
||||
|
||||
Muy interesantes sus apreciaciones. Por lo que a mí respecta, pues usaré el MDOQuery, ya que trabajo en la migración de un sistema, y necesito trabajar con componentes compatibles a los usados anteriormente.
Con respecto a lo del mensaje 'Range check error', he seguido haciendo pruebas y al parecer lo que tengo es un conflicto con componentes Hash, que uso para cifrar las contraseñas y compararlas. Pero por fortuna, he logrado hacer correr mi aplicación. Ya voy más adelante.
__________________
...y mañana caminaré por las calles pasando inadvertido, como siempre. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
window.open | Marquitos | HTML, Javascript y otros | 1 | 02-05-2006 18:39:51 |
Delphi con Open GL | jeluso | Gráficos | 3 | 05-09-2005 21:57:41 |
Too Many open Tables | rogeriobeltran | Firebird e Interbase | 0 | 28-11-2004 01:00:07 |
Programación Open Tools Api | sur-se | OOP | 2 | 04-11-2004 18:19:09 |
Error while trying to open file | nefy | Firebird e Interbase | 4 | 15-09-2004 20:02:42 |
|