本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
SVL_MULTI_STATEMENT_VIOLATIONS
使用 SVL_MULTI_STATEMENT_VIOLATIONS 视图获取在系统上运行的违反事务块限制的所有 SQL 命令的完整记录。
当您运行限制事务块或多语句请求Amazon Redshift中的以下任意 SQL 命令时,将发生违规情况:
-
删除外部表
-
重命名外部表
-
更改外部表
-
创建表空间
-
DROP TABLESPACE
-
重建目录
-
索引目录
-
重建索引数据库
如果此视图中有任何条目,则更改相应的应用程序和 SQL 脚本。我们建议您更改应用程序代码,将这些受限制的 SQL 命令移出事务块。如果您需要更多帮助,请联系 AWS Support。
SVL_MULTI_STATEMENT_VIOLATIONS 对所有用户可见。超级用户可以查看所有行;普通用户只能看到自己的数据。有关更多信息,请参阅 Visibility of data in system tables and views。
表列
列名称 | 数据类型 | 描述 |
---|---|---|
userid | integer | 导致违规的用户的 ID。 |
database | character(32) | 用户连接到的数据库的名称。 |
cmdname | character(20) | 无法在事务块或多语句请求中运行的命令的名称。例如,CREATE DATABASE、DROP DATABASE、ALTER DATABASE、CREATE EXTERNAL TABLE、DROP EXTERNAL TABLE、RENAME EXTERNAL TABLE、ALTER EXTERNAL TABLE、CREATE LIBRARY、DROP LIBRAT、INDEXCAT、REINDEX DATABASE、VACUUM、CRUUM、CRUSTER、CREABLE、CATE、CRE、CREATE、CREATEALLATEBLE、CALLATE、CATE、CATE、CATE、CATE、CATE、CATE、CATE、CATEST 和CATE 和CATEST 和 TABLEP 和 TABLEP 和 TABLE 和 TABLE 。BLE 。。 |
xid | bigint | 与语句关联的事务 ID。 |
pid | integer | 语句的进程 ID。 |
label | character(320) | 用于运行查询的文件的名称或使用 SET QUERY_GROUP 命令定义的标签。如果查询并非基于文件或未设置 QUERY_GROUP 参数,则此字段为空。 |
starttime | timestamp | 开始执行语句的确切时间,秒的小数部分以 6 位精度表示,例如: 2009-06-12 11:29:19.131358 |
endtime | timestamp | 语句完成执行的确切时间,秒的小数部分以 6 位精度表示,例如: 2009-06-12 11:29:19.193640 |
sequence | integer | 当一个语句包含 200 多个字符时,将为该语句记录额外的行。序列 0 是第一行,1 是第二行,依此类推。 |
type | varchar(10) | SQL 语句的类型QUERY :、 DDL 或 UTILITY 。
|
text | character(200) | SQL 文本,以 200-character递增。此字段可能包含反斜杠 (\\ ) 和换行符 (\n ).) 等特殊字符。
|
示例查询
以下查询返回多个具有违规的语句。
select * from svl_multi_statement_violations order by starttime asc; userid | database | cmdname | xid | pid | label | starttime | endtime | sequence | type | text ============================================================================================================================== 1 | dev | CREATE DATABASE | 1034 | 5729 |label1 | ********* | ******* | 0 | DDL | create table c(b int); 1 | dev | CREATE DATABASE | 1034 | 5729 |label1 | ********* | ******* | 0 | UTILITY | create database b; 1 | dev | CREATE DATABASE | 1034 | 5729 |label1 | ********* | ******* | 0 | UTILITY | COMMIT ...