Я создал две таблицы в 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
, но похоже, нет БД Table / View, которая хранит эту информацию. Я могу узнать имена столбцов для UNIQUE KEY & PRIMARY KEY
, но для FOREIGN KEYS
.
EDIT я уже пробовал INFORMATION_SCHEMA.TABLE_CONSTRAINTS
вместе с INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
и всеми остальными. системные таблицы. Не повезло. Только DESC TABLE
дает мне некоторую информацию, связанную с CONSTRAINTS
и COLUMNS
, но также отсутствует FOREIGN KEY CONSTRAINTS
информация.