From: | "Mariano Reingart" <mariano(at)nsis(dot)com(dot)ar> |
---|---|
To: | "Gabriel Ferro" <gabrielrferro(at)yahoo(dot)com(dot)ar>, <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: booleanos de postgres en ADO y ODBC |
Date: | 2009-05-04 15:56:15 |
Message-ID: | 03210B09EC6F4040A3159C6EE3218519@pc1 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Gabriel Ferro wrote:
> Perdon por mi insistencia pero no se a quien acudir, alguien ha usado
> campos booleanos con ADO? como les dije antes, me parece que alli
> esta el problema
> probe con la cadena de coneccion
> cn.Open "Provider=PostgreSQL; " & _
> "Location=incrimpoler; " & _
> "Data Source=192.168.0.2; " & _
> "User ID = gferro; password = miclave; " 'adOpenKeyset"
Yo uso ODBC de la siguiente forma:
cnnstr = "Provider=MSDASQL;Driver={PostgreSQL ANSI};" & _
"SERVER=localhost;DATABASE=saraza;" & _
"UID=sistema;PWD=saraza;" & _
"CONNSETTINGS=SET Datestyle TO 'DMY'%3b" &_
"SET client_ecoding TO 'LATIN1'3b;" & _
"BOOLSASCHAR=0;TrueIsMinus1=1;" & _
"TEXTASLONGVARCHAR=1;" & _
"SSLMODE=require;" & _
"UseDeclareFetch=0;PARSE=1;" & _
"UseServerSidePrepare=0;DisallowPremature=0;UpdatableCursors=0"
> y los booleanos dan siempre verdadero.
Con "BOOLSASCHAR=0;TrueIsMinus1=1" devuelve los booleanos como -1 para true
y 0 para false, como se usa en VB (sino puede devolverlos como caracteres
't' o 'f' u otra convención que puede no ser compatible con el lenguaje)
> cambie haciendo un DSN de usuario que use el cotnrolador PostgreSQL
> ANSI y con el andan perfecto los boleanos..
>
> la cosa es que no tengo como especificarle a OLEDB que use ANSI o
> UNICODE.
Con el driver ODBC: "Driver={PostgreSQL ANSI}"
Cuando probé el proveedor nativo PostgreSQL para ADO (PgOleDB) no tuve
buenos resultados (quizás por como lo uso desde mis programas), y no parece
muy completo ni actualizado.
Con el driver ODBC (PsqlODBC) no tuve problemas, salvo que luego de la
versión 8.1.200 necesité agregar las últimas lineas (no usar declare/fetch,
server side prepare, disallow premature y updatable cursors, y usar la
opción parse statements) y se deben abrir los Recorset con los cursores
locales (CursorLocation = adUseClient)
> alguna idea sin tener que crear un ODBC en cada maquina que use la
> aplicacion?
Con esta cadena de conexión, no hace falta configurar un orígen de datos en
cada maquina, solamente tenes que tener instalado el driver pgsqlodbc.
Sds
Mariano
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2009-05-04 16:00:37 | Re: Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] comportamiento extraño |
Previous Message | Alvaro Herrera | 2009-05-04 15:52:20 | Re: Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] comportamiento extraño |