情報スキーマはすべての Spanner データベースに共通する組み込みスキーマです。データベースのスキーマ メタデータをフェッチするために INFORMATION_SCHEMA
にあるテーブルで SQL クエリを実行できます。
たとえば、以下のクエリはデータベース内のすべてのユーザー定義テーブルの名前をフェッチします。
SELECT
table_name
FROM
information_schema.tables
WHERE
table_schema = ''
詳細なアクセス制御ユーザーには、データベースロールに応じて一部の INFORMATION_SCHEMA
テーブルのフィルタされた結果が表示されます。詳細については、細かいアクセス制御についてをご覧ください。
使用量
INFORMATION_SCHEMA
テーブルは SQL インターフェースを介してのみ利用できます。例:
executeQuery
APIgcloud spanner databases execute-sql
コマンド- Google Cloud コンソールのデータベースの Spanner Studio ページ
他の単一読み取りメソッドは、INFORMATION_SCHEMA
をサポートしていません。
INFORMATION_SCHEMA
の使用に関するその他の注意事項:
INFORMATION_SCHEMA
に対するクエリは読み取り専用トランザクションでは使用できますが、読み取り / 書き込みトランザクションでは使用できません。INFORMATION_SCHEMA
に対するクエリでは、タイムスタンプ バウンド(強力、バウンド ステイルネス、正確なステイルネスの 3 種類)を使用できます。- PostgreSQL 言語データベースを使用している場合は、PostgreSQL 言語データベースの情報スキーマをご覧ください。
- 詳細なアクセス制御を使用している場合は、
INFORMATION_SCHEMA
テーブルがフィルタされ、アクセスできるスキーマ要素のみが表示されます。
information_schema テーブルでの行フィルタリング
データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システムロール(またはそのロールのメンバー)へのアクセス権が付与されているプリンシパルは、すべての information_schema テーブルのすべての行を表示できます。他のプリンシパルの場合、一部のテーブルでは、現在のデータベース ロールに基づいて行がフィルタされます。次の各セクションのテーブルとビューの説明では、各テーブルとビューに行フィルタがどのように適用されるかを示します。
INFORMATION_SCHEMA のテーブル
以下の各セクションでは、GoogleSQL 言語データベースの INFORMATION_SCHEMA
のテーブルについて説明します。
SCHEMATA
INFORMATION_SCHEMA.SCHEMATA
テーブルには、データベース内のスキーマが一覧表示されます。これらのスキーマには、情報スキーマと、定義するテーブルを含む名前付きスキーマが含まれます。
列名 | 型 | 説明 |
---|---|---|
CATALOG_NAME |
STRING |
カタログ名。この列は SQL 標準情報スキーマ テーブルと互換性を持ちます。この列は常に空の文字列となります。 |
SCHEMA_NAME |
STRING |
スキーマ名。これは、名前付きスキーマの名前、またはデフォルト スキーマの場合は「」です。 |
PROTO_BUNDLE |
STRING |
データベースに proto bundle ステートメントが含まれている場合、この列にはスキーマで使用されている proto bundle に関する情報が表示されます。データベースにプロトバンドルが存在しない場合、この列は NULL になります。 |
DATABASE_OPTIONS
このテーブルには、データベースに設定されているオプションが一覧表示されます。
列名 | 型 | 説明 |
---|---|---|
CATALOG_NAME |
STRING |
カタログ名。常に空の文字列。 |
SCHEMA_NAME |
STRING |
スキーマ名。名前が付いていない場合は空の文字列。 |
OPTION_NAME |
STRING |
データベース オプションの名前。 |
OPTION_TYPE |
STRING |
データベース オプションのデータ型。 |
OPTION_VALUE |
STRING |
データベース オプションの値。 |
PLACEMENTS
次の表は、データベース内のプレースメントを示しています。
列名 | 型 | 説明 |
---|---|---|
PLACEMENT_NAME |
STRING |
プレースメントの名前です。 |
IS_DEFAULT |
BOOL |
プレースメントがデフォルト プレースメントかどうかを示すブール値。 |
PLACEMENT_OPTIONS
この表には、プレースメントごとに、CREATE PLACEMENT
ステートメントの OPTIONS
句でプレースメントに設定されているオプションが一覧表示されます。
OPTION_NAME
の有効な値は次のとおりです。
instance_partition
default_leader
列名 | 型 | 説明 |
---|---|---|
PLACEMENT_NAME |
STRING |
プレースメントの名前です。 |
OPTION_NAME |
STRING |
プレースメント オプションの名前。 |
OPTION_TYPE |
STRING |
プレースメント オプションのデータ型。どちらのオプションでも、これは STRING(MAX) です。 |
OPTION_VALUE |
STRING |
プレースメント オプションの値。instance_partition の場合、これはインスタンス パーティションの名前です。default_leader の場合、これはデフォルトのリーダー リージョンの名前です。 |
TABLES
この行でフィルタリングされたテーブルには、データベース内のテーブルとビューが一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、次のいずれかの要件を満たすテーブルのみを表示できます。
-
SELECT
、INSERT
、UPDATE
、またはDELETE
のきめ細かいアクセス制御権限は、現在のデータベース ロールがメンバーであるロール、またはpublic
に対するテーブルに付与されます。 SELECT
、INSERT
、UPDATE
のいずれかの権限が、現在のデータベース ロール、または現在のデータベース ロールがメンバーであるロール、またはpublic
に対するテーブルの任意の列に付与されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
使用されません。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
TABLE_NAME |
STRING |
テーブル、ビュー、または類義語の名前。 |
TABLE_TYPE |
STRING |
テーブルのタイプ。 テーブルの場合、値は BASE TABLE になります。ビューの場合、値は VIEW になります。類義語の場合、値は SYNONYM になります。 |
PARENT_TABLE_NAME |
STRING |
このテーブルがインターリーブされた場合は親テーブルの名前、それ以外の場合は NULL 。 |
ON_DELETE_ACTION |
STRING |
インターリーブされたテーブルの場合は CASCADE または NO ACTION 、それ以外の場合は NULL に設定されます。詳細については、TABLE ステートメントをご覧ください。 |
SPANNER_STATE |
STRING |
大量のオペレーションが含まれる場合、テーブルの作成中に複数の状態を遷移します。たとえば、インデックスのバックフィルを必要とする外部キーでテーブルが作成された場合です。考えられる状態は次のとおりです。
|
INTERLEAVE_TYPE |
STRING |
このテーブルとインターリーブされたテーブルの間に親子関係があるかどうかを示す式テキスト。表示される値は次のとおりです。
|
ROW_DELETION_POLICY_EXPRESSION |
STRING |
テーブルの行削除ポリシーを定義する式テキスト。たとえば、OLDER_THAN(CreatedAt, INTERVAL 1 DAY) や、OLDER_THAN(ExpiredDate, INTERVAL 0 DAY) です。 |
COLUMNS
この行でフィルタリングされたテーブルには、テーブル内の列が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、次のいずれかの要件を満たす列のみを表示できます。
SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かなアクセス制御特権は、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、またはpublic
に対する列で直接付与されます。SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対する列を含むテーブルに付与されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
使用されません。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
TABLE_NAME |
STRING |
テーブルの名前。 |
COLUMN_NAME |
STRING |
列の名前。 |
ORDINAL_POSITION |
INT64 |
1 の値で始まるテーブルの列の順序位置。 |
COLUMN_DEFAULT |
STRING |
列のデフォルト値の SQL 式の文字列表現。列にデフォルト値がない場合は
注: 2022 年 3 月以前は、 |
DATA_TYPE |
STRING |
SQL 標準を満たすために含まれています。常に NULL です。列 SPANNER_TYPE を確認します。 |
IS_NULLABLE |
STRING |
列が Nullable であるかどうかを示す文字列。SQL 標準に従い、この文字列はブール値ではなく、YES か NO になります。 |
SPANNER_TYPE |
STRING |
列のデータ型。 |
IS_GENERATED |
STRING |
列が生成されるかどうかを示す文字列。文字列は、生成された列の場合は ALWAYS 、生成されていない列の場合は NEVER になります。 |
GENERATION_EXPRESSION |
STRING |
生成された列の SQL 式を表す文字列。列が生成された列でない場合は NULL になります。 |
IS_STORED |
STRING |
生成された列が格納されているかどうかを示す文字列。生成された列の場合、文字列は常に YES で、生成されていない列の場合は NULL になります。 |
SPANNER_STATE |
STRING |
列の現在の状態。新しく保存された生成列が既存のテーブルに追加されると、完全に使用可能になる前に、ユーザーがモニタリング可能な複数の状態を経由する場合があります。有効な値は次のとおりです。
|
COLUMN_PRIVILEGES
この行でフィルタされたテーブルには、public
を含むすべてのデータベース ロールに列レベルで付与されているすべての権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、次のいずれかの要件を満たす列の権限のみを確認できます。
SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かなアクセス制御特権は、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、またはpublic
に対する列で直接付与されます。SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対する列を含むテーブルに付与されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
使用されません。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
TABLE_NAME |
STRING |
特権列を含むテーブルの名前。 |
COLUMN_NAME |
STRING |
特権列の名前。 |
PRIVILEGE_TYPE |
STRING |
SELECT 、INSERT 、UPDATE |
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
TABLE_PRIVILEGES
この行でフィルタされたテーブルには、public
を含むデータベース ロールにテーブルレベルで付与されたすべての権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、または public
に SELECT
、INSERT
、UPDATE
、または DELETE
のいずれかのきめ細かいアクセス制御権限が付与されているテーブルのみが表示されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
使用されません。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
TABLE_NAME |
STRING |
詳細なアクセス制御権限が付与されるモデルの名前。 |
PRIVILEGE_TYPE |
STRING |
SELECT INSERT UPDATE 、DELETE のいずれかになります。
|
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
TABLE_CONSTRAINTS
このテーブルには、データベース内のテーブルに定義された制約ごとに 1 つの行が表示されます。
列名 | 型 | 説明 |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
常に空の文字列。 |
CONSTRAINT_SCHEMA |
STRING |
制約のスキーマ名。名前が付いていない場合は空の文字列。 |
CONSTRAINT_NAME |
STRING |
制約の名前。 |
TABLE_CATALOG |
STRING |
制約付きテーブルのカタログの名前。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
制約付きテーブルのスキーマ名。名前が付いていない場合は空の文字列。 |
TABLE_NAME |
STRING |
制約付きテーブルの名前。 |
CONSTRAINT_TYPE |
STRING |
制約の種類。有効な値は次のとおりです。
|
IS_DEFERRABLE |
STRING |
常に NO です。 |
INITIALLY_DEFERRED |
STRING |
常に NO です。 |
ENFORCED |
STRING |
常に YES です。 |
CONSTRAINT_TABLE_USAGE
このテーブルには、制約を定義するテーブル、または制約によって使用されるテーブルが一覧表示されます。PRIMARY KEY
と UNIQUE
の制約を定義するテーブルが表示されます。FOREIGN KEY
定義の参照先のテーブルも表示されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
制約付きテーブルのカタログの名前。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
制約付きテーブルのスキーマ名。名前が付いていない場合は空の文字列。 |
TABLE_NAME |
STRING |
制約付きテーブルの名前。 |
CONSTRAINT_CATALOG |
STRING |
制約のカタログの名前。常に空の文字列。 |
CONSTRAINT_SCHEMA |
STRING |
制約のスキーマ名。名前が付いていない場合は空の文字列。 |
CONSTRAINT_NAME |
STRING |
制約の名前。 |
REFERENTIAL_CONSTRAINTS
このテーブルには、FOREIGN KEY
制約ごとに 1 つの行が表示されます。
列名 | 型 | 説明 |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
外部キーのカタログの名前。常に空の文字列。 |
CONSTRAINT_SCHEMA |
STRING |
外部キーのスキーマ名。名前が付いていない場合は空の文字列。 |
CONSTRAINT_NAME |
STRING |
外部キーの名前。 |
UNIQUE_CONSTRAINT_CATALOG |
STRING |
外部キーが参照する主キーまたは一意の制約のカタログ名。常に空の文字列。 |
UNIQUE_CONSTRAINT_SCHEMA |
STRING |
外部キーが参照する主キーまたは一意の制約のスキーマ名。名前が付いていない場合は空の文字列。 |
UNIQUE_CONSTRAINT_NAME |
STRING |
外部キーが参照する主キーまたは一意の制約の名前。 |
MATCH_OPTION |
STRING |
常に SIMPLE です。 |
UPDATE_RULE |
STRING |
常に NO ACTION です。 |
DELETE_RULE |
STRING |
CASCADE または NO ACTION のいずれか。 |
SPANNER_STATE |
STRING |
外部キーの現在の状態。Spanner は、外部キーのバックアップ インデックスが作成されてバックフィルされるまで、制約の適用を開始しません。インデックスの準備ができると、Spanner は既存のデータの検証中に新しいトランザクションの制約の適用を開始します。可能な値と状態は以下のとおりです。
|
CHECK_CONSTRAINTS
information_schema.CHECK_CONSTRAINTS
テーブルには、CHECK
または NOT NULL
キーワードのいずれかによって定義された各 CHECK
制約に関する行が 1 つ含まれています。
列名 | 型 | 説明 |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
制約のカタログの名前。この列は null にできませんが、常に空の文字列となります。 |
CONSTRAINT_SCHEMA |
STRING |
制約のスキーマ名。名前が付いていない場合は空の文字列。 |
CONSTRAINT_NAME |
STRING |
制約の名前。この列は null にできません。スキーマ定義で明示的に指定されていない場合、システム定義の名前が割り当てられます。 |
CHECK_CLAUSE |
STRING |
CHECK 制約の式。この列は null にできません。 |
SPANNER_STATE |
STRING |
CHECK 制約の現在の状態。この列は null にできません。可能な状態は次のとおりです。
|
KEY_COLUMN_USAGE
このテーブルには、PRIMARY KEY
、FOREIGN
KEY
、または UNIQUE
の制約によってキーとして制約される TABLE_CONSTRAINTS
のテーブルの列ごとに 1 行が表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、次の条件を満たす列のみを表示できます。
SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かなアクセス制御特権は、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、またはpublic
に対する列で直接付与されます。SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対する列を含むテーブルに付与されます。
列名 | 型 | 説明 |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
制約のカタログの名前。常に空の文字列。 |
CONSTRAINT_SCHEMA |
STRING |
制約のスキーマ名。この列は null にできません。名前が付いていない場合は空の文字列。 |
CONSTRAINT_NAME |
STRING |
制約の名前。 |
TABLE_CATALOG |
STRING |
制約付きの列のカタログの名前。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
制約付きの列のスキーマ名。この列は null にできません。 名前が付いていない場合は空の文字列。 |
TABLE_NAME |
STRING |
制約付きの列のテーブルの名前。 |
COLUMN_NAME |
STRING |
列の名前。 |
ORDINAL_POSITION |
INT64 |
制約のキー内の列の順序位置(1 始まり)。 |
POSITION_IN_UNIQUE_CONSTRAINT |
INT64 |
FOREIGN KEY の場合、一意の制約内での列の位置(1 値で始まり)。他の制約タイプの場合、この列は null です。 |
CONSTRAINT_COLUMN_USAGE
このテーブルには、制約で使用される列ごとに 1 つの行が表示されます。これらの行には、PRIMARY KEY
列と UNIQUE
列の他に、FOREIGN KEY
制約の参照先の列などがあります。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
列テーブルのカタログ名。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
列テーブルのスキーマ名。この列は null にできません。名前がない場合は空の文字列。 |
TABLE_NAME |
STRING |
列のテーブル名。 |
COLUMN_NAME |
STRING |
制約によって使用される列の名前。 |
CONSTRAINT_CATALOG |
STRING |
制約のカタログの名前。常に空の文字列。 |
CONSTRAINT_SCHEMA |
STRING |
制約のスキーマ名。名前が付いていない場合は空の文字列。 |
CONSTRAINT_NAME |
STRING |
制約の名前。 |
TABLE_SYNONYMS
このテーブルには、テーブルの類義語情報が一覧表示されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
使用されません。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
TABLE_NAME |
STRING |
テーブルの名前。 |
SYNONYM_CATALOG |
STRING |
類義語のカタログ名。 |
SYNONYM_SCHEMA |
STRING |
類義語のスキーマの名前。 |
SYNONYM_TABLE_NAME |
STRING |
類義語のテーブルの名前。 |
INDEXES
この行でフィルタリングされたテーブルには、データベース内のインデックスが一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、次のいずれかの要件を満たすインデックスのみを表示できます。
SELECT
、INSERT
、またはUPDATE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対するインデックスの全ての列に対する列レベルに付与されます。SELECT
、INSERT
、UPDATE
またはDELETE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対するインデックスを持つテーブルに付与されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
スキーマ名。名前が付いていない場合は空の文字列。 |
TABLE_NAME |
STRING |
テーブルの名前。 |
INDEX_NAME |
STRING |
インデックスの名前。PRIMARY KEY 仕様のテーブルには、PRIMARY_KEY という名前で生成される疑似インデックス エントリがあり、決定されるプライマリキーのフィールドを許可します。 |
INDEX_TYPE |
STRING |
インデックスのデータ型。データ型は INDEX か PRIMARY_KEY です。 |
PARENT_TABLE_NAME |
STRING |
セカンダリ インデックスは、セカンダリ インデックスの作成に説明されているとおり、親テーブルにインターリーブされます。この列は親テーブルの名前を保持するか、インデックスがインターリーブされない場合は空の文字列となります。 |
IS_UNIQUE |
BOOL |
インデックス キーが固有のものでなければならないかどうかを示します。 |
IS_NULL_FILTERED |
BOOL |
インデックスに NULL 値のエントリが含まれるかどうかを示します。 |
INDEX_STATE |
STRING |
インデックスの現在の状態。可能な値と状態は以下のとおりです。
|
SPANNER_IS_MANAGED |
BOOL |
TRUE (インデックスが Spanner によって管理されている場合)。それ以外の場合は FALSE 。外部キーの 2 番目のバックアップ インデックスは、Spanner によって管理されます。 |
INDEX_COLUMNS
この行でフィルタリングされたテーブルには、インデックス内の列が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、次のいずれかの要件を満たすインデックスのみを表示できます。
SELECT
、INSERT
、またはUPDATE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対するインデックスの全ての列に対する列レベルに付与されます。SELECT
、INSERT
、またはUPDATE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対するインデックスを持つテーブルに付与されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
スキーマ名。名前が付いていない場合は空の文字列。 |
TABLE_NAME |
STRING |
テーブルの名前。 |
INDEX_NAME |
STRING |
インデックスの名前。 |
COLUMN_NAME |
STRING |
列の名前。 |
ORDINAL_POSITION |
INT64 |
1 の値で始まるインデックス(またはプライマリキー)の列の順序位置。この値は、キーのない列(たとえば、インデックスの STORING 句で指定された列など)では NULL となります。 |
COLUMN_ORDERING |
STRING |
列の順序。この値はキー列では ASC や DESC となり、キーのない列では NULL となります(たとえば、インデックスの STORING 句で指定された列など)。 |
IS_NULLABLE |
STRING |
列が Nullable であるかどうかを示す文字列。SQL 標準に従い、この文字列はブール型ではなく、YES か NO になります。 |
SPANNER_TYPE |
STRING |
列のデータ型。 |
COLUMN_OPTIONS
この行でフィルタリングされたテーブルには、テーブル内の列のオプションが一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、次のいずれかの要件を満たす列のオプションのみを表示できます。
SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かなアクセス制御特権は、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、またはpublic
に対する列で直接付与されます。SELECT
、INSERT
またはUPDATE
のいずれかのきめ細かいアクセス制御権限は、現在のデータベースのロール、現在のデータベース ロールがメンバーであるロール、またはpublic
に対する列を含むテーブルに付与されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
スキーマ名。この名前は、デフォルトのスキーマでは空となり、他のスキーマでは空になりません(たとえば、INFORMATION_SCHEMA 自体)。
この列は null にできません。 |
TABLE_NAME |
STRING |
テーブルの名前。 |
COLUMN_NAME |
STRING |
列の名前。 |
OPTION_NAME |
STRING |
オプションを一意に識別する SQL 識別子。この識別子は、DDL の OPTIONS 句のキーです。
|
OPTION_TYPE |
STRING |
このオプション値の型であるデータ型の名前。 |
OPTION_VALUE |
STRING |
このオプションの値を表す SQL リテラル。この列の値は、クエリの一部として解析可能でなければなりません。値の解析結果の式は OPTION_TYPE にキャストできる必要があります。この列は null にできません。 |
SEQUENCES
このテーブルには、シーケンスのメタデータが一覧表示されます。SEQUENCES
は、きめ細かいアクセス権限を持つユーザーによってクエリされると、きめ細かいアクセス権限に基づいて行でフィルタされます。
列名 | 型 | 説明 |
---|---|---|
CATALOG |
STRING |
シーケンスを含むカタログの名前。 |
SCHEMA |
STRING |
シーケンスを含むスキーマの名前。 |
NAME |
STRING |
シーケンスの名前。 |
DATA_TYPE |
STRING |
シーケンス値の型。INT64 データ型を使用します。 |
SEQUENCE_OPTIONS
次の表に、シーケンスの構成オプションを示します。SEQUENCE_OPTIONS
は、きめ細かいアクセス権限を持つユーザーによってクエリされると、きめ細かいアクセス権限に基づいて行でフィルタされます。
列名 | 型 | 説明 |
---|---|---|
CATALOG |
STRING |
シーケンスを含むカタログの名前。 |
SCHEMA |
STRING |
シーケンスを含むスキーマの名前。 |
NAME |
STRING |
シーケンスの名前。 |
OPTION_NAME |
STRING |
シーケンス オプションの名前。 |
OPTION_TYPE |
STRING |
このオプション値の型であるデータ型の名前。 |
OPTION_VALUE |
STRING |
シーケンス オプションの値。値の解析結果の式は、OPTION_TYPE へのキャストを許可する必要があります。 |
SPANNER_STATISTICS
このテーブルには、使用可能なクエリ オプティマイザーの統計情報パッケージが一覧表示されます。
列名 | 型 | 説明 |
---|---|---|
CATALOG_NAME |
STRING |
カタログ名。常に空の文字列。 |
SCHEMA_NAME |
STRING |
スキーマ名。この名前は、デフォルトのスキーマでは空となり、他のスキーマでは空になりません(たとえば、INFORMATION_SCHEMA 自体)。
この列は null にできません。 |
PACKAGE_NAME |
STRING |
統計パッケージの名前。 |
ALLOW_GC |
BOOL |
統計情報パッケージがガベージ コレクションから除外されている場合は FALSE 、それ以外の場合は TRUE 。ヒントまたはクライアント API で統計パッケージを参照するには、この属性を FALSE に設定する必要があります。 |
VIEWS
この行でフィルタリングされたテーブルには、データベース内のビューが一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース・ロール、現在のデータベース・ロールがメンバーとなっているロール、または public
に SELECT
微細アクセス制御の権限が付与されているビューのみが表示されます。
列名 | 型 | 説明 |
---|---|---|
TABLE_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
スキーマ名。名前が付いていない場合は空の文字列。 |
TABLE_NAME |
STRING |
ビュー名。 |
VIEW_DEFINITION |
STRING |
ビューを定義するクエリの SQL テキスト。 |
SECURITY_TYPE |
STRING |
ビューのセキュリティ タイプ。INVOKER または DEFINER のいずれか。
詳細については、ビューについてをご覧ください。 |
ROLES
この行でフィルタされたテーブルには、システムロールを含むきめ細かいアクセス制御用に定義されたデータベース ロールが一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システムロールへのアクセス権を付与されているプリンシパル、またはそのロールのメンバーは、すべてのデータベース ロールを表示できます。他のすべてのプリンシパルは、直接または継承によってアクセス権が付与されているデータベースロールのみを表示できます。
列名 | 型 | 説明 |
---|---|---|
ROLE_NAME |
STRING |
データベース ロールの名前。 |
IS_SYSTEM |
BOOL |
データベース ロールがシステムロールの場合はTRUE 、それ以外の場合は FALSE 。 |
ROLE_GRANTEES
この行でフィルタされたテーブルには、すべてのデータベース ロールに明示的に付与されたすべてのロール メンバーシップが一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース ロールまたは現在のデータベース ロールがメンバーであるロールに付与されているロール メンバーシップのみを見ることができます。
すべてのデータベース ロールがパブリック ロールのメンバーであるため、結果からパブリック ロールへの暗黙的なメンバーシップのレコードが除外されます。
列名 | 型 | 説明 |
---|---|---|
ROLE_NAME |
STRING |
このメンバーシップが付与されているデータベース ロールの名前。 |
GRANTEE |
STRING |
このメンバーシップが付与されるデータベース ロールの名前。 |
CHANGE_STREAMS
この表では、データベースの変更ストリームをすべて列挙し、特定のテーブルまたは列に対してデータベース全体を追跡するものを示します。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース・ロール、現在のデータベース・ロールがメンバーとなっているロール、または public
に SELECT
微細アクセス制御の権限が付与されている変更ストリームのみを見ることができます。
列名 | 型 | 説明 |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
変更ストリームのカタログ名。常に空の文字列。 |
CHANGE_STREAM_SCHEMA |
STRING |
この変更ストリームのスキーマ名。常に空の文字列。 |
CHANGE_STREAM_NAME |
STRING |
変更ストリームの名前。 |
ALL |
BOOL |
TRUE (この変更ストリームがデータベース全体を追跡する場合)。
この変更ストリームで特定のテーブルまたは列を追跡する場合、FALSE 。
|
CHANGE_STREAM_TABLES
この行フィルタリングされたテーブルには、テーブルとそれらを監視する変更ストリームに関する情報が含まれています。各行は、1 つのテーブルと 1 つの変更ストリームを表します。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース・ロール、現在のデータベース・ロールがメンバーとなっているロール、または public
に SELECT
権限が付与されている変更ストリームの行のみが表示されます。
CHANGE_STREAM_TABLES
のデータには、データベース全体を追跡するテーブルと変更ストリーム間の暗黙的な関係は含まれません。
列名 | 型 | 説明 |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
変更ストリームのカタログ名。常に空の文字列。 |
CHANGE_STREAM_SCHEMA |
STRING |
変更ストリームのスキーマ名。常に空の文字列。 |
CHANGE_STREAM_NAME |
STRING |
この行が参照する変更ストリーム名。 |
TABLE_CATALOG |
STRING |
テーブルのカタログ名。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
テーブルのスキーマ名。常に空の文字列。 |
TABLE_NAME |
STRING |
この行が参照するテーブルの名前。 |
ALL_COLUMNS |
BOOL |
TRUE (この行の変更ストリームが、この行が参照しているテーブル全体を追跡する場合)。そうでない場合は FALSE 。 |
CHANGE_STREAM_COLUMNS
この行フィルタリングされたテーブルには、テーブルの列と、それらを監視する変更ストリームに関する情報が含まれています。各行は 1 つの変更ストリームと 1 つの列を表します。変更ストリームがテーブル全体を追跡している場合、そのテーブルの列はこのビューに表示されません。
データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース・ロール、現在のデータベース・ロールがメンバーとなっているロール、または public
に SELECT
権限が付与されている変更ストリームの行のみが表示されます。
列名 | 型 | 説明 |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
変更ストリームのカタログ名。常に空の文字列。 |
CHANGE_STREAM_SCHEMA |
STRING |
変更ストリームのスキーマ名。常に空の文字列。 |
CHANGE_STREAM_NAME |
STRING |
変更ストリームの名前。 |
TABLE_CATALOG |
STRING |
テーブルのカタログ名。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
テーブルのスキーマ名。常に空の文字列。 |
TABLE_NAME |
STRING |
この行が参照するテーブルの名前。 |
COLUMN_NAME |
STRING |
この行が参照する列の名前。 |
CHANGE_STREAM_OPTIONS
この行フィルタリングされた表には、変更ストリームの構成オプションが含まれています。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース・ロール、現在のデータベース・ロールがメンバーとなっているロール、または public
に SELECT
権限が付与されている変更ストリームのオプション
のみを見ることができます。
列名 | 型 | 説明 |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
変更ストリームのカタログ名。常に空の文字列。 |
CHANGE_STREAM_SCHEMA |
STRING |
変更ストリームのスキーマ名。常に空の文字列。 |
CHANGE_STREAM_NAME |
STRING |
変更ストリームの名前。 |
OPTION_NAME |
STRING |
変更ストリーム オプションの名前。 |
OPTION_TYPE |
STRING |
変更ストリーム オプションのデータ型。 |
OPTION_VALUE |
STRING |
変更ストリーム オプションの値。 |
CHANGE_STREAM_PRIVILEGES
この行でフィルタされたテーブルには、public
を含む任意のデータベース ロールのすべての変更ストリームに付与されているすべての詳細なアクセス制御権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース、現在のデータベース ロールがメンバーであるロールまたは public
に対する変更ストリームに付与されている権限のみを表示できます。
列名 | 型 | 説明 |
---|---|---|
CHANGE_STREAM_CATALOG
|
STRING
|
変更ストリームを含むカタログの名前(空の文字列)。 |
CHANGE_STREAM_SCHEMA
|
STRING
|
変更ストリームを含むスキーマの名前(空の文字列)。 |
CHANGE_STREAM_NAME
|
STRING
|
変更ストリームの名前。 |
PRIVILEGE_TYPE
|
STRING
|
SELECT (変更ストリームで使用できる唯一の権限)。
|
GRANTEE
|
STRING
|
この権限が付与されているデータベース ロールの名前。 |
ROUTINES
この行でフィルタされたテーブルには、データベースの変更ストリーム読み取り関数をすべて一覧表示します。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、またはpublic
、きめ細かいEXECUTE
アクセス制御特権が付与されている変更ストリーム読み取り機能のみが表示されます。
列名 | 型 | 説明 |
---|---|---|
SPECIFIC_CATALOG |
STRING |
ルーティンのカタログ名。常に空の文字列。 |
SPECIFIC_SCHEMA |
STRING |
ルーティンのスキーマ名。常に空の文字列。 |
SPECIFIC_NAME |
STRING |
ルーティンの名前名前がオーバーロードされている場合でも、ルーティンを一意に識別します。 |
ROUTINE_CATALOG |
STRING |
ルーティンのカタログ名。常に空の文字列。 |
ROUTINE_SCHEMA |
STRING |
ルーティンのスキーマ名。常に空の文字列。 |
ROUTINE_NAME |
STRING |
ルーティンの名前(オーバーロードの場合、重複することがあります)。 |
ROUTINE_TYPE |
STRING |
ルーティンのタイプ(FUNCTION または PROCEDURE )。常に FUNCTION |
DATA_TYPE |
STRING |
ルーティンが返すデータ型。 |
ROUTINE_BODY |
STRING |
ルーティン本文のタイプ(SQL または EXTERNAL )。 |
ROUTINE_DEFINITION |
STRING |
ROUTINE_BODY の定義。 |
SECURITY_TYPE |
STRING |
ルーティンのセキュリティ タイプ。常に INVOKER 。 |
ROUTINE_OPTIONS
この行でフィルタされたテーブルには、定義された変更ストリーム読み取り関数ごとに 1 つの行が表示されます。
データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、またはpublic
、きめ細かいEXECUTE
アクセス制御特権が付与されている変更ストリーム読み取り機能のオプションのみが表示されます。
列名 | 型 | 説明 |
---|---|---|
SPECIFIC_CATALOG
|
STRING
|
ルーティンのカタログ名。常に空の文字列。 |
SPECIFIC_SCHEMA
|
STRING
|
ルーティンのスキーマ名。常に空の文字列。 |
SPECIFIC_NAME
|
STRING
|
ルーティンの名前名前のオーバーロードの場合にルーティンを一意に識別します。 |
OPTION_NAME
|
STRING
|
オプションを一意に識別する SQL 識別子。 |
OPTION_TYPE
|
STRING
|
OPTION_VALUE のデータ型。
|
OPTION_VALUE
|
STRING
|
このオプションの値を表す SQL リテラル。 この列の値は、クエリの一部として解析可能でなければなりません。 |
PARAMETERS
この行でフィルタされたテーブルには、各変更ストリーム読み取り関数の引数が定義されています。各行は、1 つの変更ストリーム読み取り関数の 1 つの引数を表します。
データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベースロール、現在のデータベースロールがメンバーであるロール、またはpublic
、きめ細かいEXECUTE
アクセス制御特権が付与されている変更ストリーム読み取り機能のパラメータのみが表示されます。
列名 | 型 | 説明 |
---|---|---|
SPECIFIC_CATALOG |
STRING |
ルーティンのカタログ名。常に空の文字列。 |
SPECIFIC_SCHEMA |
STRING |
ルーティンのスキーマ名。常に空の文字列。 |
SPECIFIC_NAME |
STRING |
ルーティンの名前名前のオーバーロードの場合にルーティンを一意に識別します。 |
ORDINAL_POSITION |
INT64 |
ルーティン内のパラメータの順序位置(1 から始まる値)。 |
PARAMETER_NAME |
STRING |
パラメータの名前。 |
DATA_TYPE |
STRING |
パラメータのデータタイプ。 |
ROUTINE_PRIVILEGES
この行でフィルタされたテーブルには、public
を含むすべてのデータベース ロールのすべての変更ストリーム読み取り関数に付与されているすべてのきめ細かいアクセス制御権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース、現在のデータベース ロールがメンバーであるロールまたは public
に対する変更ストリームに付与されている権限のみを表示できます。
列名 | 型 | 説明 |
---|---|---|
SPECIFIC_CATALOG |
STRING |
ルーティンのカタログ名。常に空の文字列。 |
SPECIFIC_SCHEMA |
STRING |
ルーティンのスキーマ名。常に空の文字列。 |
SPECIFIC_NAME |
STRING |
ルーティンの名前名前のオーバーロードの場合にルーティンを一意に識別します。 |
PRIVILEGE_TYPE |
STRING |
常に EXECUTE です。
|
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
ROLE_TABLE_GRANTS
この行でフィルタされたテーブルには、public
を含むすべてのデータベース ロールのすべてのテーブルとビューに付与されているすべてのきめ細かいアクセス制御権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース ロールと、現在のデータベース ロールがメンバーであるロール(public
を除く)に付与されているテーブルとビューに関する権限のみを表示できます。
列名 | 型 | 説明 |
---|---|---|
GRANTOR |
STRING |
使用されません。常に NULL です。 |
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
TABLE_CATALOG |
STRING |
使用されません。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
TABLE_NAME |
STRING |
テーブルまたはビューの名前。 |
PRIVILEGE_TYPE |
STRING |
権限のタイプ(SELECT 、INSERT 、UPDATE 、DELETE )。 |
IS_GRANTABLE |
STRING |
使用されません。常に NO です。 |
ROLE_COLUMN_GRANTS
この行でフィルタされたテーブルには、public
を含む任意のデータベース ロールに付与されているすべての列に関するアクセス制御権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルには、現在のデータベース ロールの変更ロールと、現在のデータベース ロールがメンバーであるロール(public
を除く)の列に付与されている権限のみが表示されます。
ビューには、列を含むテーブルまたはビューから列が継承する SELECT
、INSERT
、UPDATE
の権限が含まれます。
列名 | 型 | 説明 |
---|---|---|
GRANTOR |
STRING |
使用されません。常に NULL です。 |
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
TABLE_CATALOG |
STRING |
使用されません。常に空の文字列。 |
TABLE_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
TABLE_NAME |
STRING |
列を含むテーブルまたはビューの名前。 |
COLUMN_NAME |
STRING |
権限が付与される列の名前。 |
PRIVILEGE_TYPE |
STRING |
権限のタイプ(SELECT 、INSERT 、UPDATE )。 |
IS_GRANTABLE |
STRING |
使用されません。常に NO です。 |
ROLE_CHANGE_STREAM_GRANTS
この行でフィルタされたテーブルには、public
を含むすべてのデータベース ロールのすべての変更ストリームに付与されている SELECT
権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルには、現在のデータベース ロールの変更ロールと、現在のデータベース ロールがメンバーであるロール(public
を除く)に付与されている権限のみが表示されます。
列名 | 型 | 説明 |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
使用されません。常に空の文字列。 |
CHANGE_STREAM_SCHEMA |
STRING |
変更ストリームを含むスキーマの名前。 |
CHANGE_STREAM_NAME |
STRING |
変更ストリームの名前。 |
PRIVILEGE_TYPE |
STRING |
権限のタイプ(SELECT のみ)。 |
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
ROLE_MODEL_GRANTS
この行でフィルタされたテーブルには、public
を含む任意のデータベース ロールに付与されているすべてのモデルに関する詳細なアクセス制御権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース ロールと、現在のデータベース ロールがメンバーであるロール(public
を除く)に付与されているテーブルとビューに関する権限のみを表示できます。
列名 | 型 | 説明 |
---|---|---|
GRANTOR |
STRING |
使用されません。常に NULL です。 |
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
MODEL_CATALOG |
STRING |
使用されません。常に空の文字列。 |
MODEL_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
MODEL_NAME |
STRING |
モデルの名前。 |
PRIVILEGE_TYPE |
STRING |
権限のタイプ(EXECUTE )。 |
IS_GRANTABLE |
STRING |
使用されません。常に NO です。 |
ROLE_ROUTINE_GRANTS
この行でフィルタされたテーブルには、public
を含むすべてのデータベース ロールのすべての変更ストリーム読み取り関数に付与されている EXECUTE
権限が一覧表示されます。IAM データベース レベルの権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルには、現在のデータベース ロールと、現在のデータベース ロールがメンバーであるロール(public
を除く)の変更ストリーム読み取り関数で付与される権限のみが表示されます。
列名 | 型 | 説明 |
---|---|---|
GRANTOR
|
STRING
|
使用されません。常に NULL です。 |
GRANTEE
|
STRING
|
権限が付与されるロールの名前。 |
SPECIFIC_CATALOG
|
STRING
|
ルーティン カタログの名前。 |
SPECIFIC_SCHEMA
|
STRING
|
ルーティン スキーマの名前。 |
SPECIFIC_NAME
|
STRING
|
ルーティンの名前名前のオーバーロードの場合にルーティンを一意に識別します。 |
PRIVILEGE_TYPE
|
STRING
|
付与される権限のタイプ。常に EXECUTE です。 |
IS_GRANTABLE
|
STRING
|
使用されません。常に NO です。 |
MODELS
この表に、データベースのすべてのモデルを示します。
列名 | 型 | 説明 |
---|---|---|
MODEL_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
MODEL_SCHEMA |
STRING |
このモデルのスキーマ名。常に空の文字列。 |
MODEL_NAME |
STRING |
モデルの名前。 |
IS_REMOTE |
BOOL |
リモートモデルの場合は TRUE 。マネージド モデルの場合は FALSE 。 |
MODEL_OPTIONS
次の表に、モデルの構成オプションを示します。
列名 | 型 | 説明 |
---|---|---|
MODEL_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
MODEL_SCHEMA |
STRING |
このモデルのスキーマ名。常に空の文字列。 |
MODEL_NAME |
STRING |
モデルの名前。 |
OPTION_NAME |
STRING |
モデル オプションの名前。 |
OPTION_TYPE |
STRING |
モデル オプションのデータ型。 |
OPTION_VALUE |
STRING |
モデル オプションの値。 |
MODEL_COLUMNS
このテーブルには、モデル内の列が一覧表示されます。
列名 | 型 | 説明 |
---|---|---|
MODEL_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
MODEL_SCHEMA |
STRING |
このモデルのスキーマ名。常に空の文字列。 |
MODEL_NAME |
STRING |
モデルの名前。 |
COLUMN_KIND |
STRING |
モデル列の種類。"INPUT" または "OUTPUT" のいずれかです。 |
COLUMN_NAME |
STRING |
列の名前。 |
DATA_TYPE |
STRING |
列の標準 SQL データ型。 |
ORDINAL_POSITION |
INT64 |
宣言された列の順序を保持するため、値が 1 で始まる列の順序位置。 |
IS_EXPLICIT |
BOOL |
列が DDL で明示的に指定されている場合は TRUE 、列がエンドポイントから検出された場合は FALSE 。 |
MODEL_COLUMN_OPTIONS
次の表に、モデル列の構成オプションを示します。
列名 | 型 | 説明 |
---|---|---|
MODEL_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
MODEL_SCHEMA |
STRING |
このモデルのスキーマ名。常に空の文字列。 |
MODEL_NAME |
STRING |
モデルの名前。 |
COLUMN_KIND |
STRING |
モデル列の種類。"INPUT" または "OUTPUT" のいずれかです。 |
COLUMN_NAME |
STRING |
列の名前。 |
OPTION_NAME |
STRING |
モデル列オプションの名前。 |
OPTION_TYPE |
STRING |
モデル列オプションのデータ型。 |
OPTION_VALUE |
STRING |
モデル列オプションの値。 |
MODEL_PRIVILEGES
この行でフィルタされたテーブルには、public
を含むデータベース ロールにモデルレベルで付与されたすべての権限が一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、現在のデータベース・ロール、現在のデータベース・ロールがメンバーとなっているロール、または public
に EXECUTE
というきめ細やかなアクセス制御権限が付与されているビューのみが表示されます。
列名 | 型 | 説明 |
---|---|---|
MODEL_CATALOG |
STRING |
使用されません。常に空の文字列。 |
MODEL_SCHEMA |
STRING |
使用されません。常に空の文字列。 |
MODEL_NAME |
STRING |
きめ細やかなアクセス制御権限が付与されるモデルの名前。 |
PRIVILEGE_TYPE |
STRING |
EXECUTE > |
GRANTEE |
STRING |
この権限が付与されているデータベース ロールの名前。 |
PROPERTY_GRAPHS
この行でフィルタされたテーブルには、データベース内のプロパティグラフが一覧表示されます。データベース レベルの IAM 権限を持つプリンシパルと、spanner_info_reader
システム・ロールまたはそのロールのメンバーへのアクセス権を付与されたプリンシパルは、このビューのすべての行を表示できます。他のすべてのプリンシパルは、それらのグラフの定義に使用されるすべてのテーブルを表示するための要件を満たしている場合にのみ、プロパティグラフを表示できます。
列名 | 型 | 説明 |
---|---|---|
PROPERTY_GRAPH_CATALOG |
STRING |
カタログ名。常に空の文字列。 |
PROPERTY_GRAPH_SCHEMA |
STRING |
スキーマ名。名前が付いていない場合は空の文字列。 |
PROPERTY_GRAPH_NAME |
STRING |
プロパティ グラフの名前。 |
PROPERTY_GRAPH_METADATA_JSON |
JSON |
プロパティグラフの定義(JSON 形式)。 |
PROPERTY_GRAPH_METADATA_JSON
列には、次のように定義された PropertyGraph
JSON オブジェクトが含まれています。
JSON オブジェクト名 | フィールド名 | JSON 型 | 説明 |
---|---|---|---|
PropertyGraph |
catalog |
string |
カタログ名。常に空の文字列。 |
schema |
string |
スキーマ名。名前が付いていない場合は空の文字列。 | |
name |
string |
プロパティ グラフの名前。 | |
nodeTables |
array<object> |
ノードの GraphElementTable オブジェクトのリスト。 |
|
edgeTables |
array<object> |
エッジの GraphElementTable オブジェクトのリスト。 |
|
labels |
array<object> |
GraphElementLabel オブジェクトのリスト。 |
|
propertyDeclarations |
array<object> |
GraphPropertyDeclaration オブジェクトのリスト。 |
|
GraphElementTable |
name |
string |
グラフ要素テーブルの名前。 |
kind |
string |
NODE または EDGE のいずれか。 |
|
baseCatalogName |
string |
ベーステーブルを含むカタログの名前。 | |
baseSchemaName |
string |
ベーステーブルを含むスキーマの名前。 | |
baseTableName |
string |
要素が作成される入力テーブルの名前。 | |
keyColumns |
array<string> |
要素キーを構成する列名。 | |
labelNames |
array<string> |
この要素テーブルに適用されているラベル名。 | |
propertyDefinitions |
array<object> |
GraphPropertyDefinition オブジェクトのリスト。 |
|
sourceNodeTable |
object |
GraphNodeTableReference オブジェクト。 kind が EDGE の場合にのみ存在します。 |
|
destinationNodeTable |
object |
GraphNodeTableReference オブジェクト。 kind が EDGE の場合にのみ存在します。 |
|
GraphNodeTableReference |
nodeTableName |
string |
グラフ要素テーブルの名前。 |
edgeTableColumns |
array<string> |
エッジのソースキーと宛先キーに関連付けられている列の名前。 | |
nodeTableColumns |
array<string> |
ノードのソースキーと宛先キーに関連付けられている列の名前。 | |
GraphElementLabel |
name |
string |
ラベルの名前。 |
propertyDeclarationNames |
array<string> |
このラベルに関連付けられているプロパティの名前。 | |
GraphPropertyDeclaration |
name |
string |
プロパティの名前。 |
type |
string |
プロパティのタイプ。 | |
GraphPropertyDefinition |
propertyDeclarationName |
string |
プロパティの名前。 |
valueExpressionSql |
string |
プロパティを定義する式。 |
例
ユーザーのスキーマの各テーブルに関する情報を返します。
SELECT
t.table_name,
t.parent_table_name
FROM
information_schema.tables AS t
WHERE
t.table_catalog = ''
AND
t.table_schema = ''
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name
INFORMATION_SCHEMA 内のすべてのテーブルの名前を返します。
SELECT
t.table_name
FROM
information_schema.tables AS t
WHERE
t.table_schema = "SPANNER_SYS"
ユーザー テーブル MyTable
の列に関する情報を返します。
SELECT
t.column_name,
t.spanner_type,
t.is_nullable
FROM
information_schema.columns AS t
WHERE
t.table_catalog = ''
AND
t.table_schema = ''
AND
t.table_name = 'MyTable'
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name,
t.ordinal_position
データベースのデフォルトのリーダー リージョンに関する情報を返します。デフォルトのリーダーが設定されていない場合は空の値が返されます。
SELECT
s.option_name,
s.option_value
FROM
information_schema.database_options s
WHERE
s.option_name = 'default_leader'
ユーザーのスキーマにある各インデックスの情報を返します。
SELECT
t.table_name,
t.index_name,
t.parent_table_name
FROM
information_schema.indexes AS t
WHERE
t.table_catalog = ''
AND
t.table_schema = ''
AND
t.index_type != 'PRIMARY_KEY'
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name,
t.index_name
デフォルト以外のオプションを使用するすべての列を返します。
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_catalog = ''
AND
t.table_schema = ''
現在のオプティマイザ関連のデータベース オプションを返します。
SELECT
s.option_name,
s.option_value
FROM
information_schema.database_options s
WHERE
s.schema_name=''
AND s.option_name IN ('optimizer_version',
'optimizer_statistics_package')
使用可能なすべての統計情報パッケージを返します。
SELECT
*
FROM
information_schema.spanner_statistics;
すべてのシーケンスを返します。
SELECT
*
FROM
information_schema.sequences;
「MySequence」という名前のシーケンスのすべてのシーケンス オプションを返します。
SELECT
*
FROM
information_schema.sequence_options WHERE name="MySequence";
すべてのプロパティグラフの名前とその定義を返します。
SELECT
property_graph_name,
property_graph_metadata_json
FROM
information_schema.property_graphs
すべてのプロパティグラフの名前を、ラベルとプロパティとともに返します。
SELECT
property_graph_name,
property_graph_metadata_json.labels,
property_graph_metadata_json.propertyDeclarations
FROM
information_schema.property_graphs
次のステップ
- データベースの問題の調査に役立つ、利用可能なイントロスペクション ツールについての学習。