在Teradata中使用脚本命令时,是否可以使用行访问锁定
我正在尝试使用Script_Command函数使用外部脚本(Linux二进制)来处理表中的数据。但是,我无法使其正常工作,以便应用行访问锁。 默认情况下,读取锁似乎用于整表。
这是一个示例 - 脚本命令并不重要。
EXPLAIN SELECT * FROM SCRIPT
( ON (SELECT * from user1.test_table)
SCRIPT_COMMAND('echo test') RETURNS('text VARCHAR(30)'));
但这
Explanation
------------------------------------------------------------------------
1) First, we lock user1.test_table in TD_MAP1 for read on a
reserved RowHash to prevent global deadlock.
2) Next, we lock user1.test_table in TD_MAP1 for read.
(...)
我尝试了以下查询:
EXPLAIN SELECT * FROM SCRIPT
( ON (LOCK ROW FOR ACCESS SELECT * from user1.test_table)
SCRIPT_COMMAND('echo test') RETURNS('text VARCHAR(30)'));
是无效的。
I'm trying to process the data in the table using an external script (Linux binary) with the SCRIPT_COMMAND function. However I cannot make it work so that row access lock is applied.
By default read lock seems to be applied for the whole table.
This is an example - the script command is not important.
EXPLAIN SELECT * FROM SCRIPT
( ON (SELECT * from user1.test_table)
SCRIPT_COMMAND('echo test') RETURNS('text VARCHAR(30)'));
This returns
Explanation
------------------------------------------------------------------------
1) First, we lock user1.test_table in TD_MAP1 for read on a
reserved RowHash to prevent global deadlock.
2) Next, we lock user1.test_table in TD_MAP1 for read.
(...)
I tried the following query:
EXPLAIN SELECT * FROM SCRIPT
( ON (LOCK ROW FOR ACCESS SELECT * from user1.test_table)
SCRIPT_COMMAND('echo test') RETURNS('text VARCHAR(30)'));
But it is invalid.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论