max*_*zig 5 c sql oracle binding
在Pro*C代码中,您可以通过sqlgls()
(或甚至SQLStmtGetText()
)获取最后执行的SQL语句.
这对于日志记录非常有用 - 特别是对于动态语句.
但是这些SQLLIB函数返回的SQL语句只包含绑定标记(例如:b1
,:b2
......).不包括使用的主机变量的实际值.
因此,我有以下问题:如何显示包含主机变量值的最后一个SQL语句?
否则我必须在打印返回的字符串后手动打印所有使用的变量sqlgls()
.这根本不比在不使用的情况下打印SQL语句更方便sqlgls
.
例如,而不是
INSERT INTO MYTABLE VALUES (:b1, :b2, :b3);
Run Code Online (Sandbox Code Playgroud)
我要打印:
INSERT INTO MYTABLE VALUES ("hello", "world", 12);
Run Code Online (Sandbox Code Playgroud)
(除了日志记录之外,还可以更容易地将其"复制"到SQL-shell中 - 即用于测试)