2
有沒有辦法來聲明一個全局變量或常量,可以在塊的DECLARE部分和其他地方(如C#)中使用?Oracle全局常量或變量?
我有幾個腳本根據他們的操作成功在日誌表上設置不同的狀態。 這樣我們:
UPDATE LOG_TABLE SET STATUS = ''success' WHERE OBJECT_ID = :object_id
另外,我們有執行某些操作無法從Oracle做一個C#應用程序。此應用程序還根據其操作的成功設置了狀態。
由於一些狀態用於幾個腳本和C#我想只在一個地方定義它們。然後從其他地方訪問和使用它們。
有沒有一種方法,我可以宣佈類似於以後可以在PL/SQL塊中使用這樣的全局常量東西:
GLOBAL ORACLE CONSTANT=> MY_CONSTANT
DECLARE
my_update_script VARCHAR2(300) := 'UPDATE LOG_TABLE SET STATUS = '''|| MY_CONSTANT ||''' WHERE OBJECT_ID = :object_id;
而且還能夠從C#中使用它?
使用「上下文變量」。它將在所有會話中具有相同的全球價值。 – 2015-02-05 13:22:57
在包規範中定義一個常量。或者創建一個函數返回一個常量(不知道後者的效率如何)。 – collapsar 2015-02-05 18:09:22
@LalitKumarB我對Context變量不是很瞭解,但是從我正在閱讀的內容來看,如果我創建了全局應用程序上下文,它將適用於整個數據庫和所有用戶,我是否正確? – Dzyann 2015-02-05 20:31:41