Conexion a POSTGRESQL via ADO - SOLUCIONADO

Conexion a POSTGRESQL via ADO - SOLUCIONADO

Postby leandro » Wed Jan 28, 2015 5:21 pm

Compañeros del foro tengan buen día...

Resulta que Tengo un nuevo cliente el cual tiene una base de datos POSTGRESQL, he intentado conectarme a la db sin exito hasta el momento. Estoy utilizando la siguiente cadena de conexión:

Code: Select all  Expand view

oCon:ConnectionString:="Driver={PostgreSQL ODBC Driver(UNICODE)};Server="+alltrim(dHost)+";Port="+alltrim(dPrto)+";User="+alltrim(dUser)+";Password="+alltrim(dPass)+";"
TRY
  oCon:Open()
CATCH oError
  MsgStop( "No pude abrir la conexión para crear las tablas !", "Error de datos")
  QUIT
END
 


Pero no funciona.... en el foro descargue otra e intente, es la siguiente:

Code: Select all  Expand view

cDriSql := "Provider=PostgreSQL OLE DB Provider;"+;
"Location=finca_raiz;"+;
"Data Source=192.168.0.119;"+;
"User ID=postgres;"+;
"PORT=5432;"+;
"Password=123456;"

if oCon == nil
  oCon := TOleAuto():new("ADODB.Connection")
  oCon:ConnectionString := cDriSql
  TRY
    oCon:Open()
    lConnect := .t.
  CATCH
    oCon := nil
    Msginfo("Error. No fue posible la conexi¢n con el servidor SQL" )
    return .F.
  END
else
  lConnect := .t.
endif
 


Pero tampoco, no se que este haciendo mal...

Revise en -->panel de control--->origenes de datos--->Controladores y ahi si estan los nombres de los drivers, coloque los nombres tal como aparecen en la lista. Aun asi no me funciona...

Alguien tiene idea sobre este tema?

Saludos
Last edited by leandro on Fri Jan 30, 2015 1:51 pm, edited 1 time in total.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Conexion a POSTGRESQL via ADO

Postby carlos vargas » Wed Jan 28, 2015 7:04 pm

ya probaste con el driver ansi?

salu2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1688
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Conexion a POSTGRESQL via ADO

Postby leandro » Wed Jan 28, 2015 7:10 pm

Carlos primero que todo gracias por responder...

Si ya lo intente de ambas formas... pero aun asi no me funciona.
La verdad no se si tenga que ver con driver...

¿De casualidad tienes algun driver para instalar y hacer la respectiva prueba?

Saludos
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Conexion a POSTGRESQL via ADO

Postby carlos vargas » Wed Jan 28, 2015 9:59 pm

este servido postgreesql esta configurado para aceptar conexiones remotas?
ya has intentado conectarte usando el programa pgadmin? te funciona?
en postgreesql hay que dar permisos que ip de la red local puede ser usados para poder conectarse al servidor.

como estas con estos temas?

salu2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1688
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Conexion a POSTGRESQL via ADO

Postby carlos vargas » Wed Jan 28, 2015 10:00 pm

si se puede te puedo ayudar por teamviewer

salu2
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1688
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Conexion a POSTGRESQL via ADO

Postby leandro » Thu Jan 29, 2015 1:58 pm

Buenos Dias Carlos... Muchas gracias por responder....

1. este servidor postgreesql esta configurado para aceptar conexiones remotas?

Para ser sincero... no lo se, para hacer pruebas instale de la db en un equipo localmente tal como lo hago con mysql, pero la verdad es que desconozco como se verifica si se aceptan o no conexiones remotas.


2. ya has intentado conectarte usando el programa pgadmin? te funciona?

Si ya lo intente y si funciona.

3. en postgreesql hay que dar permisos que ip de la red local puede ser usados para poder conectarse al servidor

Como te mencione anteriormente desconozco la forma de habilitar o deshabilitar ese tipo de opciones.

4. si se puede te puedo ayudar por teamviewer

Claro que si tu me diras a que horas?

De antemano gracias.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Conexion a POSTGRESQL via ADO

Postby carlos vargas » Thu Jan 29, 2015 2:50 pm

ok, dejame llegar al work y te contacto,
tiene skype?

salu2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
carlos vargas
 
Posts: 1688
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Conexion a POSTGRESQL via ADO

Postby leandro » Thu Jan 29, 2015 3:21 pm

Si Carlos yo entro a skype con mi cuenta de hotmail.

leandroalfonso111@hotmail.com
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Conexion a POSTGRESQL via ADO

Postby compubrion » Thu Jan 29, 2015 6:19 pm

Saludos !
Puedes configurar el archivo pg_hba.conf para que aceptes las conexiones que tu quieras, y en el archivo postgresql.conf busca la Connection Settings y quita el signo numeral para que quede asi :

listen_addresses = '*'
Harbour / Bcc / MinGW / Fwh 13.9
User avatar
compubrion
 
Posts: 130
Joined: Thu Mar 08, 2007 6:12 pm
Location: Miranda - Venezuela

Re: Conexion a POSTGRESQL via ADO

Postby RenOmaS » Thu Jan 29, 2015 6:22 pm

Buenas

Cual es la aplicacion cliente (DLL) que estas a utilizar?
Saludos/regards
RenOmaS

skype: americo.balboa
User avatar
RenOmaS
 
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Re: Conexion a POSTGRESQL via ADO

Postby russimicro » Thu Jan 29, 2015 7:24 pm

El string que mencionas funciona perfecto.. es el que yo uso

cDriSql := "Provider=PostgreSQL OLE DB Provider;"+;
"Location=finca_raiz;"+;
"Data Source=192.168.0.119;"+;
"User ID=postgres;"+;
"PORT=5432;"+;
"Password=123456;"

