本节列出了影响 PL/Tcl 的配置参数。
pltcl.start_proc
(string
) #如果此参数设置为非空字符串,则指定在为 PL/Tcl 创建新的 Tcl 解释器时要执行的无参数 PL/Tcl 函数的名称(可能包含模式限定)。此类函数可以执行每个会话初始化,例如加载其他 Tcl 代码。当在数据库会话中首次执行 PL/Tcl 函数时,或当由于新 SQL 角色调用 PL/Tcl 函数而必须创建其他解释器时,就会创建一个新的 Tcl 解释器。
引用的函数必须用 pltcl
语言编写,并且不能标记为 SECURITY DEFINER
。(这些限制确保它在应该初始化的解释器中运行。)当前用户也必须有权调用它。
如果函数因错误而失败,它将中止导致创建新解释器的函数调用并传播到调用查询,导致当前事务或子事务中止。在 Tcl 中已经完成的任何操作都不会撤消;但是,该解释器将不再使用。如果再次使用该语言,则将在新的 Tcl 解释器中再次尝试初始化。
只有超级用户可以更改此设置。尽管可以在会话中更改此设置,但此类更改不会影响已经创建的 Tcl 解释器。
pltclu.start_proc
(string
) #此参数与 pltcl.start_proc
完全相同,只是它适用于 PL/TclU。引用的函数必须用 pltclu
语言编写。
如果您在文档中看到任何不正确的内容、与您对特定功能的体验不符或需要进一步说明,请使用 此表格 报告文档问题。