Einzelnen Beitrag anzeigen

Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#1

Firebird RDB$SET_CONTEXT im Embedded-Modus

  Alt 26. Feb 2013, 14:50
Datenbank: Firebird • Version: 2.5 • Zugriff über: Embedded
Hi,

kann es sein, dass die Funktion RDB$SET_CONTEXT im Embedded-Modus nicht funktioniert?
Ich habe mir folgende Procedure angelegt:
Code:
RECREATE PROCEDURE SYS$SET_CURRENT_USER (
 USERNAME VARCHAR(30))
AS
BEGIN
  RDB$SET_CONTEXT('USER_SESSION', 'SYS$CURRENT_USER', :USERNAME);
END
Wenn ich mittels TCP/IP auf die Datenbank zugreife, kann ich damit wunderbar einen Usernamen unabhängig vom Firebird-User definieren und später auslesen.

In der Embedded-Variante bekomme ich folgende Fehlermeldung:
Zitat:
Engine Error (code = 335544382):
ib_util init failed - UDF usage disabled.
At procedure 'SYS$SET_CURRENT_USER' line: 5, col: 3.

SQL Error (code = -901):
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
RDB$SET_CONTEXT ist ja als UDF definiert. UDFs sind dann ja lt. Fehlermeldung im Embedded-Modus deaktiviert.

Gibt es eine Möglichkeit, auch im Embedded-Modus mit Context-Variablen zu arbeiten?
  Mit Zitat antworten Zitat