Range check error en ZeosLib
Buenas,
Hoy al iniciar D2006 me he encontrado con que no puedo abrir ninguna TZquery (en MySQL), ya que el IDE me devuelve "Range Check Error" y la información añadida al mismo es: Código:
+ $19[14626211]{ZPlain100.bpl} ZPlainMySqlDriver.ZPlainMySqlDriver.TZMySQL5PlainDriver.GetFieldType + $19 La versión instalada de Zeoslib es la 6.6.1, con la que llevo trabajando un año y pico sin ningún problema. He desinstalado esta versión e instalado la últma (6.6.2.rc) y el error es exactamente el mismo. Este problema me ocasiona que no pueda abrir en el IDE directamente las tablas y no sea capaz de recuperar la información de la tabla. ¿Alguien sabe a que se debe? Mil gracias PD: En los foros de Zeos hablan de un problema similar en Postgre, pero de Mysql no he encontrado nada. |
Se me ocurre que la base a la que estás conectado tenga algún dato que no esté dentro de los valores esperados.
Prueba cambiar la base con la que te conectas por alguna otra anterior, a ver si al abrir el ide y conectar la "base vieja que si funcionaba", las tablas y el ide funcionan. También se me ocurre la idea de desconectar los componentes. Cerrar las tablas/querys, desconectar la base y grabar el proyecto. Luego cierras todo y abres el IDE, a ver si funciona. Si funciona, puedes ir conectando poco a poco las cosas y ver donde deja de funcionar. - Primero conectas la base - Luego abres una tabla, luego otra - Luego un query - etc. ... Seguramente, el query o tabla que no puedas abrir tendrá un valor muy grande en uno de sus registros (un integer para un byte, un string de 100 para un string de 10, etc.) Suerte y mantenenos al tanto... |
Gracias por tu respuesta.
Lo primero decirte que he probado a restaurar una copia de la bd, y no ha habido forma, el problema persiste. Como tengo otros proyectos con Zeos y MySQL he probado con ellos y pasa exactamente lo mismo (son diferentes bases de datos). Ayer me dió por restaurar una copia de seguridad que tengo hecha de la carpeta BDS de Archivos de programa y funcionó correctamente todo, pero hoy he vuelto a iniciar D2006 y el error ha vuelto a reproducirse. No entiendo que es lo que puede pasar porque ayer lo unico que hice fue abrir el proyecto, intentar abrir una tabla cualquiera y funcionó. Y hoy ya no!!! ¿Será cuestión de brujas? ¿Alguna otra sugerencia? Gracias |
En las opciones del proyecto, quita la casilla "Range check error"
Se supone que es por eso que salta la excepción. En delphi 7 está en compiler, en BDS ya no sé. saludos y Suerte |
Cita:
En mi caso uso este código mysqlConnection.Connect; if mysqlConnection.Connected then showmessage('Conectado a la base de datos ' + mysqlConnection.Database); <== aquí me entra por lo tanto supongo que conecta qryMysql.sql.clear; qryMysql.SQL.Add('Select * from socios'); qryMysql.open; <== la excepción me salta aquí if (qryMysql.RecordCount = 1) then begin showmessage(weblogin); end; |
Buenas , siento reabrir el post pero me acabo de encontrar con el mismo caso , en su dia lo solucióne pero no recuerdo como !!! que torpe !!!
Tengo un proyecto en delphi 7 con las zeos lib 6.6.6 y al conectar a la BD e intentar ejecutar la query obtengo "range check error" y no consigo hacer lo funcionar. Gracias, |
La franja horaria es GMT +2. Ahora son las 17:57:49. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi