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 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 bacaan tunggal lainnya tidak mendukung information_schema.

Perbedaan dari information_schema untuk PostgreSQL

Tabel di information_schema untuk database dialek PostgreSQL mencakup kolom dari tabel di information_schema untuk PostgreSQL open source dan dalam beberapa kasus juga mencakup 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 kolom unik untuk Spanner ditambahkan setelahnya. Kueri yang ditulis untuk versi PostgreSQL open source dari 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 di 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, tersedia.

Pemfilteran baris di tabel dan tampilan information_schema

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 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 tampilan di information_schema untuk database dialek PostgreSQL.

applicable_roles

Tampilan yang difilter menurut baris ini mencantumkan semua keanggotaan peran yang diberikan secara eksplisit 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. Akun utama lainnya hanya dapat melihat keanggotaan peran yang diberikan ke peran database saat ini atau ke peran yang merupakan anggota peran database saat ini.

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

Nama kolom Jenis Deskripsi
grantee character varying Nama peran database yang diberikan keanggotaannya.
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 menurut 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.

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 prinsipal lainnya hanya dapat melihat baris untuk aliran perubahan yang hak istimewa SELECT-nya diberikan ke peran database saat ini, ke peran yang merupakan anggota dari peran database saat ini, atau ke SELECT.public

Nama kolom Jenis Deskripsi
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema aliran perubahannya. Untuk database dialek PostgreSQL, defaultnya adalah public.
change_stream_name character varying Nama aliran 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 menurut baris ini berisi opsi konfigurasi untuk aliran 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 opsi untuk aliran perubahan yang hak istimewa SELECT-nya diberikan kepada peran database saat ini, kepada peran yang peran database saat ini adalah anggotanya, atau kepada SELECT.public

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

change_stream_privileges

Tampilan yang difilter menurut baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua aliran perubahan ke peran database mana 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 merupakan anggota peran database saat ini, 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 perubahan. Defaultnya adalah public untuk database dialek PostgreSQL.
change_stream_name character varying Nama aliran perubahan.
privilege_type character varying Jenis hak istimewa (khusus SELECT).
is_grantable character varying Tidak digunakan. Selalu NO.

change_stream_tables

Tampilan yang difilter menurut baris ini berisi informasi tentang tabel dan aliran perubahan yang memantaunya. Setiap baris menjelaskan satu tabel dan satu aliran 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 kepada peran database saat ini, kepada peran yang peran database saat ini adalah anggotanya, atau kepada 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 perubahannya. Untuk database dialek PostgreSQL, defaultnya adalah public.
change_stream_name character varying Nama aliran 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 perubahan baris ini melacak seluruh tabel yang dirujuk baris ini. Jika tidak, NO. Sesuai dengan standar SQL, stringnya adalah YES atau NO, bukan nilai Boolean.

change_streams

Tampilan yang difilter menurut baris ini mencantumkan semua aliran perubahan database, dan mencatat aliran perubahan yang melacak seluruh database versus tabel atau kolom tertentu. 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 aliran perubahan yang diberikan hak istimewa kontrol akses terperinci SELECT ke peran database saat ini, ke peran yang merupakan anggota peran database saat ini, atau ke public.

Nama kolom Jenis Deskripsi
change_stream_catalog character varying Nama database.
change_stream_schema character varying Nama skema aliran perubahannya. Untuk database dialek PostgreSQL, defaultnya adalah public.
change_stream_name character varying Nama aliran perubahan.
all character varying YES jika aliran perubahan ini melacak seluruh database. NO jika aliran perubahan ini melacak tabel atau kolom tertentu. Sesuai dengan standar SQL, stringnya 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 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 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 pembuatan kolom yang dihasilkan.
dependent_column character varying Nama kolom yang dihasilkan.

column_options

Tampilan ini mencantumkan semua opsi yang ditentukan untuk kolom tabel yang dirujuk 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 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 asing.
column_name character varying Nama kolom.
option_name character varying ID SQL yang secara unik mengidentifikasi opsi. ID ini adalah kunci klausa OPTIONS dalam 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 menurut baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua kolom ke peran database mana pun, termasuk public. Principal yang memiliki izin tingkat database IAM dan principal 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 merupakan anggota peran database saat ini, atau ke public.

Tabel virtual 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. Nilai 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 menurut 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 prinsipal lainnya hanya dapat melihat kolom yang memiliki hak istimewa kontrol akses terperinci yang diberikan padanya (atau hak istimewa SELECT, INSERT, atau UPDATE yang diberikan pada tabel yang memuatnya) ke peran database saat ini, ke peran yang merupakan 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 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
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 dapat bernilai null. Sesuai dengan standar SQL, stringnya adalah YES atau NO, bukan nilai Boolean.
data_type character varying Jenis data kolom. Nilainya adalah salah satu dari berikut:
  • 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, 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. 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, yaitu jumlah unit dasar presisi setelah titik radix. Untuk bigint, nilai 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. Stringnya adalah ALWAYS untuk kolom yang dihasilkan atau NEVER untuk kolom yang tidak dihasilkan.
generation_expression character varying String yang merepresentasikan ekspresi SQL dari kolom yang dihasilkan, atau NULL jika kolom 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 YES atau NO untuk kolom yang dibuat, dan NULL untuk kolom yang tidak dibuat.
spanner_state character varying Status kolom saat ini. Kolom baru yang dibuat dan ditambahkan ke tabel yang ada dapat melalui beberapa status yang dapat diamati pengguna sebelum dapat digunakan sepenuhnya. Nilai yang mungkin adalah:
  • NO_WRITE: Tidak ada operasi baca atau tulis yang diizinkan ke kolom. Kolom yang disimpan dan dibuat dalam status ini tidak menyebabkan efek klien.
  • 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 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 dirujuk.
  • 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 utama atau unik, tampilan ini mengidentifikasi tabel tempat batasan berada. Batasan pemeriksaan dan batasan tidak boleh 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 di 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 menurut baris ini mencantumkan peran database yang ditentukan. Principal yang memiliki izin IAM tingkat database dan principal 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 secara langsung atau 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 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 pseudo-indeks 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 primer), dimulai dengan nilai 1. Nilai ini adalah NULL untuk kolom non-kunci (misalnya, kolom yang ditentukan dalam klausa INCLUDE indeks).
column_ordering character varying Urutan pengurutan kolom. Nilainya adalah ASC atau DESC untuk kolom kunci, dan NULL untuk kolom non-kunci (misalnya, kolom yang ditentukan dalam klausa STORING indeks).
is_nullable character varying String yang menunjukkan apakah kolom dapat bernilai null. Sesuai dengan standar SQL, stringnya 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 pseudo-indeks 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 disisipkan 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, stringnya adalah YES atau NO, bukan nilai Boolean.
is_null_filtered character varying Apakah indeks menyertakan entri dengan nilai NULL. Sesuai dengan standar SQL, stringnya 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: 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 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 database.

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 kunci 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 menurut baris ini menentukan argumen untuk setiap fungsi baca aliran perubahan. Setiap baris menjelaskan satu argumen untuk satu fungsi baca aliran 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 parameter untuk fungsi baca aliran perubahan yang memiliki hak istimewa kontrol akses terperinci EXECUTE yang diberikan ke peran database saat ini, ke peran yang merupakan anggota peran database saat ini, 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 rutin, 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, nilainya adalah 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.

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 dapat bernilai null. Sesuai dengan standar SQL, stringnya 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 meliputi:
  • 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 paling dominan 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 durasi 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 untuk tabel yang mereferensikan. Tampilan 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 default-nya 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 utama atau unik yang direferensikan oleh batasan kunci asing.
unique_constraint_name character varying Nama batasan kunci utama atau unik yang direferensikan oleh batasan kunci asing.
match_option character varying Metode pencocokan yang digunakan oleh batasan kunci asing. Nilainya selalu NONE.
update_rule character varying Aturan pembaruan batasan kunci asing. Nilai ini selalu NO ACTION.
delete_rule character varying Aturan penghapusan batasan kunci asing. Nilai ini adalah CASCADE atau NO ACTION.
spanner_state character varying Status kunci asing saat ini. Spanner tidak 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 menurut baris ini mencantumkan hak istimewa SELECT yang diberikan pada semua aliran perubahan ke peran database mana 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 merupakan anggota peran database saat ini, 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 perubahan. Defaultnya adalah public untuk database dialek PostgreSQL.
change_stream_name character varying Nama aliran perubahan.
privilege_type character varying Jenis hak istimewa (khusus SELECT).
is_grantable character varying Tidak digunakan. Selalu NO.

