Sql Teradata锁-如何知道表是否被锁定?

Sql Teradata锁-如何知道表是否被锁定?,sql,locking,teradata,Sql,Locking,Teradata,有没有办法知道一个表是否被锁定以及当前表上有什么类型的锁?我希望通过teradata中的DBC表获得一些东西,但我找不到任何类似的参考。我有正常的用户访问权限,DBA没有帮助。谢谢。仅DBA实用程序可用于确定表上的锁类型 仅使用用户级权限,您可以执行以下操作(从): 根据大师本人(杰弗里·隆美尔): 如果桌子被锁上了,你会得到 错误7423,“对象已锁定且 NOWAIT。事务已中止。“ 我认为您必须使用FOR WRITE而不是FOR ACCESS,因为FOR ACCESS即使在表被锁定以进行写入

有没有办法知道一个表是否被锁定以及当前表上有什么类型的锁?我希望通过teradata中的DBC表获得一些东西,但我找不到任何类似的参考。我有正常的用户访问权限,DBA没有帮助。谢谢。

仅DBA实用程序可用于确定表上的锁类型

仅使用用户级权限,您可以执行以下操作(从):

根据大师本人(杰弗里·隆美尔):

如果桌子被锁上了,你会得到 错误7423,“对象已锁定且 NOWAIT。事务已中止。“


我认为您必须使用FOR WRITE而不是FOR ACCESS,因为FOR ACCESS即使在表被锁定以进行写入时也会成功。这可能会进入挑剔的领域,但如果您担心性能,您可能希望将*替换为(前1)。它将防止发生完全表检索。
Lock Table dbName.myTable for Access nowait
Select * from dbName.myTable;