Ver Mensaje Individual
  #2  
Antiguo 26-08-2025
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.669
Reputación: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Lo más recomendable en Delphi con Firebird no es usar ADO+ODBC, sino los componentes nativos IBX, que conectan directamente sin pasar por ODBC.
Así te evitas problemas con los DSN de usuario/sistema.
Ejemplo básico con TIBDatabase y TIBTransaction (los tienes en la paleta InterBase en Delphi):
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
  IBDatabase1.DatabaseName := 'localhost:C:\BaseDatos\miBD.fdb';
  IBDatabase1.Params.Clear;
  IBDatabase1.Params.Add('user_name=SYSDBA');
  IBDatabase1.Params.Add('password=masterkey');
  IBDatabase1.LoginPrompt := False;

  IBTransaction1.DefaultDatabase := IBDatabase1;

  try
    IBDatabase1.Connected := True;
    ShowMessage('Conexión correcta');
  except
    on E: Exception do
      ShowMessage('Error al conectar: ' + E.Message);
  end;
end;
Con esto ya tienes conexión directa a Firebird sin DSN, sin ODBC y sin ADO.
En resumen:
Si quieres seguir con ADO/ODBC debe crear el DSN como DSN de sistema.Si quieres algo más limpio, usar conexión nativa con IBX o con FireDAC/UniDAC (más modernos).
Responder Con Cita