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.