![]() |
SqlLite trunca texto leido
Hola.
Estoy conectando a una base de datos SqlLite mediante ODBC, para recuperar los datos de una tabla, pero los recupera truncados a 20 caracteres, aunque la columna tiene mas datos. No se a que se debe si es un problema de configuracion u otra cosa. |
Si tienes los campos definidos en tiempo de diseño, revisa si realizaste alguna actualizacion que no referescaste en el componente visual.
Si puedes proporcionar mas info? Saludos. |
EL Script de la tabla es:
La columna "VAL_PARA" aunque se define a "VARCHAR(20)" en Sqllite se traduce a TEXT que no tiene un limite definido, pero cuando leo una fila, el dato de la columna "VAL_PARA" con mas de 20 caracteres solo me devuelve los 20 primeros caracteres. No uso diseñador, uso una conexion directa a ODBC, bueno la conexion directa desde V. FOXPRO Supongo que tiene que ver con el ODBC o una configuracion de SQLlite y NO con FOX, si no, no lo posteo en club Delphi. Estoy usando el driver gratuito de ODBC de la url "http://www.ch-werner.de/sqliteodbc/" |
¿Y si lo cambias por varchar(30) también devuelve 20 caracteres? :rolleyes:
Por cierto, recuerda poner los tags al código fuente, ejemplo: ![]() Gracias :) |
Gracias por sus respuestas :)
Ya me se habia occurrido aumentar el ancho de columna VARCHAR, pero la base de datos es de una aplicacion externa no de la mia. Esa aplicacion la actualizan cada cierto tiempo, y si lo cambio y lo actualizan a unos meses, tendria que cambiar el ancho del campo de nuevo. :confused: |
Vale, pero:
Cita:
|
Si lo cambio la columna por "varchar(30)" o "TEXT" ya no me recorta el dato devuelto, a menos no a 20 con varchar(30) ;).
Por el momento lo he cambiado a TEXT, hasta que tenga otra opcion que me permita hacerlo sin cambiar el esquema, es decir si hubiera :). gracias por sus aportes. |
Asi que la estructura dice que es 20, pero en realidad hay mas de 20. Pues pa' que tienen la estructura asi?
En fin, es probable que sea un problema del ODBC que le cree a la estructura. Que pasa si usas otro metodo, como ADO? Una solucion a tu problema seria crear la tabla con la estructura correcta, darle insert desde el orgen (INSERT INTO Corregido SELECT *.....) y select desde Fox. |
La franja horaria es GMT +2. Ahora son las 21:41:41. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi