Skema informasi untuk database dialek PostgreSQL

Skema informasi adalah skema bawaan yang umum untuk setiap database PostgreSQL. Anda dapat menjalankan kueri SQL terhadap tabel di information_schema untuk mengambil metadata skema untuk database.

Misalnya, kueri berikut mengambil nama semua tabel yang ditentukan pengguna dalam database:

  SELECT
    table_name
  FROM
    information_schema.tables
  WHERE
    table_schema = 'public'

Penggunaan

  • Tabel information_schema hanya tersedia melalui antarmuka SQL, misalnya:

    • executeQuery API
    • Perintah gcloud spanner databases execute-sql
    • Halaman Query database di konsol Google Cloud.

    Metode baca tunggal lainnya tidak mendukung information_schema.

Perbedaan dengan information_schema untuk PostgreSQL

Tabel di information_schema untuk database dialek PostgreSQL menyertakan kolom dari tabel di information_schema untuk PostgreSQL open source dan dalam beberapa kasus juga menyertakan kolom dari Spanner. Dalam tabel ini, kolom PostgreSQL open source muncul terlebih dahulu dan dalam urutan yang sama seperti pada database PostgreSQL open source, dan setiap kolom yang berbeda untuk Spanner akan ditambahkan setelahnya. Kueri yang ditulis untuk information_schema versi PostgreSQL open source akan berfungsi tanpa modifikasi saat menggunakan database dialek PostgreSQL di Google Cloud CLI.

Perbedaan penting lainnya pada information_schema untuk database dialek PostgreSQL adalah:

  • Beberapa kolom tabel untuk PostgreSQL open source tersedia, tetapi tidak diisi di database dialek PostgreSQL.
  • Database dialek PostgreSQL menggunakan public untuk nama skema default.
  • Nama batasan yang dihasilkan secara otomatis menggunakan format yang berbeda dari database PostgreSQL open source.
  • Tabel yang terkait dengan fitur PostgreSQL open source yang tidak didukung dalam database dialek PostgreSQL tidak tersedia.
  • Beberapa tabel yang tersedia dengan Spanner, tetapi tidak tersedia dengan PostgreSQL open source, seperti database_options, index_columns, indexes, dan spanner_statistics.

Pemfilteran baris dalam information_schema tabel dan tampilan

Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader (atau kepada anggota peran tersebut) dapat melihat semua baris di semua tabel dan tampilan information_schema. Untuk akun utama lainnya, Spanner memfilter baris berdasarkan peran database saat ini. Deskripsi tabel dan tampilan di bagian berikut menunjukkan cara Spanner memfilter baris untuk setiap tabel dan tampilan.

Tabel di information_schema untuk database dialek PostgreSQL

Tabel dan tampilan di information_schema kompatibel dengan tabel dan tampilan di information_schema untuk PostgreSQL open source.

Bagian berikut menjelaskan tabel dan tampilan di information_schema untuk database dialek PostgreSQL.

applicable_roles

Tampilan yang difilter baris ini mencantumkan semua keanggotaan peran yang secara eksplisit diberikan ke semua peran database. Principal yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat keanggotaan peran yang diberikan ke peran database saat ini atau peran yang menjadi anggota dari peran database saat ini.

Karena semua peran database adalah anggota dari peran publik, hasilnya akan menghilangkan catatan untuk keanggotaan implisit dalam peran publik.

Nama kolom Type Deskripsi
grantee character varying Nama peran database yang akan diberi keanggotaan.
role_name character varying Nama peran database induk tempat keanggotaan ini diberikan.
is_grantable character varying Tidak digunakan. Selalu NO.

change_stream_columns

Tampilan yang difilter baris ini berisi informasi tentang kolom tabel dan aliran perubahan yang memantaunya. Setiap baris menjelaskan satu aliran perubahan dan satu kolom. Jika aliran perubahan melacak seluruh tabel, kolom dalam tabel tersebut tidak akan ditampilkan dalam tampilan ini.

Principal yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat baris untuk aliran data perubahan yang diberi hak istimewa SELECT ke peran database saat ini, ke peran dengan peran database saat ini menjadi anggota, atau ke public.

Nama kolom Jenis Deskripsi
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema aliran data perubahan. Untuk database dialek PostgreSQL, defaultnya adalah public.
change_stream_name character varying Nama aliran data perubahan.
table_catalog character varying Nama database.
table_schema character varying Nama skema tabel. Untuk database dialek PostgreSQL, defaultnya adalah public.
table_name character varying Nama tabel yang dirujuk oleh baris ini.
column_name character varying Nama kolom yang dirujuk baris ini.

change_stream_options

Tampilan yang difilter baris ini berisi opsi konfigurasi untuk aliran perubahan. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat opsi untuk aliran perubahan dengan hak istimewa SELECT yang diberikan ke peran database saat ini, ke peran dengan peran database saat ini menjadi anggota, atau ke public.

Nama kolom Jenis Deskripsi
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema aliran data perubahan. Untuk database dialek PostgreSQL, defaultnya adalah public.
change_stream_name character varying Nama aliran data perubahan.
option_name character varying Nama opsi aliran data ubah.
option_type character varying Jenis data opsi aliran data ubah.
option_value character varying Nilai opsi aliran data ubah.

change_stream_privileges

Tampilan yang difilter baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua aliran data perubahan ke peran database apa pun, termasuk public. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan di aliran perubahan ke peran database saat ini, ke peran dengan anggota yang memiliki peran database saat ini, atau ke public.

Nama kolom Type Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran database yang diberi hak istimewa ini.
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema yang berisi aliran data perubahan. Defaultnya adalah public untuk database dialek PostgreSQL.
change_stream_name character varying Nama aliran data perubahan.
privilege_type character varying Jenis hak istimewa (khusus SELECT).
is_grantable character varying Tidak digunakan. Selalu NO.

change_stream_tables

Tampilan yang difilter baris ini berisi informasi tentang tabel dan aliran perubahan yang memantaunya. Setiap baris mendeskripsikan satu tabel dan satu aliran perubahan. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat baris untuk aliran perubahan yang diberi hak istimewa SELECT ke peran database saat ini, ke peran dengan peran database saat ini menjadi anggota, atau ke public.

Data dalam change_stream_tables tidak menyertakan hubungan implisit antara tabel dan aliran perubahan yang melacak seluruh database.