if oCon == nil
oCon := TOleAuto():new("ADODB.Connection")
oCon:ConnectionString := cDriSql
TRY
oCon:Open()
lConnect := .t.
CATCH
oCon := nil
Msginfo("Error. No fue posible la conexi¢n con el servidor SQL" )
return .F.
END
else
lConnect := .t.
endif

Debe buscar el error en los permisos del server... prueba primero con el PGADMIN III , que trae el mismo postgres

Saludos
russimicro
 
Posts: 229
Joined: Sun Jan 31, 2010 3:30 pm
Location: Bucaramanga - Colombia

Re: Conexion a POSTGRESQL via ADO

Postby leandro » Thu Jan 29, 2015 7:47 pm

Muchas Gracias por las respuestas

Contenido pg_hba.conf

Code: Select all  Expand view

# PostgreSQL Client Authentication Configuration File
# ===================================================
#
# Refer to the "Client Authentication" section in the PostgreSQL
# documentation for a complete description of this file.  A short
# synopsis follows.
#
# This file controls: which hosts are allowed to connect, how clients
# are authenticated, which PostgreSQL user names they can use, which
# databases they can access.  Records take one of these forms:
#
# local      DATABASE  USER  METHOD  [OPTIONS]
# host       DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
# hostssl    DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
# hostnossl  DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
#
# (The uppercase items must be replaced by actual values.)
#
# The first field is the connection type: "local" is a Unix-domain
# socket, "host" is either a plain or SSL-encrypted TCP/IP socket,
# "hostssl" is an SSL-encrypted TCP/IP socket, and "hostnossl" is a
# plain TCP/IP socket.
#
# DATABASE can be "all", "sameuser", "samerole", "replication", a
# database name, or a comma-separated list thereof. The "all"
# keyword does not match "replication". Access to replication
# must be enabled in a separate record (see example below).
#
# USER can be "all", a user name, a group name prefixed with "+", or a
# comma-separated list thereof.  In both the DATABASE and USER fields
# you can also write a file name prefixed with "@" to include names
# from a separate file.
#
# ADDRESS specifies the set of hosts the record matches.  It can be a
# host name, or it is made up of an IP address and a CIDR mask that is
# an integer (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that
# specifies the number of significant bits in the mask.  A host name
# that starts with a dot (.) matches a suffix of the actual host name.
# Alternatively, you can write an IP address and netmask in separate
# columns to specify the set of hosts.  Instead of a CIDR-address, you
# can write "samehost" to match any of the server's own IP addresses,
# or "samenet" to match any address in any subnet that the server is
# directly connected to.
#
# METHOD can be "trust", "reject", "md5", "password", "gss", "sspi",
# "ident", "peer", "pam", "ldap", "radius" or "cert".  Note that
# "password" sends passwords in clear text; "md5" is preferred since
# it sends encrypted passwords.
#
# OPTIONS are a set of options for the authentication in the format
# NAME=VALUE.  The available options depend on the different
# authentication methods -- refer to the "Client Authentication"
# section in the documentation for a list of which options are
# available for which authentication methods.
#
# Database and user names containing spaces, commas, quotes and other
# special characters must be quoted.  Quoting one of the keywords
# "all", "sameuser", "samerole" or "replication" makes the name lose
# its special character, and just match a database or username with
# that name.
#
# This file is read on server startup and when the postmaster receives
# a SIGHUP signal.  If you edit the file on a running system, you have
# to SIGHUP the postmaster for the changes to take effect.  You can
# use "pg_ctl reload" to do that.

# Put your actual configuration here
# ----------------------------------
#
# If you want to allow non-local connections, you need to add more
# "host" records.  In that case you will also need to make PostgreSQL
# listen on a non-local interface via the listen_addresses
# configuration parameter, or via the -i or -h command line switches.



# TYPE  DATABASE        USER            ADDRESS                 METHOD

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#host    replication     postgres        127.0.0.1/32            md5
#host    replication     postgres        ::1/128                 md5



Contenido postgresql.conf

Code: Select all  Expand view

#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------

# - Connection Settings -

listen_addresses = '*'      # what IP address(es) to listen on;
                    # comma-separated list of addresses;
                    # defaults to 'localhost'; use '*' for all
                    # (change requires restart)
port = 5432             # (change requires restart)
max_connections = 100           # (change requires restart)
 


Creo q estan habilitadas todas las opciones...
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Conexion a POSTGRESQL via ADO

Postby leandro » Thu Jan 29, 2015 7:51 pm

RenOmaS Muchas Gracias por Responder....

Perdon mi ignorancia, pero según mis conocimientos creo que la aplicación cliente dll con la que trabajan es POWER BUILDER.

No se si esa era la pregunta.

Saludos
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Conexion a POSTGRESQL via ADO

Postby RenOmaS » Thu Jan 29, 2015 8:02 pm

Hola:

Creo que dependiendo del cliente (DLL) la conexion string cambia, para esta q tu colocas

Provider=PostgreSQL OLE DB Provider;


Creo que es la que esta aqui http://pgfoundry.org/projects/oledb/

En todo caso si ya existe alguna otra aplicacion (en otro lenguage de programacion) puedes ver como ella se conecta con el Psotgres
Saludos/regards
RenOmaS

skype: americo.balboa
User avatar
RenOmaS
 
Posts: 205
Joined: Fri Oct 07, 2005 5:07 pm

Re: Conexion a POSTGRESQL via ADO

Postby leandro » Thu Jan 29, 2015 8:24 pm

Me acabe de dar cuenta que por POWER BUILDER se conectan atravez de una conexion DSN del Sistema...

Como me puedo conectar de esa manera? Alguien tiene algun ejemplo?


Image


Saludos
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 14 guests