role_column_grants

Tampilan yang difilter menurut baris ini mencantumkan semua hak istimewa kontrol akses terperinci yang diberikan pada semua kolom ke peran database mana pun, termasuk public. Principal yang memiliki izin IAM tingkat database dan principal 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 dan ke peran yang merupakan anggota peran database saat ini, tidak termasuk public.

Tabel virtual 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. Nilai 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 menurut 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 principal yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua baris dalam tampilan ini. Semua prinsipal lainnya hanya dapat melihat hak istimewa yang diberikan pada fungsi baca stream perubahan ke peran database saat ini dan ke peran yang merupakan 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 muatan.)
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 menurut 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 prinsipal lainnya hanya dapat melihat hak istimewa yang diberikan pada tabel dan tampilan ke peran database saat ini dan ke peran yang merupakan anggota peran database saat ini, 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 menurut baris ini berisi satu baris untuk setiap opsi untuk setiap fungsi baca aliran perubahan yang ditentukan.

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 opsi untuk fungsi baca aliran perubahan yang memiliki hak istimewa kontrol akses terperinci EXECUTE yang diberikan ke peran database saat ini, ke peran yang merupakan anggota 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. 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, nilainya adalah ARRAY.
option_value character varying Nilai opsi.

routine_privileges

Tampilan yang difilter menurut 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 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 fungsi baca aliran perubahan ke peran database saat ini, ke peran yang merupakan 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 menurut baris ini mencantumkan semua fungsi baca aliran perubahan 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 baca aliran perubahan yang diberikan hak istimewa kontrol akses terperinci EXECUTE untuk peran database saat ini, untuk peran yang merupakan anggota peran database saat ini, atau untuk 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 muatan.)
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, nilainya adalah 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, 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. 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.

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. 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 defaultnya adalah public.
package_name character varying Nama paket statistik.
allow_gc character varying Apakah paket statistik dikecualikan dari pengumpulan sampah memori. Sesuai dengan standar SQL, stringnya adalah YES atau NO, bukan nilai Boolean. Atribut ini harus disetel ke NO sebelum Anda dapat mereferensikan paket statistik dalam petunjuk atau melalui API klien.

table_constraints

Tampilan ini berisi semua batasan milik tabel yang aksesnya dimiliki 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. Nilai yang mungkin adalah:
  • 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 divalidasi pada waktu penulisan dan oleh verifier integritas latar belakang. Sesuai dengan standar SQL, stringnya adalah YES atau NO, bukan nilai Boolean.

table_privileges

Tampilan yang difilter menurut 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 merupakan anggota peran database saat ini, 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 menurut baris ini mencantumkan semua tabel dan tampilan yang ada di database saat ini. Principal yang memiliki izin IAM tingkat database dan principal yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua tabel dan tampilan. Semua prinsipal 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 merupakan anggota peran database saat ini, atau ke public.
  • Hak istimewa SELECT, INSERT, atau UPDATE diberikan pada kolom tabel mana pun ke peran database saat ini, ke peran yang merupakan 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 mungkin 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 Parameter 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 dirujuknya. Kemungkinan statusnya adalah:
  • ADDING_FOREIGN_KEY: Menambahkan kunci asing tabel
  • WAITING_FOR_COMMIT: Menyelesaikan perubahan skema
  • COMMITTED: Perubahan skema untuk membuat tabel telah dilakukan. Anda tidak dapat menulis ke tabel hingga perubahan dilakukan.
  • NULL: Tabel atau tampilan yang bukan tabel dasar.
interleave_type character varying Apakah ada hubungan induk-turunan antara tabel ini dan tabel yang disisipkan di dalamnya. Nilai yang mungkin adalah:
  • 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 menurut baris ini mencantumkan semua tampilan dalam database saat ini. Principal yang memiliki izin IAM tingkat database dan principal yang telah diberi akses ke peran sistem spanner_info_reader atau ke anggota peran tersebut dapat melihat semua tampilan. Semua prinsipal lainnya hanya dapat melihat tampilan yang memiliki hak istimewa kontrol akses terperinci SELECT yang diberikan pada tampilan tersebut ke peran database saat ini, ke peran yang merupakan anggota peran database saat ini, 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 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 tabel virtual.

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 information_schema untuk database dialek 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

Menampilkan 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 berikutnya

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