Nama kolom Jenis Deskripsi
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema aliran data perubahan. Untuk database dialek PostgreSQL, defaultnya adalah public.
change_stream_name character varying Nama aliran data perubahan yang dirujuk baris ini.
table_catalog character varying Nama database.
table_schema character varying Nama skema tabel. Untuk database dialek PostgreSQL, defaultnya adalah public.
table_name character varying Nama tabel yang dirujuk oleh baris ini.
all_columns character varying YES jika aliran perubahan baris ini melacak keseluruhan tabel yang dirujuk baris ini. Jika tidak, NO. Sesuai dengan standar SQL, string adalah YES atau NO, bukan nilai Boolean.

change_streams

Tampilan yang difilter baris ini mencantumkan semua aliran perubahan database, dan mencatat mana yang melacak seluruh database versus tabel atau kolom tertentu. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat perubahan aliran yang diberi hak istimewa kontrol akses terperinci SELECT ke peran database saat ini, ke peran dengan peran database saat ini menjadi anggota, atau ke public.

Nama kolom Jenis Deskripsi
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema aliran data perubahan ini. Untuk database dialek PostgreSQL, defaultnya adalah public.
change_stream_name character varying Nama aliran data perubahan.
all character varying YES jika aliran data perubahan ini melacak seluruh database. NO jika aliran perubahan ini melacak tabel atau kolom tertentu. Sesuai dengan standar SQL, string dapat berupa YES atau NO, bukan nilai Boolean.

check_constraints

Tampilan check_constraints berisi satu baris untuk setiap batasan pemeriksaan yang ditentukan oleh kata kunci CHECK atau NOT NULL.

Nama kolom Jenis Deskripsi
constraint_catalog character varying Nama database.
constraint_schema character varying Nama skema batasan. Defaultnya adalah public untuk database dialek PostgreSQL.
constraint_name character varying Nama batasan. Jika nama batasan tidak ditentukan secara eksplisit dalam skema, nama yang dibuat secara otomatis akan digunakan.
check_clause character varying Ekspresi batasan pemeriksaan.
spanner_state character varying Status batasan pemeriksaan saat ini. Kemungkinan status adalah sebagai berikut:
  • VALIDATING: Database dialek PostgreSQL memvalidasi data yang ada untuk perintah ALTER CONSTRAINT atau ADD CONSTRAINT.
  • COMMITTED: Tidak ada perubahan skema aktif untuk batasan ini.

column_column_usage

Tampilan ini mencantumkan semua kolom yang dihasilkan, yang bergantung pada kolom dasar lain dalam tabel yang sama.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel. Namanya adalah public untuk skema default dan tidak kosong untuk skema lain (misalnya information_schema itu sendiri). Kolom ini tidak pernah nol.
table_name character varying Nama tabel yang berisi kolom yang dihasilkan.
column_name character varying Nama kolom dasar yang diandalkan oleh kolom yang dibuat.
dependent_column character varying Nama kolom yang dihasilkan.

column_options

Tampilan ini mencantumkan semua opsi yang ditentukan untuk kolom tabel yang direferensikan dari batasan kunci asing. Tampilan hanya berisi kolom dalam tabel referensi yang dapat diakses oleh pengguna saat ini (dengan menjadi pemilik atau hak istimewa).

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel asing. Namanya adalah public untuk skema default dan tidak kosong untuk skema lain (misalnya information_schema itu sendiri). Kolom ini tidak pernah null.
table_name character varying Nama tabel asing.
column_name character varying Nama kolom.
option_name character varying ID SQL yang secara unik mengidentifikasi opsi. ID ini adalah kunci dari klausa OPTIONS di DDL.
option_value character varying Literal SQL yang menjelaskan nilai opsi ini. Nilai kolom ini dapat diuraikan sebagai bagian dari kueri.
option_type character varying Nama jenis data yang merupakan jenis nilai opsi ini.

column_privileges

Tampilan yang difilter baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua kolom ke peran database apa pun, termasuk public. Principal yang memiliki izin tingkat database IAM dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan di kolom untuk peran database saat ini, ke peran yang perannya merupakan anggota database saat ini, atau ke public.

Tampilan ini mencakup hak istimewa SELECT, INSERT, dan UPDATE yang diwarisi oleh kolom dari tabel atau tampilan yang berisi kolom tersebut.

Nama kolom Type Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran database yang diberi hak istimewa ini.
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel atau tampilan. Defaultnya adalah public untuk database dialek PostgreSQL.
table_name character varying Nama tabel atau tampilan yang berisi kolom.
column_name character varying Nama kolom.
privilege_type character varying Jenis hak istimewa (SELECT, INSERT, atau UPDATE).
is_grantable character varying Tidak digunakan. Selalu NO.

columns

Tampilan yang difilter baris ini memberikan informasi tentang semua kolom tabel dan kolom tampilan dalam database. Principal yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat kolom yang memiliki hak istimewa kontrol akses terperinci yang diberikan pada akun utama tersebut (atau hak istimewa SELECT, INSERT, atau UPDATE yang diberikan pada tabel yang memuatnya) untuk peran database saat ini, peran yang merupakan anggota dari peran database saat ini, atau ke public.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel. Namanya adalah public untuk skema default dan tidak kosong untuk skema lain (misalnya information_schema itu sendiri). Kolom ini tidak pernah null.
table_name character varying Nama tabel
column_name character varying Nama kolom
ordinal_position BIGINT Posisi ordinal kolom dalam tabel, dimulai dengan nilai 1
column_default character varying Representasi string dari ekspresi PostgreSQL open source dari nilai default kolom, misalnya, '9'::bigint.
is_nullable character varying String yang menunjukkan apakah kolom nullable. Sesuai dengan standar SQL, string dapat berupa YES atau NO, bukan nilai Boolean.
data_type character varying Jenis data kolom. Nilainya adalah salah satu dari berikut ini:
  • Untuk jenis bawaan, nama jenis data.
  • Untuk array, nilai ARRAY.
character_maximum_length BIGINT Panjang maksimum yang dinyatakan untuk jenis data string karakter dan bit. Jika panjang maksimum tidak ditentukan, maka nilainya adalah NULL. Jika jenis data kolom bukan string karakter atau bit, maka nilainya adalah NULL.
character_octet_length BIGINT Tidak digunakan. Nilainya selalu NULL.
numeric_precision BIGINT Presisi jenis data numerik kolom saat ini. Untuk double precision, nilainya adalah 53. Untuk bigint, nilainya adalah 64. Untuk semua jenis data lainnya, nilainya adalah NULL.
numeric_precision_radix BIGINT Basis (unit) presisi untuk jenis numerik. Saat ini, hanya dua nilai yang didukung:
  • 2 untuk double precision float8, dan bigint
  • 10 untuk numeric
