【发布时间】:2022-01-15 10:23:35
【问题描述】:
对于任何雪花表,我如何才能找到与其所有列关联的序列?我试图调查 INFORMATION_SCHEMA 但找不到任何线索。提前致谢!
【问题讨论】:
-
您可以捕获的一种方法是,如果您已将列的默认值定义为序列输入的值,那么您可以通过以下查询搜索 SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_DEFAULT LIKE '% .NEXTVAL';。但是如果你是通过函数或存储过程输入数据,那么它可能不起作用,如果你是通过没有存储在雪花中的代码输入数据,那么很难找到。
-
@hkandpal,你是救命稻草!
-
Hi Anand,一种粗略的方法是使用 Snowflake 提供的 QUERY_HISTORY 表函数,并在 QUERY_TEXT 列中搜索 NEXTVAL 词,并识别正在使用该序列的 SQL。 (不知道它是否会覆盖您的所有表或序列,就好像在函数捕获的数据的时间范围之外运行的查询可能不会在输出中捕获,但这将捕获所有 SQL,即使由代码不在 Snowflake 中)
标签: sql database snowflake-cloud-data-platform sequence database-schema