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_schema,
    table_name
  FROM
    information_schema.tables
  WHERE
    table_schema NOT IN ('pg_catalog', 'information_schema', 'SPANNER_SYS')
    AND table_type = 'BASE TABLE'

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 dari information_schema untuk PostgreSQL

Tabel dalam information_schema untuk database dialek PostgreSQL menyertakan kolom dari tabel dalam 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 untuk database PostgreSQL open source, dan kolom yang berbeda untuk Spanner ditambahkan setelahnya. Kueri yang ditulis untuk versi PostgreSQL open source information_schema akan berfungsi tanpa modifikasi saat menggunakan database dialek PostgreSQL di Google Cloud CLI.

Perbedaan penting lainnya dalam information_schema untuk database dialek PostgreSQL adalah:

  • Beberapa kolom tabel untuk PostgreSQL open source tersedia, tetapi tidak diisi dalam database dialek PostgreSQL.
  • Database dialek PostgreSQL menggunakan public untuk nama skema default.
  • Nama batasan yang dibuat secara otomatis menggunakan format yang berbeda dengan 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 di Spanner, tetapi tidak tersedia di PostgreSQL open source, seperti database_options, index_columns, indexes, dan spanner_statistics, tersedia.

Pemfilteran baris di tabel dan tabel virtual information_schema

Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader (atau ke 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 PostgreSQL open source.

Bagian berikut menjelaskan tabel dan tabel virtual 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. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke 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 ke peran yang menjadi anggota peran database saat ini.

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

Nama kolom Jenis Deskripsi
grantee character varying Nama peran database yang 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 data perubahan yang memantaunya. Setiap baris menjelaskan satu aliran data perubahan dan satu kolom. Jika aliran data perubahan melacak seluruh tabel, kolom dalam tabel tersebut tidak akan ditampilkan dalam tampilan ini.

Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat baris untuk aliran perubahan yang hak istimewa SELECT-nya diberikan ke peran database saat ini, ke peran yang peran database saat ini adalah anggotanya, 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 oleh baris ini.

change_stream_options

Tampilan yang difilter baris ini berisi opsi konfigurasi untuk aliran data perubahan. Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat opsi untuk aliran data perubahan yang hak istimewa SELECT-nya diberikan ke peran database saat ini, ke peran yang peran database saat ini menjadi anggotanya, 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 perubahan.
option_type character varying Jenis data opsi aliran data perubahan.
option_value character varying Nilai opsi aliran data perubahan.

change_stream_privileges

Tampilan yang difilter baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua aliran perubahan ke peran database apa pun, termasuk public. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan pada aliran perubahan ke peran database saat ini, ke peran yang menjadikan 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 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 data perubahan yang memantaunya. Setiap baris menjelaskan satu tabel dan satu aliran data perubahan. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat baris untuk aliran perubahan yang hak istimewa SELECT-nya diberikan ke peran database saat ini, ke peran yang peran database saat ini adalah anggotanya, atau ke public.

Data di change_stream_tables tidak menyertakan hubungan implisit antara tabel dan aliran data 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 oleh 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 data perubahan baris ini melacak keseluruhan tabel yang dirujuk baris ini. Jika tidak, NO. Sesuai dengan standar SQL, string-nya adalah YES atau NO, bukan nilai Boolean.

change_streams

Tampilan yang difilter baris ini mencantumkan semua aliran data perubahan database, dan mencatat aliran data mana yang melacak seluruh database versus tabel atau kolom tertentu. Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat aliran perubahan yang hak istimewa kontrol akses terperinci SELECT-nya diberikan ke peran database saat ini, ke peran yang peran database saat ini menjadi anggotanya, 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 data perubahan ini melacak tabel atau kolom tertentu. Sesuai dengan standar SQL, string-nya adalah 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 otomatis akan digunakan.
check_clause character varying Ekspresi batasan pemeriksaan.
spanner_state character varying Status batasan pemeriksaan saat ini. Status yang mungkin tersedia adalah sebagai berikut:
  • VALIDATING: Database dialek PostgreSQL sedang 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. Nama tersebut adalah public untuk skema default dan tidak kosong untuk skema lainnya (misalnya, information_schema itu sendiri). Kolom ini tidak pernah null.
table_name character varying Nama tabel yang berisi kolom yang dihasilkan.
column_name character varying Nama kolom dasar yang menjadi dasar kolom yang dihasilkan.
dependent_column character varying Nama kolom yang dihasilkan.

column_options

Tabel virtual 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 diberi hak istimewa).