Untuk semua jenis data lainnya, nilainya adalah NULL.
numeric_scale BIGINT Berisi skala jenis kolom numerik, yang merupakan jumlah unit dasar presisi setelah titik radix. Untuk bigint, nilainya adalah 0. Untuk semua jenis data lainnya, nilainya adalah NULL.
datetime_precision BIGINT Tidak digunakan. Nilainya selalu NULL.
interval_type character varying Tidak digunakan. Nilainya selalu NULL.
interval_precision BIGINT Tidak digunakan. Nilainya selalu NULL.
character_set_catalog character varying Tidak digunakan. Nilainya selalu NULL.
character_set_schema character varying Tidak digunakan. Nilainya selalu NULL.
character_set_name character varying Tidak digunakan. Nilainya selalu NULL.
collation_catalog character varying Tidak digunakan. Nilainya selalu NULL.
collation_schema character varying Tidak digunakan. Nilainya selalu NULL.
collation_name character varying Tidak digunakan. Nilainya selalu NULL.
domain_catalog character varying Tidak digunakan. Nilainya selalu NULL.
domain_schema character varying Tidak digunakan. Nilainya selalu NULL.
domain_name character varying Tidak digunakan. Nilainya selalu NULL.
udt_catalog character varying Tidak digunakan. Nilainya selalu NULL.
udt_schema character varying Tidak digunakan. Nilainya selalu NULL.
udt_name character varying Tidak digunakan. Nilainya selalu NULL.
scope_catalog character varying Tidak digunakan. Nilainya selalu NULL.
scope_schema character varying Tidak digunakan. Nilainya selalu NULL.
scope_name character varying Tidak digunakan. Nilainya selalu NULL.
maximum_cardinality BIGINT Tidak digunakan. Nilainya selalu NULL.
dtd_identifier character varying Tidak digunakan. Nilainya selalu NULL.
is_self_referencing character varying Tidak digunakan. Nilainya selalu NULL.
is_identity character varying Tidak digunakan. Nilainya selalu NULL.
identity_generation character varying Tidak digunakan. Nilainya selalu NULL.
identity_start character varying Tidak digunakan. Nilainya selalu NULL.
identity_increment character varying Tidak digunakan. Nilainya selalu NULL.
identity_maximum character varying Tidak digunakan. Nilainya selalu NULL.
identity_minimum character varying Tidak digunakan. Nilainya selalu NULL.
identity_cycle character varying Tidak digunakan. Nilainya selalu NULL.
is_generated character varying String yang menunjukkan apakah kolom dihasilkan. String ini adalah ALWAYS untuk kolom yang dihasilkan atau NEVER untuk kolom yang tidak dihasilkan.
generation_expression character varying String yang mewakili ekspresi SQL dari kolom yang dihasilkan, atau NULL jika kolom tersebut bukan kolom yang dihasilkan.
is_updatable character varying Tidak digunakan. Nilainya selalu NULL.
spanner_type character varying String yang berisi jenis kolom yang kompatibel dengan DDL.
is_stored character varying String yang menunjukkan apakah kolom yang dihasilkan telah disimpan. String ini selalu YES atau NO untuk kolom yang dihasilkan, dan NULL untuk kolom yang tidak dihasilkan.
spanner_state character varying Status kolom saat ini. Kolom hasil penyimpanan baru yang ditambahkan ke tabel yang sudah ada mungkin melalui beberapa status yang dapat diamati pengguna sebelum dapat digunakan sepenuhnya. Kemungkinan nilainya adalah:
  • NO_WRITE: Tidak ada baca atau tulis yang diizinkan ke kolom. Kolom yang dihasilkan dan disimpan dalam status ini tidak menyebabkan efek klien apa pun.
  • WRITE_ONLY: Kolom sedang diisi ulang. Tidak ada pembacaan yang diizinkan.
  • COMMITTED: Kolom dapat digunakan sepenuhnya.
  • NULL: Digunakan untuk kolom dalam skema sistem.

constraint_column_usage

Tampilan ini berisi satu baris tentang setiap kolom yang digunakan oleh batasan.

  • Untuk batasan PRIMARY KEY dan CHECK yang ditentukan oleh kata kunci NOT NULL, tampilan akan berisi kolom-kolom tersebut.
  • Untuk batasan CHECK yang dibuat dengan kata kunci CHECK, tampilan menyertakan kolom yang digunakan oleh ekspresi batasan pemeriksaan.
  • Untuk batasan kunci asing, tampilan berisi kolom dari tabel yang direferensikan.
  • Untuk batasan UNIQUE, tampilan berisi kolom dari KEY_COLUMN_USAGE.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel yang berisi kolom yang digunakan oleh batasan.
table_name character varying Nama tabel yang berisi kolom yang digunakan oleh batasan.
column_name character varying Nama kolom yang digunakan oleh batasan.
constraint_catalog character varying Nama database.
constraint_schema character varying Nama skema batasan.
constraint_name character varying Nama batasan.

constraint_table_usage

Tampilan ini berisi satu baris untuk setiap tabel yang digunakan oleh batasan. Untuk batasan FOREIGN KEY, informasi tabel adalah untuk tabel dalam klausa REFERENCES. Untuk batasan kunci unik atau utama, tampilan ini hanya mengidentifikasi tabel tempat batasan tersebut berada. Batasan pemeriksaan dan batasan not-null tidak disertakan dalam tampilan ini.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema tabel yang dibatasi.
table_name character varying Nama tabel yang digunakan oleh beberapa batasan.
constraint_catalog character varying Nama database.
constraint_schema character varying Nama skema yang berisi batasan.
constraint_name character varying Nama batasan.

database_options

Tabel ini mencantumkan opsi yang ditetapkan pada database.

Nama kolom Jenis Deskripsi
catalog_name character varying Nama database.
schema_name character varying Nama skema. Nilai defaultnya adalah public untuk database dialek PostgreSQL.
option_name character varying Nama opsi database. Ini adalah nilai key dalam klausa OPTIONS di DDL.
option_type character varying Jenis data dari opsi database.
option_value character varying Nilai opsi database.

enabled_roles

Tampilan yang difilter baris ini mencantumkan peran database yang ditentukan. Principal yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua peran database. Semua akun utama lainnya hanya dapat melihat peran database yang aksesnya telah diberikan kepadanya, baik secara langsung maupun melalui pewarisan. Semua peran sistem kecuali public juga muncul dalam tampilan ini.

Nama kolom Type Deskripsi
role_name character varying Nama peran.
spanner_is_system character varying YES jika peran tersebut adalah peran sistem. Jika tidak, NO.

index_columns

Tampilan ini mencantumkan kolom pada indeks.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi indeks. Nilai defaultnya adalah public.
table_name character varying Nama tabel yang terkait dengan indeks.
index_name character varying Nama indeks. Tabel yang memiliki spesifikasi PRIMARY KEY memiliki entri indeks pseudo yang dibuat dengan nama PRIMARY_KEY.
index_type character varying Jenis indeks. Nilai yang mungkin adalah PRIMARY_KEY, LOCAL, atau GLOBAL.
column_name character varying Nama kolom.
ordinal_position BIGINT Posisi ordinal kolom dalam indeks (atau kunci utama), dimulai dengan nilai 1. Nilai ini adalah NULL untuk kolom non-kunci (misalnya, kolom yang ditentukan dalam klausa INCLUDE dari indeks).
column_ordering character varying Tata urutan kolom. Nilainya adalah ASC atau DESC untuk kolom kunci, dan NULL untuk kolom non-kunci (misalnya, kolom yang ditentukan dalam klausa STORING dari indeks).
is_nullable character varying String yang menunjukkan apakah kolom nullable. Sesuai dengan standar SQL, string dapat berupa YES atau NO, bukan nilai Boolean.
spanner_type character varying String yang menyimpan jenis kolom yang kompatibel dengan DDL.

indexes

Tampilan ini mencantumkan indeks dalam skema.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema. Nilai defaultnya adalah public.
table_name character varying Nama tabel.
index_name character varying Nama indeks. Tabel yang dibuat dengan klausa PRIMARY KEY memiliki entri indeks pseudo yang dibuat dengan nama PRIMARY_KEY, yang memungkinkan kolom kunci utama diidentifikasi.
index_type character varying Jenis indeks. Nilainya mencakup PRIMARY_KEY, LOCAL, atau GLOBAL.
parent_table_name character varying Indeks sekunder dapat disisipi dalam tabel induk, seperti yang dibahas dalam Membuat indeks sekunder. Kolom ini menyimpan nama tabel induk tersebut, atau string kosong jika indeks tidak disisipi.
is_unique character varying Apakah kunci indeks harus unik. Sesuai dengan standar SQL, string adalah YES atau NO, bukan nilai Boolean.
is_null_filtered character varying Apakah indeks menyertakan entri dengan nilai NULL. Sesuai dengan standar SQL, string dapat berupa YES atau NO, bukan nilai Boolean.
index_state character varying Status indeks saat ini. Nilai yang mungkin dan status yang diwakilinya adalah:
  • NULL: jenis indeksnya adalah PRIMARY_KEY
  • PREPARE: membuat tabel kosong untuk indeks baru
  • WRITE_ONLY: mengisi ulang data untuk indeks baru
  • WRITE_ONLY_CLEANUP: membersihkan indeks baru
  • WRITE_ONLY_VALIDATE_UNIQUE: memeriksa keunikan data dalam indeks baru
  • READ_WRITE: operasi indeks normal
spanner_is_managed character varying Apakah indeks dikelola oleh Spanner. Misalnya, indeks pendukung sekunder untuk kunci asing dikelola oleh Spanner. String dapat berupa YES atau NO, bukan nilai Boolean, sesuai dengan standar SQL.

information_schema_catalog_name

Tabel ini berisi satu baris dan satu kolom yang berisi nama {i>database<i}.

Nama kolom Jenis Deskripsi
catalog_name character varying Nama database.

key_column_usage

Tampilan ini mengidentifikasi semua kolom dalam database saat ini yang direferensikan oleh batasan unik, kunci utama, atau kunci asing. Untuk mengetahui informasi tentang kolom batasan CHECK, lihat tampilan check_constraints.

Nama kolom Jenis Deskripsi
constraint_catalog character varying Nama database.
constraint_schema character varying Nama skema batasan. Nilai defaultnya adalah public.
constraint_name character varying Nama batasan.
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel yang berisi kolom yang dibatasi. Nilai defaultnya adalah public.
table_name character varying Nama tabel yang berisi kolom yang dibatasi oleh batasan ini.
column_name character varying Nama kolom yang dibatasi.
ordinal_position BIGINT Posisi ordinal kolom dalam kunci batasan, dimulai dengan nilai 1.
position_in_unique_constraint BIGINT Untuk FOREIGN KEY, posisi ordinal kolom dalam batasan unik, dimulai dengan nilai 1. Kolom ini memiliki nilai NULL untuk jenis batasan lainnya.

parameters

Tampilan yang difilter baris ini mendefinisikan argumen untuk setiap fungsi baca aliran perubahan. Setiap baris menjelaskan satu argumen untuk satu fungsi pembacaan aliran perubahan.

Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat parameter untuk fungsi pembacaan aliran perubahan yang memberikan hak istimewa kontrol akses terperinci EXECUTE ke peran database saat ini, ke peran dengan peran database saat ini sebagai anggota, atau ke public.

Nama kolom Jenis Deskripsi
specific_catalog character varying Nama database.
specific_schema character varying Nama skema rutinitas. Untuk database dialek PostgreSQL, defaultnya adalah public.
specific_name character varying Nama rutinitas. Secara unik mengidentifikasi rutinitas meskipun namanya kelebihan beban.
ordinal_position bigint Posisi ordinal parameter dalam daftar argumen rutinitas, dimulai dengan nilai 1.
parameter_mode character varying Tidak digunakan. Selalu NULL.
is_result character varying Tidak digunakan. Selalu NULL.
as_locator character varying Tidak digunakan. Selalu NULL.
parameter_name character varying Nama parameter.
data_type character varying Jenis data parameter. Nilainya adalah salah satu dari berikut:
  • Untuk jenis bawaan, nama jenis data.
  • Untuk array, nilai ARRAY.
character_maximum_length bigint Tidak digunakan. Selalu NULL.
character_octet_length bigint Tidak digunakan. Nilainya selalu NULL.
character_set_catalog character varying Tidak digunakan. Nilainya selalu NULL.
character_set_schema character varying Tidak digunakan. Nilainya selalu NULL.
character_set_name character varying Tidak digunakan. Nilainya selalu NULL.
collation_catalog character varying Tidak digunakan. Nilainya selalu NULL.
collation_schema character varying Tidak digunakan. Nilainya selalu NULL.
collation_name character varying Tidak digunakan. Nilainya selalu NULL.
numeric_precision bigint Tidak digunakan. Nilainya selalu NULL.
numeric_precision_radix bigint Tidak digunakan. Nilainya selalu NULL.
numeric_scale bigint Tidak digunakan. Nilainya selalu NULL.
datetime_precision bigint Tidak digunakan. Nilainya selalu NULL.
interval_type character varying Tidak digunakan. Nilainya selalu NULL.
interval_precision bigint Tidak digunakan. Nilainya selalu NULL.
udt_catalog character varying Tidak digunakan. Nilainya selalu NULL.
udt_schema character varying Tidak digunakan. Nilainya selalu NULL.
udt_name character varying Tidak digunakan. Nilainya selalu NULL.
scope_catalog character varying Tidak digunakan. Nilainya selalu NULL.
scope_schema character varying Tidak digunakan. Nilainya selalu NULL.
scope_name character varying Tidak digunakan. Nilainya selalu NULL.
maximum_cardinality bigint Tidak digunakan. Nilainya selalu NULL.
dtd_identifier character varying Tidak digunakan. Nilainya selalu NULL.
parameter_default character varying Tidak digunakan. Nilainya selalu NULL.

referential_constraints

Tampilan ini berisi satu baris tentang setiap batasan FOREIGN KEY. Anda hanya dapat melihat batasan-batasan yang Anda miliki akses tulisnya ke tabel referensi. Tampilan ini juga mengidentifikasi batasan PRIMARY KEY dan UNIQUE pada tabel direferensikan yang digunakan kunci asing untuk penerapan batasan dan tindakan referensial.

Nama kolom Jenis Deskripsi
constraint_catalog character varying Nama database.
constraint_schema character varying Nama skema yang berisi batasan kunci asing. Nilai defaultnya adalah public.
constraint_name character varying Nama batasan kunci asing.
unique_constraint_catalog character varying Nama database.
unique_constraint_schema character varying Nama skema yang berisi batasan kunci unik atau utama yang dirujuk oleh batasan kunci asing.
unique_constraint_name character varying Nama batasan kunci unik atau utama yang dirujuk oleh batasan kunci asing.
match_option character varying Metode pencocokan yang digunakan oleh batasan kunci asing. Nilainya selalu NONE.
update_rule character varying Aturan update batasan kunci asing. Nilai ini selalu NO ACTION.
delete_rule character varying Aturan hapus batasan kunci asing. Nilainya adalah CASCADE atau NO ACTION.
spanner_state character varying Status kunci asing saat ini. Spanner tidak akan mulai menerapkan batasan tersebut hingga indeks pendukung kunci asing dibuat dan diisi ulang. Setelah indeks siap, Spanner mulai menerapkan batasan untuk transaksi baru saat memvalidasi data yang ada. Nilai yang mungkin dan status yang diwakilinya adalah:
  • BACKFILLING_INDEXES: Indeks sedang diisi ulang.
  • VALIDATING_DATA: Data yang ada dan penulisan baru sedang divalidasi.
  • WAITING_FOR_COMMIT: Operasi massal kunci asing telah berhasil diselesaikan, atau tidak ada yang diperlukan, tetapi kunci asing masih menunggu keputusan.
  • COMMITTED: Perubahan skema telah di-commit.

role_change_stream_grants

Tampilan yang difilter baris ini mencantumkan hak istimewa SELECT yang diberikan pada semua aliran perubahan ke peran database apa pun, termasuk public. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan di aliran perubahan ke peran database saat ini dan ke peran yang anggotanya dimiliki oleh peran database saat ini, tidak termasuk public.

Nama kolom Type Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran database yang diberi hak istimewa ini.
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema yang berisi aliran data perubahan. Defaultnya adalah public untuk database dialek PostgreSQL.
change_stream_name character varying Nama aliran data perubahan.
privilege_type character varying Jenis hak istimewa (khusus SELECT).
is_grantable character varying Tidak digunakan. Selalu NO.

role_column_grants

Tampilan yang difilter baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua kolom ke peran database apa pun, termasuk public. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan di kolom ke peran database saat ini dan ke peran yang merupakan anggota dari peran database saat ini, tidak termasuk public.

Tampilan ini mencakup hak istimewa SELECT, INSERT, dan UPDATE yang diwarisi oleh kolom dari tabel atau tampilan yang berisi kolom tersebut.

Nama kolom Type Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran database yang diberi hak istimewa ini.
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel atau tampilan. Defaultnya adalah public untuk database dialek PostgreSQL.
table_name character varying Nama tabel atau tampilan yang berisi kolom.
column_name character varying Nama kolom.
privilege_type character varying Jenis hak istimewa (SELECT, INSERT, atau UPDATE).
is_grantable character varying Tidak digunakan. Selalu NO.

role_routine_grants

Tampilan yang difilter baris ini mencantumkan hak istimewa EXECUTE yang diberikan pada semua fungsi baca aliran perubahan ke peran database apa pun, termasuk public. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan pada fungsi baca aliran perubahan ke peran database saat ini dan ke peran yang merupakan anggota dari peran database saat ini, tidak termasuk public.

Nama kolom Jenis Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran yang diberi hak istimewa.
specific_catalog character varying Nama database.
specific_schema character varying Nama skema rutinitas. Untuk database dialek PostgreSQL, defaultnya adalah public.
specific_name character varying Nama rutinitas. Secara unik mengidentifikasi rutinitas meskipun namanya kelebihan beban.
routine_catalog character varying Nama database.
routine_schema character varying Nama skema rutinitas. Defaultnya adalah public untuk database dialek PostgreSQL.
routine_name character varying Nama rutinitas. (Mungkin akan diduplikasi jika terjadi overload.)
privilege_type character varying Jenis hak istimewa yang diberikan. Selalu EXECUTE.
is_grantable character varying Tidak digunakan. Selalu NO.

role_table_grants

Tampilan yang difilter baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua tabel dan tampilan untuk semua peran database, termasuk public. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan pada tabel dan tampilan untuk peran database saat ini serta peran yang merupakan anggota dari peran database saat ini, tidak termasuk public.

