我在VOLATILE TABLE
中使用下面的代码创建了teradata
CREATE VOLATILE TABLE Temp
(
ID VARCHAR(30),
has_cond INT
) ON COMMIT PRESERVE ROWS;
我想从我创建的select语句中插入记录,这是一个非常大的SQL语句,并且在继续之前肯定需要行锁定
INSERT INTO Temp
(ID ,has_cond)
SELECT * FROM....
任何人都可以告诉我如何安全地锁定行,这样我就可以将记录插入我的VOLATILE TABLE
,因为它们是生产表,我不想锁定可能发生的一些ETL
在后台
答案 0 :(得分:4)
除非您将insert
放在视图中,否则我认为您不能为select
应用行锁。
或者您切换到lock table
,但不要忘记包含所有表格...
但是在大多数生产环境中,有一个包含{1}的1-1视图的数据库,你可以使用它们(或者你可能已经检查过了解释)。