Nama kolom Jenis Deskripsi
table_catalog character varying Nama database.
table_schema character varying Nama skema yang berisi tabel asing. Nama tersebut 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 klausa OPTIONS di DDL.
option_value character varying Literal SQL yang menjelaskan nilai opsi ini. Nilai kolom ini dapat diurai 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 di semua kolom ke peran database apa pun, termasuk public. Akun utama yang memiliki izin tingkat database IAM dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan pada kolom ke peran database saat ini, ke peran yang mencakup peran database saat ini, atau ke public.

Tabel virtual ini mencakup hak istimewa SELECT, INSERT, dan UPDATE yang diwarisi kolom dari tabel atau tabel virtual yang berisi kolom tersebut.

Nama kolom Jenis 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. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke 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 kepadanya (atau hak istimewa SELECT, INSERT, atau UPDATE yang diberikan pada tabel yang memuatnya) ke peran database saat ini, ke peran yang menjadi anggota 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. Nama tersebut 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 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-nya adalah 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, nilainya adalah ARRAY.
character_maximum_length BIGINT Panjang maksimum yang dideklarasikan untuk jenis data string karakter dan bit. Jika panjang maksimum tidak ditentukan, nilainya adalah NULL. Jika jenis data kolom bukan karakter atau string bit, 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. 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 radiks. 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 dibuat. String-nya 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 menyimpan jenis kolom yang kompatibel dengan DDL.
is_stored character varying String yang menunjukkan apakah kolom yang dihasilkan disimpan. String selalu berupa YES atau NO untuk kolom yang dihasilkan, dan NULL untuk kolom yang tidak dihasilkan.
spanner_state character varying Status kolom saat ini. Kolom yang dihasilkan dan disimpan yang baru ditambahkan ke tabel yang ada dapat melewati beberapa status yang dapat diamati pengguna sebelum dapat digunakan sepenuhnya. Nilainya dapat berupa:
  • NO_WRITE: Tidak ada operasi 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.
on_update_expression character varying Representasi string dari ekspresi `ON UPDATE` untuk kolom. Jika kolom tidak memiliki ekspresi `ON UPDATE`, nilainya adalah `NULL`.

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 berisi kolom tersebut.
  • Untuk batasan CHECK yang dibuat dengan kata kunci CHECK, tampilan mencakup kolom yang digunakan oleh ekspresi batasan pemeriksaan.
  • Untuk batasan kunci asing, tampilan berisi kolom tabel yang direferensikan.
  • Untuk batasan UNIQUE, tabel virtual 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, tabel virtual ini mengidentifikasi tabel tempat batasan tersebut berada. Batasan pemeriksaan dan batasan bukan 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 opsi database.
option_value character varying Nilai opsi database.

enabled_roles

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

Nama kolom Jenis 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 dalam 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 semu 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 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-nya adalah 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 semu 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 di-interleave dalam tabel induk, seperti yang dibahas dalam Membuat indeks sekunder. Kolom ini menyimpan nama tabel induk tersebut, atau string kosong jika indeks tidak disisipkan.
is_unique character varying Apakah kunci indeks harus unik. Sesuai dengan standar SQL, string-nya adalah YES atau NO, bukan nilai Boolean.
is_null_filtered character varying Apakah indeks menyertakan entri dengan nilai NULL. Sesuai dengan standar SQL, string-nya adalah YES atau NO, bukan nilai Boolean.
index_state character varying Status indeks saat ini. Nilai yang mungkin dan status yang diwakilinya adalah:
  • NULL: jenis indeks adalah PRIMARY_KEY
  • PREPARE: membuat tabel kosong untuk indeks baru
  • WRITE_ONLY: pengisian 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 cadangan sekunder untuk kunci asing dikelola oleh Spanner. String-nya adalah 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 database.

Nama kolom Jenis Deskripsi
catalog_name character varying Nama database.

key_column_usage

Tabel virtual 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 menentukan argumen untuk setiap fungsi baca aliran data perubahan dan yang ditentukan pengguna. Setiap baris menjelaskan satu argumen untuk satu fungsi yang ditentukan pengguna atau fungsi baca aliran data perubahan.

Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat parameter untuk fungsi baca aliran data perubahan dan yang ditentukan pengguna, yang hak istimewa kontrol akses terperinci EXECUTE-nya diberikan ke peran database saat ini, ke peran yang peran database saat ini adalah anggotanya, 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. Mengidentifikasi rutinitas secara unik 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.
spanner_type character varying Jenis nilai yang ditampilkan secara mendetail dari rutinitas. Menyertakan subjenis jika ARRAY ditampilkan.

placements

Tabel ini mencantumkan penempatan dalam database.

Nama kolom Jenis Deskripsi
placement_name character varying Nama penempatan.
is_default character varying String yang menunjukkan apakah kolom nullable. Sesuai dengan standar SQL, string-nya adalah YES atau NO, bukan nilai Boolean.

placement-options

Untuk setiap penempatan, tabel ini mencantumkan opsi yang ditetapkan pada penempatan dalam klausa OPTIONS dari pernyataan CREATE PLACEMENT.

Nama kolom Jenis Deskripsi
placement_name character varying Nama penempatan.
option_name character varying Nama opsi penempatan. Nilai yang valid untuk option_name mencakup:
  • instance_partition
  • default_leader
option_type character varying Jenis data opsi penempatan.
option_value character varying Nilai opsi penempatan. Untuk instance_partition, ini adalah nama partisi instance. Untuk default_leader, ini adalah nama region leader default.

locality-group-options

Untuk setiap grup lokalitas, tabel ini mencantumkan nama dan opsi yang ditetapkan pada grup lokalitas dalam klausa OPTIONS dari pernyataan CREATE LOCALITY GROUP.

Nama kolom Jenis Deskripsi
locality_group_name character varying Nama grup lokalitas.
option_name character varying Nama opsi grup lokalitas. Opsi yang valid adalah:
  • storage: menentukan jenis penyimpanan untuk grup lokalitas.
  • ssd_to_hdd_spill_timespan: menentukan berapa lama data disimpan di penyimpanan SSD sebelum dipindahkan ke penyimpanan HDD.
option_value character varying Nilai opsi grup lokalitas. Untuk storage, ini adalah ssd atau hdd. Untuk ssd_to_hdd_spill_timespan, ini adalah jumlah waktu data harus disimpan di SSD sebelum dipindahkan ke penyimpanan HDD. Misalnya, 10d adalah 10 hari. Durasi minimum yang dapat Anda tetapkan adalah satu jam.

referential_constraints

Tampilan ini berisi satu baris tentang setiap batasan FOREIGN KEY. Anda hanya dapat melihat batasan yang akses tulisnya Anda miliki ke tabel referensi. Tabel virtual ini juga mengidentifikasi batasan PRIMARY KEY dan UNIQUE pada tabel yang dirujuk 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 penghapusan batasan kunci asing. Nilai ini adalah CASCADE, SET NULL, atau NO ACTION.
spanner_state character varying Status kunci asing saat ini. Spanner tidak akan mulai menerapkan batasan hingga indeks pendukung kunci asing dibuat dan diisi ulang. Setelah indeks siap, Spanner mulai menerapkan batasan untuk transaksi baru sambil 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 diperlukan, tetapi kunci asing masih tertunda.
  • COMMITTED: Perubahan skema telah di-commit.

role_change_stream_grants

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

Nama kolom Jenis 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 di semua kolom ke peran database apa pun, termasuk public. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat hak istimewa yang diberikan pada kolom untuk peran database saat ini dan untuk peran yang menjadi anggota peran database saat ini, tidak termasuk public.

Tabel virtual ini mencakup hak istimewa SELECT, INSERT, dan UPDATE yang diwarisi kolom dari tabel atau tabel virtual yang berisi kolom tersebut.

Nama kolom Jenis 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 data perubahan ke peran database apa pun, termasuk public. Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke 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 data perubahan ke peran database saat ini dan ke peran yang menjadi anggota 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. Mengidentifikasi rutinitas secara unik 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 diduplikasi jika terjadi kelebihan beban.)
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 ke peran database apa pun, termasuk public. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke 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 dan untuk peran yang menjadikan peran database saat ini sebagai anggota, tidak termasuk public.

Nama kolom Jenis 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 untuk setiap fungsi baca aliran data perubahan yang ditentukan.

Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat opsi untuk fungsi baca aliran perubahan yang hak istimewa kontrol akses terperinci EXECUTE-nya diberikan ke peran database saat ini, ke peran yang peran database saat ini adalah anggotanya, 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. Mengidentifikasi rutinitas secara unik meskipun namanya kelebihan beban.
option_name character varying Nama opsi.
option_type character varying Jenis data opsi. Nilainya adalah salah satu dari 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 perubahan ke peran database apa pun, termasuk public. Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke 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 data perubahan ke peran database saat ini, ke peran yang menjadi anggota peran database saat ini, 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. Mengidentifikasi rutinitas secara unik 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 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 baca aliran perubahan dan yang ditentukan pengguna dari database. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua akun utama lainnya hanya dapat melihat fungsi yang ditentukan pengguna dan fungsi baca aliran perubahan yang hak istimewa kontrol akses terperinci EXECUTE-nya diberikan ke peran database saat ini, ke peran yang peran database saat ini adalah anggotanya, 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. Mengidentifikasi rutinitas secara unik meskipun namanya kelebihan beban.
routine_catalog character varying Nama database.
routine_schema character varying Nama skema rutinitas.
routine_name character varying Nama rutinitas. (Mungkin diduplikasi jika terjadi kelebihan beban.)
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 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 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 SQL routine_body, jika tidak, kosong.
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. Hanya INVOKER yang didukung.
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.
spanner_type character varying Jenis nilai yang ditampilkan secara mendetail dari rutinitas. Menyertakan subjenis jika ARRAY ditampilkan.
spanner_determinism character varying Determinisme fungsi yang ditentukan pengguna (DETERMINISTIC, NOT_DETERMINISTIC_STABLE, atau NOT_DETERMINISTIC_VOLATILE). Info lebih lanjut dapat ditemukan di deskripsi untuk [provolatile](https://www.postgresql.org/docs/current/catalog-pg-proc.html#:~:text=provolatile).

schemata

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

Nama kolom Jenis Deskripsi
catalog_name character varying Nama database.
schema_name character varying Nama skema. Nilai 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 mulai berlaku. 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 Tidak digunakan. Nilainya selalu `NULL`.
numeric_precision_radix bigint Tidak digunakan. Nilainya selalu `NULL`.
numeric_scale bigint Tidak digunakan. Nilainya selalu `NULL`.
start_value bigint Tidak digunakan. Nilainya selalu `NULL`.
minimum_value bigint Tidak digunakan. Nilainya selalu `NULL`.
maximum_value bigint Tidak digunakan. Nilainya selalu `NULL`.
increment bigint 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-nya adalah 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 oleh tabel yang dapat diakses oleh 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. Nilainya dapat berupa:
  • CHECK
  • FOREIGN KEY
  • PLACEMENT 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 penulisan dan oleh pemverifikasi integritas latar belakang. Sesuai dengan standar SQL, string-nya 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 ke peran database apa pun, termasuk public. Akun utama yang memiliki izin IAM tingkat database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke 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 ke peran database saat ini, ke peran yang menjadikan 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 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 dalam database saat ini. Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke 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 pada tabel ke peran database saat ini, ke peran yang peran database saat ini adalah anggotanya, atau ke public.
  • Hak istimewa SELECT, INSERT, atau UPDATE diberikan pada kolom tabel mana pun ke peran database saat ini, ke peran yang menjadi anggota 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 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 Ini ditetapkan ke CASCADE atau NO ACTION untuk tabel yang disisipkan, dan NULL jika tidak. Lihat pernyataan TABLE untuk mengetahui informasi selengkapnya.
spanner_state character varying Status pembuatan tabel saat ini.
Tabel dapat melalui beberapa status selama pembuatan, jika operasi massal terlibat, misalnya, saat tabel dibuat dengan kunci asing yang memerlukan pengisian ulang indeks yang direferensikan. Status yang mungkin tersedia 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 hingga perubahan di-commit.
  • NULL: Tabel atau tabel virtual yang bukan tabel dasar.
interleave_type character varying Apakah ada hubungan induk-turunan antara tabel ini dan tabel tempat tabel ini di-interleave. Nilainya dapat berupa:
  • IN: Tabel INTERLEAVE IN yang tidak memiliki hubungan induk-turunan. Baris dalam tabel ini dapat 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.

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 dalam database saat ini. Akun utama yang memiliki izin IAM level database dan akun utama yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua tampilan. Semua akun utama lainnya hanya dapat melihat tabel virtual yang memiliki hak istimewa kontrol akses terperinci SELECT yang diberikan kepada peran database saat ini, kepada peran yang mencakup peran database saat ini, atau kepada 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 menentukan 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. INVOKER atau DEFINER.

Untuk mengetahui informasi selengkapnya, lihat Tentang tampilan.

Contoh

Menampilkan informasi tentang setiap tabel dalam skema pengguna:

SELECT
  t.table_schema,
  t.table_catalog,
  t.table_name,
  t.parent_table_name
FROM
  information_schema.tables AS t
WHERE
  t.table_schema NOT IN ('pg_catalog', 'information_schema', 'SPANNER_SYS')
  AND t.table_type = 'BASE TABLE'
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name

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

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

Menampilkan informasi tentang kolom dalam tabel pengguna my_table dalam skema default:

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

Menampilkan informasi tentang setiap indeks dalam skema default di database saat ini: ```postgresql 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

Menampilkan kolom yang menggunakan opsi non-default dalam skema 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;
``` ## What's
next {: #whats-next}

+   Learn about available [Introspection tools](/spanner/docs/introspection) to
help you investigate database issues.