Nama kolom Type Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran database yang diberi hak istimewa ini.
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel atau tampilan. Defaultnya adalah public untuk database dialek PostgreSQL.
table_name character varying Nama tabel atau tampilan.
privilege_type character varying Jenis hak istimewa (SELECT, INSERT, UPDATE, atau DELETE).
is_grantable character varying Tidak digunakan. Selalu NO.
with_hierarchy character varying Tidak digunakan. Selalu NULL.

routine_options

Tampilan yang difilter baris ini berisi satu baris untuk setiap opsi bagi setiap fungsi pembacaan aliran perubahan yang ditentukan.

Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat opsi untuk fungsi pembacaan aliran perubahan di mana hak istimewa kontrol akses terperinci EXECUTE diberikan ke peran database saat ini, ke peran dengan peran database saat ini sebagai anggota, atau ke public.

Nama kolom Jenis Deskripsi
specific_catalog character varying Nama database.
specific_schema character varying Nama skema rutinitas. Defaultnya adalah public untuk database dialek PostgreSQL.
specific_name character varying Nama rutinitas. Secara unik mengidentifikasi rutinitas meskipun namanya kelebihan beban.
option_name character varying Nama opsi.
option_type character varying Jenis data opsi. Nilainya adalah salah satu dari yang berikut:
  • Untuk jenis bawaan, nama jenis data.
  • Untuk array, nilai ARRAY.
option_value character varying Nilai opsi.

routine_privileges

Tampilan yang difilter baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua fungsi baca aliran data perubahan ke peran database apa pun, termasuk public. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan pada fungsi baca di aliran perubahan ke peran database saat ini, ke peran dengan peran database saat ini sebagai anggota, atau ke public.

Nama kolom Jenis Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran yang diberi hak istimewa.
specific_catalog character varying Nama database.
specific_schema character varying Nama skema rutinitas. Untuk database dialek PostgreSQL, defaultnya adalah public.
specific_name character varying Nama rutinitas. Secara unik mengidentifikasi rutinitas meskipun namanya kelebihan beban.
routine_catalog character varying Nama database.
routine_schema character varying Nama skema rutinitas. Defaultnya adalah public.
routine_name character varying Nama rutinitas. (Mungkin akan diduplikasi jika kelebihan beban.)
privilege_type character varying Jenis hak istimewa yang diberikan.
is_grantable character varying Tidak digunakan. Selalu NO.

routines

Tampilan yang difilter baris ini mencantumkan semua fungsi pembacaan aliran perubahan database. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat fungsi baca aliran data yang hak istimewa kontrol akses terperinci EXECUTE diberikan ke peran database saat ini, ke peran yang merupakan anggota dari peran database saat ini, atau ke public.

Nama kolom Jenis Deskripsi
specific_catalog character varying Nama database.
specific_schema character varying Nama skema rutinitas. Defaultnya adalah public untuk database dialek PostgreSQL.
specific_name character varying Nama rutinitas. Secara unik mengidentifikasi rutinitas meskipun namanya kelebihan beban.
routine_catalog character varying Nama database.
routine_schema character varying Nama skema rutinitas.
routine_name character varying Nama rutinitas. (Mungkin akan diduplikasi jika terjadi overload.)
routine_type character varying Jenis rutinitas (FUNCTION atau PROCEDURE). Selalu FUNCTION
module_catalog character varying Tidak digunakan. Nilainya selalu NULL.
module_schema character varying Tidak digunakan. Nilainya selalu NULL.
module_name character varying Tidak digunakan. Nilainya selalu NULL.
udt_catalog character varying Tidak digunakan. Nilainya selalu NULL.
udt_schema character varying Tidak digunakan. Nilainya selalu NULL.
udt_name character varying Tidak digunakan. Nilainya selalu NULL.
data_type character varying Jenis nilai yang ditampilkan dari rutinitas. Nilainya adalah salah satu dari berikut:
  • Untuk jenis bawaan, nama jenis data.
  • Untuk array, nilai ARRAY.
character_maximum_length bigint Tidak digunakan. Nilainya selalu NULL.
character_octet_length bigint Tidak digunakan. Nilainya selalu NULL.
character_set_catalog character varying Tidak digunakan. Nilainya selalu NULL.
character_set_schema character varying Tidak digunakan. Nilainya selalu NULL.
character_set_name character varying Tidak digunakan. Nilainya selalu NULL.
collation_catalog character varying Tidak digunakan. Nilainya selalu NULL.
collation_schema character varying Tidak digunakan. Nilainya selalu NULL.
collation_name character varying Tidak digunakan. Nilainya selalu NULL.
numeric_precision/td> bigint Tidak digunakan. Nilainya selalu NULL.
numeric_precision_radix bigint Tidak digunakan. Nilainya selalu NULL.
numeric_scale bigint Tidak digunakan. Nilainya selalu NULL.
datetime_precision bigint Tidak digunakan. Nilainya selalu NULL.
interval_type character varying Tidak digunakan. Nilainya selalu NULL.
interval_precision bigint Tidak digunakan. Nilainya selalu NULL.
type_udt_catalog character varying Tidak digunakan. Nilainya selalu NULL.
type_udt_schema character varying Tidak digunakan. Nilainya selalu NULL.
type_udt_name character varying Tidak digunakan. Nilainya selalu NULL.
scope_catalog character varying Tidak digunakan. Nilainya selalu NULL.
scope_schema character varying Tidak digunakan. Nilainya selalu NULL.
scope_name character varying Tidak digunakan. Nilainya selalu NULL.
maximum_cardinality bigint Tidak digunakan. Nilainya selalu NULL.
dtd_identifier character varying Tidak digunakan. Nilainya selalu NULL.
routine_body character varying Jenis isi rutinitas (SQL atau EXTERNAL).
routine_definition character varying Definisi untuk routine_body SQL, kosong jika tidak.
external_name character varying Tidak digunakan. Nilainya selalu NULL.
external_language character varying Tidak digunakan. Nilainya selalu NULL.
parameter_style character varying Tidak digunakan. Nilainya selalu NULL.
is_deterministic character varying Tidak digunakan. Nilainya selalu NULL.
sql_data_access character varying Tidak digunakan. Nilainya selalu NULL.
is_null_call character varying Tidak digunakan. Nilainya selalu NULL.
sql_path character varying Tidak digunakan. Nilainya selalu NULL.
schema_level_routine character varying Tidak digunakan. Nilainya selalu NULL.
max_dynamic_result_sets character varying Tidak digunakan. Nilainya selalu NULL.
is_user_defined_cast character varying Tidak digunakan. Nilainya selalu NULL.
is_implicitly_invocable character varying Tidak digunakan. Nilainya selalu NULL.
security_type character varying Jenis keamanan rutinitas. Saat ini hanya INVOKER.
to_sql_specific_catalog character varying Tidak digunakan. Nilainya selalu NULL.
to_sql_specific_schema character varying Tidak digunakan. Nilainya selalu NULL.
to_sql_specific_name character varying Tidak digunakan. Nilainya selalu NULL.
as_locator character varying Tidak digunakan. Nilainya selalu NULL.
created timestamp with time zone Tidak digunakan. Nilainya selalu NULL.
last_altered timestamp with time zone Tidak digunakan. Nilainya selalu NULL.
new_savepoint_level character varying Tidak digunakan. Nilainya selalu NULL.
is_udt_dependent character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_from_data_type character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_as_locator character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_char_max_length bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_char_octet_length bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_char_set_catalog character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_char_set_schema character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_char_set_name character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_collation_catalog character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_collation_schema character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_collation_name character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_numeric_precision bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_numeric_precision_radix bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_numeric_scale bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_datetime_precision bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_interval_type character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_interval_precision bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_type_udt_catalog character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_type_udt_schema character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_type_udt_name character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_scope_catalog character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_scope_schema character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_scope_name character varying Tidak digunakan. Nilainya selalu NULL.
result_cast_maximum_cardinality bigint Tidak digunakan. Nilainya selalu NULL.
result_cast_dtd_identifier character varying Tidak digunakan. Nilainya selalu NULL.

