KEY_COLUMN_USAGE
Berlaku untuk: Databricks SQL Databricks Runtime 11.3 LTS dan di atas Unity Catalog saja
Penting
Fitur ini ada di Pratinjau Publik.
INFORMATION_SCHEMA. KEY_COLUMN_USAGE mencantumkan kolom batasan kunci utama atau asing dalam katalog.
Baris yang dikembalikan terbatas pada batasan pada tabel, tergantung pada hak istimewa pengguna.
Definisi
Relasi KEY_COLUMN_USAGE
berisi kolom berikut:
Nama | Jenis data | Dapat diubah ke null | Standard | Deskripsi |
---|---|---|---|---|
CONSTRAINT_CATALOG |
STRING |
Tidak | Ya | Katalog yang berisi batasan. |
CONSTRAINT_SCHEMA |
STRING |
Tidak | Ya | Skema yang berisi batasan. |
CONSTRAINT_NAME |
STRING |
Tidak | Ya | Nama batasan. |
TABLE_CATALOG |
STRING |
Tidak | Ya | Katalog yang berisi tabel. |
TABLE_SCHEMA |
STRING |
Tidak | Ya | Skema yang berisi tabel. |
TABLE_NAME |
STRING |
Tidak | Ya | Nama tabel tempat batasan ditentukan. |
COLUMN_NAME |
STRING |
Tidak | Ya | Nama kolom. |
ORDINAL_POSITION |
INTEGER |
Tidak | Ya | Posisi (berbasis 1) kolom di kunci. |
POSITION_IN_UNIQUE_CONSTRAINT |
INTEGER |
Ya | Ya | Untuk kunci asing, posisi (berbasis 1) kolom dalam batasan kunci unik atau primer induk, NULL jika tidak. |
Kendala
Batasan berikut berlaku untuk KEY_COLUMN_USAGE
relasi:
Kelas | Nama | Daftar Kolom | Deskripsi |
---|---|---|---|
Kunci utama | KEY_COL_USG_PK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, COLUMN_NAME |
Mengidentifikasi hubungan secara unik. |
Kunci unik | KEY_COL_USG_OP_UK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, ORDINAL_POSITION |
Mengidentifikasi hubungan secara unik. |
Kunci unik | KEY_COL_USG_PIUK_UK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME, POSITION_IN_UNIQUE_CONSTRAINT |
Mengidentifikasi hubungan secara unik. |
Kunci asing | KEY_COL_USG_COLUMNS_FK |
TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME |
Mereferensikan KOLOM. |
Kunci asing | KEY_COL_USG_TAB_CONS_FK |
CONSTRAINT_CATALOG, CONSTRAINT_SCHEMA, CONSTRAINT_NAME |
Referensi TABLE_CONSTRAINTS. |
Contoh
> SELECT constraint_name, column_name
FROM information_schema.key_column_usage
WHERE table_schema = 'information_schema'
AND table_name = 'tables';