Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Averiguar la versión de un .fdb (https://www.clubdelphi.com/foros/showthread.php?t=82858)

Cañones 19-04-2013 18:40:17

Averiguar la versión de un .fdb
 
Hola a todo. Estuve buscando, poco realmente, y quiero saber que versión se DB es un archivo .fdb.
El tema es que venía trabajando con la versión 2.1 y ahora pasé a 2.5. Esto lo hago haciendo un backup y restableciendo la DB.
Esto está bien? como hago para saber que la DB ahora es 2.5?
Gracias por su tiempo y saludos a todos.

ecfisa 20-04-2013 02:19:41

Hola cañones.

Podes obtener la versión de este modo:
Código SQL [-]
SELECT RDB$GET_CONTEXT('SYSTEM','ENGINE_VERSION') AS VERSION
FROM RDB$DATABASE;

Saludos.

Cañones 20-04-2013 22:48:25

Gracias por la pronta respuesta.
Esta consulta me da el siguiente error.
Cita:

Invalid namespace name system passes to RDB$GET_CONTEXT
Saludos

ecfisa 20-04-2013 23:14:53

Hola Cañones.

Es extraño, no tendría que darte error siendo que la función RDB$GET_CONTEXT() es soportada desde la version 2.0 y comentas que estas usando las versiones 2.1 y 2.5.

La consulta la había realizado desde el IBExpert así que, por si acaso, hice la prueba desde Delphi y también funciona correcto:
Código Delphi [-]
function GetFirebirdVer(aIBQuery: TIBQuery): string;
begin
  with aIBQuery do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT RDB$GET_CONTEXT(:NAMESPACE,:VARNAME) AS VERSION');
    SQL.Add('FROM RDB$DATABASE;');
    ParamByName('NAMESPACE').AsString := 'SYSTEM';
    ParamByName('VARNAME').AsString   := 'ENGINE_VERSION';
    Open;
    Result := FieldByName('VERSION').AsString;
    Close;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage('Firebird ver.: ' + GetFirebirdVer(IBQuery1));
end;

Saludos.


La franja horaria es GMT +2. Ahora son las 07:28:22.

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