schemata

Tampilan information_schema.schemata berisi satu baris untuk setiap skema dalam database saat ini. Skema mencakup skema informasi dan skema default bernama public.

Nama kolom Jenis Deskripsi
catalog_name character varying Nama database.
schema_name character varying Nama skema. Atribut ini ditetapkan ke public untuk skema default dan tidak kosong untuk skema bernama.
schema_owner character varying Nama pemilik skema.
default_character_set_catalog character varying Tidak digunakan.
default_character_set_schema character varying Tidak digunakan.
default_character_set_name character varying Tidak digunakan.
sql_path character varying Tidak digunakan.
effective_timestamp timestamp with timezone Stempel waktu saat semua data dalam skema ini menjadi efektif. Saat ini hanya digunakan untuk skema default.

sequences

Tampilan information_schema.sequences berisi metadata sequences.

Nama kolom Jenis Deskripsi
sequence_catalog character varying Nama database.
sequence_schema character varying Nama skema urutan. Defaultnya adalah public untuk database dialek PostgreSQL.
sequence_name character varying Nama urutan.
data_type character varying Urutan hanya mendukung int8.
numeric_precision bigint Saat ini tidak digunakan. Nilainya selalu `NULL`.
numeric_precision_radix bigint Saat ini tidak digunakan. Nilainya selalu `NULL`.
numeric_scale bigint Saat ini tidak digunakan. Nilainya selalu `NULL`.
start_value bigint Saat ini tidak digunakan. Nilainya selalu `NULL`.
minimum_value bigint Saat ini tidak digunakan. Nilainya selalu `NULL`.
maximum_value bigint Saat ini tidak digunakan. Nilainya selalu `NULL`.
increment bigint Saat ini tidak digunakan. Nilainya selalu `NULL`.
cycle_option character varying Satu-satunya opsi yang diterima sequence adalah no.
sequence_kind character varying Jenis urutan. bit_reversed_positive adalah satu-satunya nilai yang dapat diterima.
counter_start_value bigint Nilai awal penghitung urutan.
skip_range_min bigint Nilai minimum dalam rentang yang dilewati. Nilai ini adalah NULL jika tidak ditetapkan.
skip_range_max bigint Nilai maksimum dalam rentang yang dilewati. Nilai ini adalah NULL jika tidak ditetapkan.

spanner_statistics

Tabel ini mencantumkan paket statistik pengoptimal kueri yang tersedia.

Nama kolom Jenis Deskripsi
catalog_name character varying Nama database.
schema_name character varying Nama skema. Nilai skema default adalah public.
package_name character varying Nama paket statistik.
allow_gc character varying Apakah paket statistik dikecualikan dari pembersihan sampah memori. Sesuai dengan standar SQL, string dapat berupa YES atau NO, bukan nilai Boolean. Atribut ini harus ditetapkan ke NO sebelum Anda dapat mereferensikan paket statistik dalam petunjuk atau melalui API klien.

table_constraints

Tampilan ini berisi semua batasan yang dimiliki tabel yang dapat diakses pengguna saat ini (selain SELECT).

Nama kolom Jenis Deskripsi
constraint_catalog character varying Nama database.
constraint_schema character varying Nama skema yang berisi batasan.
constraint_name character varying Nama batasan.
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel yang terkait dengan batasan.
table_name character varying Nama tabel.
constraint_type character varying Jenis batasan. Kemungkinan nilainya adalah:
  • CHECK
  • FOREIGN KEY
  • PRIMARY KEY
  • UNIQUE
is_deferrable character varying Nilainya selalu NO.
initially_deferred character varying Nilainya selalu NO.
enforced character varying Apakah batasan diterapkan. Jika batasan diterapkan, (setelah mencapai status tertentu), batasan tersebut akan divalidasi pada waktu tulis dan oleh pemverifikasi integritas latar belakang. Sesuai dengan standar SQL, string adalah YES atau NO, bukan nilai Boolean.

table_privileges

Tampilan yang difilter baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua tabel dan tampilan untuk semua peran database, termasuk public. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan pada tabel dan tampilan untuk peran database saat ini, peran dengan anggota yang memiliki peran database saat ini, atau untuk public.

Nama kolom Type Deskripsi
grantor character varying Tidak digunakan. Selalu NULL.
grantee character varying Nama peran database yang diberi hak istimewa ini.
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel atau tampilan. Defaultnya adalah public untuk database dialek PostgreSQL.
table_name character varying Nama tabel atau tampilan.
privilege_type character varying Jenis hak istimewa (SELECT, INSERT, UPDATE, atau DELETE).
is_grantable character varying Tidak digunakan. Selalu NO.
that have_hierarchy character varying Tidak digunakan. Selalu NULL.

tables

