本節列出了影響 PL/Tcl 的配置引數。
pltcl.start_proc
(string
) #此引數,如果設定為非空字串,則指定一個無引數的 PL/Tcl 函式的名稱(可能帶模式限定),該函式將在每次為 PL/Tcl 建立新的 Tcl 直譯器時執行。這樣的函式可以執行每個會話的初始化,例如載入額外的 Tcl 程式碼。當一個 PL/Tcl 函式在資料庫會話中首次執行時,或者當由於新的 SQL 角色呼叫 PL/Tcl 函式而必須建立額外的直譯器時,就會建立一個新的 Tcl 直譯器。
引用的函式必須用 pltcl
語言編寫,並且不能被標記為 SECURITY DEFINER
。(這些限制確保它在它應該初始化的直譯器中執行。)當前使用者也必須有許可權呼叫它。
如果函式因錯誤而失敗,它將中止導致建立新直譯器的函式呼叫,並將錯誤傳播到呼叫查詢,導致當前事務或子事務被中止。Tcl 中已經完成的任何操作都不會被撤銷;但是,該直譯器將不再被使用。如果再次使用該語言,將在一個新的 Tcl 直譯器中再次嘗試初始化。
只有超級使用者才能更改此設定。儘管可以在會話中更改此設定,但此類更改不會影響已建立的 Tcl 直譯器。
pltclu.start_proc
(string
) #此引數與 pltcl.start_proc
完全相同,但它適用於 PL/TclU。引用的函式必須用 pltclu
語言編寫。
如果您在文件中發現任何不正確、與您對特定功能的體驗不符或需要進一步澄清的內容,請使用 此表格 報告文件問題。