Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > PostgreSQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
problema al conectar lazarus con postgresql

Hola, feliz navidad para todos.
bueno resulta que me descargue la version 0.9.28.2 de lazarus y tengo postgresql 9.0 para manejar la base de datos, estoy usando windows 7, el problema es que al intentar conectar un control zconnection me da un mensaje de error que dice "no fue encontrado el driver de la base de datos"

porque pasa esto?

primero me pedia una dll libq.dll y lo copie al directorio del proyecto y ahora me sale este error, que puede estar pasando?

saludos
Responder Con Cita
  #2  
Antiguo 26-12-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Has elegido correctamente el driver a usar?
Responder Con Cita
  #3  
Antiguo 26-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
Hola Casimiro, nose como elegir el driver, como hago eso?
gracias
Responder Con Cita
  #4  
Antiguo 26-12-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.039
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
En las propiedades del componente.
Responder Con Cita
  #5  
Antiguo 26-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
En las propiedades del componente.
ha ok, si, yo la version de postgresql que tengo es la estable 6.6.6 y esta no aparecia en las propiedades del componente
Responder Con Cita
  #6  
Antiguo 26-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
acabo de instalar una version mas nueva de lazarus y la version estable 6.6.6 de los componentes zeos.

las propiedades que pongo en zconnection son estas:

database: bbdd (base de datos en postgresql)
hostname: localhost
password: contraseña de postgresql
user: postgre (usuario en postgresql)
protocol: postgresql (la version que tengo de postgresql es 9.0 y aca aparece hasta 8.0)


ahora cuando cambio connected a true me aparece el siguiente mensaje:

"Can not find default login prompt dialog. Please add DBLogdlg to the uses section of your main file "

al agregar en el uses dblogdlg me marca error en esa linea.
Responder Con Cita
  #7  
Antiguo 26-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
ahora hice una modificacion al proyecto, agregando un boton para conectar por codigo de esta forma:

procedure TForm1.ToggleBox1Change(Sender: TObject);
begin
zconnection1.Database:= 'bbdd';
zconnection1.HostName:= 'localhost';
zconnection1.User:= 'postgre';
zconnection1.Password:='serdel';
zconnection1.Connected:= true;
end;

ahora me sale un mensaje:

SQLerror: fe_sendauth authentication type 5 not supported

me desorienta donde puede estar el error
Responder Con Cita
  #8  
Antiguo 26-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
modifique las lineas de configuracion de postgresql

# TYPE DATABASE USER CIDR-ADDRESS METHOD

# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5

cambie md5 por trust, y aparece otro error.
sera la version del servidor postgresql?
Responder Con Cita
  #9  
Antiguo 27-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
no se podra mover este tema al apartado postgresql? puede que alli alguien con un problema parecido lo vea.
saludos
Responder Con Cita
  #10  
Antiguo 27-12-2011
Avatar de radenf
radenf radenf is offline
Miembro
 
Registrado: oct 2007
Ubicación: Viña del Mar,Chile
Posts: 608
Poder: 17
radenf Va por buen camino
Estimado serdl :

Yo tuve un problema similar al actualizar PostgreSql desde la versión 8.3 a la versión 9.0, porque zeos no tiene soporte para esta última en su versión estable 6.6.6.
Debí reinstalar la versión 8.3 de PostgreSql y funcionó perfecto, utilizando el driver adecuado a esta versión.
Por cierto uso Delphi 2007, no Lazarus.

Saludos y ojalá pueda haberte ayudado
Responder Con Cita
  #11  
Antiguo 28-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
Hola radenf, voy a seguir tu sugerencia y ver que pasa, voy a instalar ora version de postgresql. Gracias voy a seguir haciendo pruebas y comento como va todo, saludos.
Responder Con Cita
  #12  
Antiguo 28-12-2011
serdl serdl is offline
Miembro
NULL
 
Registrado: dic 2011
Posts: 11
Poder: 0
serdl Va por buen camino
recien me instale la version 8.3 de postgre y sigue sin funcionar, al conectar me dice que no se puede encontrar las librerias dinamicas libq81 y libq.dll.

copie libq.dll al directorio de la aplicacion, agregue las variables de entorno correspondiente en el path.

no se que mas hacer
Responder Con Cita
  #13  
Antiguo 10-01-2012
Avatar de jejo1984
jejo1984 jejo1984 is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 39
Poder: 0
jejo1984 Va por buen camino
Hola que tal lo que debes hacer primero es esto:
1.-La libreria libq.dll se debe sacar de la siguiente ruta(uso W xp): C:\Archivos de programa\PostgreSQL\psqlODBC\0900\bin
2.- Copia y pega en la carpeta System32
3.- luego ejecuta nuevamente tu aplicación y veras que librerias mas te faltan y la encontraras en la misma carpeta.

Última edición por jejo1984 fecha: 10-01-2012 a las 13:33:10.
Responder Con Cita
  #14  
Antiguo 10-01-2012
Avatar de jejo1984
jejo1984 jejo1984 is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 39
Poder: 0
jejo1984 Va por buen camino
Aqui te dejo un ejemplo de codigo no utilizo zconnection:
Código Delphi [-]
procedure Tfrm_reg_tip_demo.conectabd();
var
MyIniFile : TIniFile;
BBDDhost,BBDDName : String;
password, usuario : String;
begin
MyIniFile := TIniFile.Create(ExtractFilePath(ParamStr(0))+'conexion.ini');
Try
BBDDhost:=MyIniFile.ReadString('BBDD','host','');
BBDDName:=MyIniFile.ReadString('BBDD','BD','');
Usuario :=MyIniFile.ReadString('BBDD','Usuario','');
Password:= MyIniFile.ReadString('BBDD','Password','');
(* *)
PQConnection1.HostName:=BBDDhost;
PQConnection1.DatabaseName:=BBDDName;
PQConnection1.UserName:=Usuario;
PQConnection1.Password:=Password;
Finally
MyIniFile.Free;
End;
end;
Responder Con Cita
  #15  
Antiguo 10-01-2012
Avatar de jejo1984
jejo1984 jejo1984 is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 39
Poder: 0
jejo1984 Va por buen camino
Luego acceso de esta forma:

Código Delphi [-]
procedure TFrm_lista_incidencia.Refresh_listado();
begin
  conectabd();
  PQConnection1.Transaction:=SQLTransaction1;
  SQLTransaction1.DataBase:=PQConnection1;
  SQLlist_inci.DataBase:=PQConnection1;
  SQL_mod_incidencia.DataBase:=PQConnection1;

  SQLlist_inci.Close;
  SQLlist_inci.Active:=False;
  SQLlist_inci.SQL.Clear;
  SQLlist_inci.SQL.Text:='SELECT * FROM LISTA_INCIDENCIA';
  Datasource1.DataSet:=SQLlist_inci;
  try
  SQLlist_inci.open;
  grid_lista_incidencia.RowCount:=1;
    while not SQLlist_inci.EOF do
    begin
      grid_lista_incidencia.RowCount:=grid_lista_incidencia.RowCount +1;
      grid_lista_incidencia.Cells[0,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[0].AsString;
      grid_lista_incidencia.Cells[1,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[1].AsString;
      grid_lista_incidencia.Cells[2,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[2].AsString;
      grid_lista_incidencia.Cells[3,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[3].AsString;
      grid_lista_incidencia.Cells[4,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[4].AsString;
      grid_lista_incidencia.Cells[5,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[5].AsString;
      grid_lista_incidencia.Cells[6,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[6].AsString;
      grid_lista_incidencia.Cells[7,grid_lista_incidencia.RowCount-1]:=SQLlist_inci.Fields[7].AsString;
      SQLlist_inci.Next;
    end;
    PQConnection1.Close;
    except
    on E: Exception do
      begin
      Showmessage( PChar( E.Message )+ 'Error de SQL');
      SQLTransaction1.EndTransaction;
      end;
    end;
Responder Con Cita
  #16  
Antiguo 10-01-2012
Avatar de jejo1984
jejo1984 jejo1984 is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 39
Poder: 0
jejo1984 Va por buen camino
Utilizo estos componentes:
Código Delphi [-]
PQConnection1: TPQConnection;
SQLlist_inci: TSQLQuery; 
SQLTransaction1: TSQLTransaction;  
Datasource1: TDatasource; 
grid_lista_incidencia: TStringGrid;
Responder Con Cita
  #17  
Antiguo 10-01-2012
Avatar de jejo1984
jejo1984 jejo1984 is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 39
Poder: 0
jejo1984 Va por buen camino
Si deseas saber las uses que utiliso aqui te las dejo:
Código Delphi [-]
uses
Classes, SysUtils, sqldb, db, pqconnection, FileUtil, Forms, Controls,Graphics, Dialogs, DBGrids, Buttons, StdCtrls, Grids, ExtCtrls,LclType,IniFiles;

Y aqui te dejo mi archivo .ini:
[BBDD]
host=localhost
BD=servicio118xy
Usuario=postgres
Password=admin
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
conectar postgresql usando dbexpress barrauda Conexión con bases de datos 4 16-07-2007 13:45:04
Conectar Delphi con Postgresql junior2210 Conexión con bases de datos 1 02-02-2007 15:39:26
[Lazarus] GTK+-devel en SUSE. problema instalar lazarus de esa libreria. sakuragi Lazarus, FreePascal, Kylix, etc. 3 28-09-2006 03:31:09
como conectar delphi con postgreSQL juangabriel1786 Conexión con bases de datos 1 08-05-2006 17:08:06
Ayuda, necesito conectar PostgreSQL + Interbase + SQL Server entre si con PHP Felipe Conexión con bases de datos 0 05-06-2005 19:47:39


La franja horaria es GMT +2. Ahora son las 04:29:43.


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
Copyright 1996-2007 Club Delphi