我在 Snowflake 中创建了两个表。
create or replace TRANSIENT TABLE TESTPARENT (
COL1 NUMBER(38,0) NOT NULL,
COL2 VARCHAR(16777216) NOT NULL,
COL3 VARCHAR(16777216) NOT NULL,
constraint UNIQ_COL3 unique (COL3)
);
create or replace TRANSIENT TABLE TESTCHILD3 (
COL_A NUMBER(38,0) NOT NULL,
COL_B NUMBER(38,0) NOT NULL,
ABCDEF VARCHAR(16777216) NOT NULL,
constraint FKEY_1 foreign key (COL_A, COL_B) references TEST_DB.PUBLIC.TESTPARENT1(COL1,COL2),
constraint FKEY_2 foreign key (ABCDEF) references TEST_DB.PUBLIC.TESTPARENT(COL3)
);
现在我想执行查询并查看 FKEY_2 FOREIGN KEY
中涉及的列的名称
在表TESTCHILD3
中,但似乎没有数据库表/ View 保存此信息。我可以找到 UNIQUE KEY & PRIMARY KEY
的列名称,但没有 FOREIGN KEYS
的列名称。
编辑
我已经尝试过 INFORMATION_SCHEMA.TABLE_CONSTRAINTS
、INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
以及所有其他系统表。没有运气。只有 DESC TABLE
为我提供了一些与 CONSTRAINTS
和 COLUMNS
相关的信息,但也缺少 FOREIGN KEY CONSTRAINTS
信息.
最佳答案
在表
关于data-warehouse - 无法在 FK 约束中找到列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60318212/