Tampilan ROUTINES

Tampilan INFORMATION_SCHEMA.ROUTINES berisi satu baris untuk setiap rutinitas dalam set data.

Izin yang diperlukan

Untuk membuat kueri tampilan INFORMATION_SCHEMA.ROUTINES, Anda memerlukan izin Identity and Access Management (IAM) berikut:

  • bigquery.routines.get
  • bigquery.routines.list

Setiap peran IAM yang telah ditetapkan berikut mencakup izin yang Anda perlukan untuk mendapatkan metadata rutin:

  • roles/bigquery.admin
  • roles/bigquery.metadataViewer
  • roles/bigquery.dataViewer

Untuk mengetahui informasi selengkapnya tentang izin BigQuery, lihat Kontrol akses dengan IAM.

Skema

Saat Anda membuat kueri tampilan INFORMATION_SCHEMA.ROUTINES, hasil kueri akan berisi satu baris untuk setiap rutinitas dalam set data.

Tampilan INFORMATION_SCHEMA.ROUTINES memiliki skema berikut:

Nama kolom Jenis data Nilai
SPECIFIC_CATALOG STRING Nama project yang berisi set data untuk menentukan rutinitas.
SPECIFIC_SCHEMA STRING Nama set data yang berisi rutinitas
SPECIFIC_NAME STRING Nama rutinitas
ROUTINE_CATALOG STRING Nama project yang berisi set data untuk menentukan rutinitas
ROUTINE_SCHEMA STRING Nama set data yang berisi rutinitas
ROUTINE_NAME STRING Nama rutinitas
ROUTINE_TYPE STRING Jenis rutinitas:
  • FUNCTION: Fungsi persisten BigQuery yang ditentukan pengguna
  • PROCEDURE: Prosedur yang disimpan di BigQuery
  • TABLE FUNCTION: Fungsi tabel BigQuery.
DATA_TYPE STRING Jenis data yang ditampilkan rutinitas. NULL jika rutinitas adalah prosedur tersimpan
ROUTINE_BODY STRING Cara isi rutinitas ditentukan, SQL atau EXTERNAL jika rutinitas tersebut merupakan fungsi yang ditentukan pengguna JavaScript
ROUTINE_DEFINITION STRING Definisi rutinitas
EXTERNAL_LANGUAGE STRING JAVASCRIPT jika rutinitas adalah fungsi JavaScript yang ditentukan pengguna atau NULL jika rutinitas ditentukan dengan SQL
IS_DETERMINISTIC STRING YES jika rutinitas diketahui merupakan deterministik, NO jika tidak, atau NULL jika tidak diketahui
SECURITY_TYPE STRING Jenis keamanan rutinitas, selalu NULL
CREATED TIMESTAMP Waktu pembuatan rutinitas
LAST_ALTERED TIMESTAMP Waktu perubahan terakhir rutinitas
DDL STRING Pernyataan DDL yang dapat digunakan untuk membuat rutinitas, seperti CREATE FUNCTION atau CREATE PROCEDURE

Cakupan dan sintaksis

Kueri terhadap tampilan ini harus menyertakan set data atau penentu region. Untuk informasi selengkapnya, lihat Sintaksis. Tabel berikut menjelaskan cakupan region dan resource untuk tabel virtual ini:

Nama tabel virtual Cakupan resource Cakupan region
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.ROUTINES Level project REGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.ROUTINE Level set data Lokasi set data
Ganti kode berikut:

  • Opsional: PROJECT_ID: ID project Google Cloud Anda. Jika tidak ditentukan, project default akan digunakan.
  • REGION: nama region set data apa pun. Misalnya, region-us.
  • DATASET_ID: ID set data Anda. Untuk mengetahui informasi selengkapnya, lihat Penentu set data.

Contoh

-- Returns metadata for routines in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.ROUTINES;

-- Returns metadata for routines in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.ROUTINES;

Contoh

Contoh

Untuk menjalankan kueri terhadap project selain project default Anda, tambahkan project ID ke set data dalam format berikut:

`PROJECT_ID`.INFORMATION_SCHEMA.ROUTINES
. Contoh, `myproject`.INFORMATION_SCHEMA.ROUTINES.

Contoh berikut mengambil semua kolom dari tampilan INFORMATION_SCHEMA.ROUTINES. Metadata yang ditampilkan adalah untuk semua rutinitas di mydataset dalam project default Anda — myproject. Set data mydataset berisi rutinitas bernama myroutine1.

SELECT
  *
FROM
  mydataset.INFORMATION_SCHEMA.ROUTINES;

Hasilnya akan mirip dengan berikut ini:

+------------------+-----------------+---------------+-----------------+----------------+--------------+--------------+-----------+--------------+--------------------+-------------------+------------------+---------------+-----------------------------+-----------------------------+-----------------------------------------------------------+
| specific_catalog | specific_schema | specific_name | routine_catalog | routine_schema | routine_name | routine_type | data_type | routine_body | routine_definition | external_language | is_deterministic | security_type |           created           |         last_altered        |                            ddl                             |
+------------------+-----------------+---------------+-----------------+----------------+--------------+--------------+-----------+--------------+--------------------+-------------------+------------------+---------------+-----------------------------+-----------------------------+-----------------------------------------------------------+
| myproject        | mydataset       | myroutine1    | myproject       | mydataset      | myroutine1   | FUNCTION     | NULL      | SQL          | x + 3              | NULL              | NULL             | NULL          | 2019-10-03 17:29:00.235 UTC | 2019-10-03 17:29:00.235 UTC | CREATE FUNCTION myproject.mydataset.myroutine1(x FLOAT64) |
|                  |                 |               |                 |                |              |              |           |              |                    |                   |                  |               |                             |                             | AS (                                                      |
|                  |                 |               |                 |                |              |              |           |              |                    |                   |                  |               |                             |                             | x + 3                                                     |
|                  |                 |               |                 |                |              |              |           |              |                    |                   |                  |               |                             |                             | );                                                        |
+------------------+-----------------+---------------+-----------------+----------------+--------------+--------------+-----------+--------------+--------------------+-------------------+------------------+---------------+-----------------------------+-----------------------------+-----------------------------------------------------------+