PDA

Ver la Versión Completa : campos char o varchar postgres se ven como Blobtype=ftMemo


andresenlared
22-10-2007, 23:42:47
:confused:
Saludos.

estoy haciendo una interfase entre una base de datos postgres y una base de datos firebird, uso Ado para lograr una conexion a la base de datos postgres, pero cuando abro los datos de una tabla, y esa tabla tiene campos de tipo char o varchar, se visualizan como memo en la grilla.

tengo instalado el Postgres database server 8.1
controlador postgresSql Ansi, postgres SQL unicode.

como puedo solucionar este problema de visualizacion?, o si hay otro hilo que me pueda orientar, he estado buscando pero no hay nada parecido

Muchas gracias

jhonny
22-10-2007, 23:49:23
Hola :), Nunca he trabajado con Postgres, pero ¿No sera que el campo del DataSet lo tienes definido como TBlobField?

Espero te sirva de algo ;).

andresenlared
23-10-2007, 00:01:51
Gracias por tu ayuda, pero ese no es el problema, estoy usando ado, y con el Adotable agrego los campos de la tabla, y verificando las propiedades de cada campo y aparecen como ftmemo. :(

jhonny
23-10-2007, 00:08:26
Gracias por tu ayuda, pero ese no es el problema, estoy usando ado, y con el Adotable agrego los campos de la tabla, y verificando las propiedades de cada campo y aparecen como ftmemo. :(

Exacto, ftMemo es uno de los valores que se pueden aplicar a la propiedad BlobType que "aparece" cuando el campo es de tipo TBlobField...

Entonces, quizá te funcione el asunto creando el campo desde 0 sin llamarlo directamente desde la BD, haciendo "Click-Contrario" en el "Editor de campos", Nuevo, le asignas el nombre del campo, le colocas el Type como string, luego el tamaño y listo, ya deberia trabajarte como un string ;).

andresenlared
23-10-2007, 00:27:27
sigue el error.
cree el campo como me indicaste, de tipo string, tamaño etc, cuando abro la tabla se genera un error por tipo de dato esperado memo.

se me ocurre una solucion no muy tecnica, pero seria algo parecido a lo que me recomiendas, pero crearlo como campo calculado, y en el oncal, asignar el texto de la linea cero del memo al campo creado de tipo string.

jhonny
23-10-2007, 00:30:44
Pues si, esa sería una solución, pero deberia funcionar si eso, ¿Estas seguro que el campo es de tipo Varchar en la BD?, es que me parece muy raro que una BD, haga una cosa asi, aunque repito, no he trabajado con Postgres ;).

andresenlared
23-10-2007, 00:40:08
El problema se da con esos tipos de datos char o varchar en la base de datos postgres, ya implemente lo que te comente hace rato y si trabajo bien, no veo otra forma de solucionar este problema por el momento, no se si tenga que ver el ODBC que estoy utilizando que no pueda interpretar esos tipos de datos como string.

Gracias....por tu ayuda

jhonny
23-10-2007, 14:56:30
Ahhh, claro, si que tienes razón, seguramente sea el ODBC el que tenga algo que ver con el asunto.

hreine
24-01-2008, 19:18:57
Intenta creando el ODBC como PostgreSql ANSI :)

gatosoft
25-01-2008, 03:24:24
Amigo andresenlared,

Aunque tu digas que tu solución no fue "muy técnica" me pareció que fue bastante ingeniosa (la del Campo Calculado).

Yo tuve el mismo problema utilizando componentes ADO y jugué con todas las propiedades pero no se me ocurrió eso.

De todas formas la solución fue.... cambiar de componentes y me pasé (me devolví) a los Zeos.

Los Zeos fueron hechos para PostgreSQL (y bueno para MySQL también), así que si te quieres conectar a PostgreSQL lo mejor es no ponerse a inventar....


Saludos,

movorack
25-01-2008, 21:46:40
Yo tuve el mismo problema... uso PostgreSQL y conecto con PostgresDAC, alguna vez intente usar Zeos pero mi jefe compró PostgresDAC :D pero con Zeos o con PostgresDAC el resultado era el mismo... visualizaba como memo los tipo varchar

Un día cuando instalé los JEDi, usé la JvDBUltimGrid creo que así se llama y ya no se veian como memo los campos y desde entonces uso estos componentes para casi todo... no he vuelto a tener ese problema.

saludes.