Tampilan yang difilter baris ini mencantumkan semua tabel dan tampilan yang ada di database saat ini. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua tabel dan tampilan. Semua akun utama lainnya hanya dapat melihat tabel yang memenuhi salah satu persyaratan berikut:

  • Hak istimewa kontrol akses terperinci SELECT, INSERT, UPDATE, atau DELETE diberikan dalam tabel ke peran database saat ini, ke peran dengan peran database saat ini sebagai anggota, atau ke public.
  • Hak istimewa SELECT, INSERT, atau UPDATE diberikan di kolom tabel mana pun ke peran database saat ini, ke peran dengan peran database saat ini sebagai anggota, atau ke public.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel atau tampilan.
table_name character varying Nama tabel, tampilan, atau sinonim.
table_type character varying Jenis tabel. Nilai yang memungkinkan mencakup 'BASE TABLE', 'VIEW', atau 'SYNONYM'.
self_referencing_column_name character varying Tidak digunakan.
reference_generation character varying Tidak digunakan.
user_defined_type_catalog character varying Tidak digunakan.
user_defined_type_schema character varying Tidak digunakan.
user_defined_type_name character varying Tidak digunakan.
is_insertable_into character varying Tidak digunakan.
is_typed character varying Tidak digunakan.
commit_action character varying Tidak digunakan.
parent_table_name character varying Nama tabel induk jika tabel ini disisipkan, atau NULL.
on_delete_action character varying Nilai ini ditetapkan ke CASCADE atau NO ACTION untuk tabel sisipan, dan NULL jika tidak. Lihat pernyataan TABLE untuk informasi selengkapnya.
spanner_state character varying Status pembuatan tabel saat ini.
Sebuah tabel dapat melalui beberapa status selama pembuatan, jika terdapat operasi massal yang terlibat, misalnya, saat tabel dibuat dengan kunci asing yang mengharuskan pengisian ulang indeks yang direferensikan. Kemungkinan status adalah:
  • ADDING_FOREIGN_KEY: Menambahkan kunci asing tabel
  • WAITING_FOR_COMMIT: Menyelesaikan perubahan skema
  • COMMITTED: Perubahan skema untuk membuat tabel telah di-commit. Anda tidak dapat menulis ke tabel sebelum perubahan di-commit.
  • NULL: Tabel atau tampilan yang bukan tabel dasar.
interleave_type character varying Apakah ada hubungan induk-turunan antara tabel ini dan tabel tempat disisipi. Kemungkinan nilainya adalah:
  • IN: Tabel INTERLEAVE IN yang tidak memiliki hubungan induk-turunan. Baris dalam tabel ini bisa ada terlepas dari keberadaan baris tabel induknya.
  • IN PARENT: Tabel INTERLEAVE IN PARENT yang memiliki hubungan induk-turunan. Baris dalam tabel ini memerlukan keberadaan baris tabel induknya.
row_deletion_policy_expression character varying String yang berisi teks ekspresi yang menentukan ROW DELETION POLICY.

table_synonyms

Tabel ini mencantumkan informasi sinonim untuk tabel tersebut.

Nama kolom Jenis Deskripsi
CATALOG STRING Nama katalog yang berisi tabel.
SCHEMA STRING Nama skema yang berisi tabel.
TABLE_NAME STRING Nama tabel.
SYNONYM_CATALOG STRING Nama katalog untuk sinonim.
SYNONYM_SCHEMA STRING Nama skema untuk sinonim.
SYNONYM_TABLE_NAME STRING Nama tabel untuk sinonim.

views

Tampilan yang difilter baris ini mencantumkan semua tampilan di database saat ini. Principal yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau kepada anggota peran tersebut dapat melihat semua tampilan. Semua akun utama lainnya hanya dapat melihat tampilan yang memiliki hak istimewa kontrol akses terperinci SELECT yang diberikan padanya ke peran database saat ini, ke peran dengan peran database saat ini sebagai anggota, atau ke public.

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema. Nilai defaultnya adalah public.
table_name character varying Nama tampilan.
view_definition character varying Teks SQL kueri yang mendefinisikan tampilan.
check_option character varying Tidak digunakan.
is_updatable character varying Tidak digunakan.
is_insertable_into character varying Tidak digunakan.
is_trigger_updatable character varying Tidak digunakan.
is_trigger_deletable character varying Tidak digunakan.
is_trigger_insertable_into character varying Tidak digunakan.
security_type character varying Jenis keamanan tampilan. Berupa INVOKER atau DEFINER.

Untuk informasi lebih lanjut, lihat Tentang tampilan.

Contoh

Tampilkan informasi tentang setiap tabel dalam skema default:

SELECT
  t.table_catalog,
  t.table_name,
  t.parent_table_name
FROM
  information_schema.tables AS t
WHERE
  t.table_schema = 'public'
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name

Tampilkan nama semua tabel dan tampilan di information_schema untuk database dialek PostgreSQL:

SELECT table_name
FROM information_schema.tables
WHERE table_schema = "information_schema"

Tampilkan informasi tentang kolom di tabel pengguna my_table:

SELECT
  t.ordinal_position,
  t.column_name,
  t.data_type,
  t.spanner_type,
  t.is_nullable
FROM
  information_schema.columns AS t
WHERE
  t.table_schema = 'public'
  AND
  t.table_name = 'my_table'
ORDER BY
  t.ordinal_position

Tampilkan informasi tentang setiap indeks dalam skema default di database saat ini:

SELECT
  t.table_name,
  t.index_name,
  t.parent_table_name
FROM
  information_schema.indexes AS t
WHERE
  t.table_schema = 'public'
  AND
  t.index_type != 'PRIMARY_KEY'
ORDER BY
  t.table_schema,
  t.table_name,
  t.index_name

Tampilkan semua kolom yang menggunakan opsi selain default:

SELECT
  t.table_name,
  t.column_name,
  t.option_type,
  t.option_value,
  t.option_name
FROM
  information_schema.column_options AS t
WHERE
  t.table_schema = 'public'
ORDER BY
  t.table_schema,
  t.table_name,
  t.column_name,
  t.option_name

Tampilkan opsi database terkait pengoptimal saat ini:

SELECT
  s.option_name,
  s.option_value
FROM
  information_schema.database_options s
WHERE
  s.schema_name='public'
  AND s.option_name IN ('optimizer_version',
    'optimizer_statistics_package')

Menampilkan semua paket statistik yang tersedia:

SELECT *
FROM information_schema.spanner_statistics;

Langkah selanjutnya

  • Pelajari alat Introspeksi yang tersedia untuk membantu Anda menyelidiki masalah database.