From c4d3b604b896d1256889c501663a6198d78ec2b9 Mon Sep 17 00:00:00 2001 From: KOIZUMI Satoru Date: Wed, 16 Sep 2026 19:37:20 +0900 Subject: [PATCH] update contrib-spi for 18.6 --- doc/src/sgml/contrib-spi.sgml | 55 ++++++++++++++++++++--------------- 1 file changed, 32 insertions(+), 23 deletions(-) diff --git a/doc/src/sgml/contrib-spi.sgml b/doc/src/sgml/contrib-spi.sgml index 0c9fd0ddb59..0b40e84644f 100644 --- a/doc/src/sgml/contrib-spi.sgml +++ b/doc/src/sgml/contrib-spi.sgml @@ -53,11 +53,9 @@ key mechanism, of course, but the module is still useful as an example. This module will be removed in PostgreSQL 20.) --> -《マッチ度[75.218659]》check_primary_key()およびcheck_foreign_key()は、外部キー制約を検査するために使用されます。 -(当然ながら、この機能はかなり前に組み込みの外部キー機能に取って代わりました。しかし例としてはまだ有用です。) -《機械翻訳》check_primary_key()check_foreign_key()はチェック外部キー制約に使用されます。 -(この機能は、もちろん組み込みの外部キーメカニズムに取って代わられてからかなり経っていますが、このモジュールは例として今でも有用です。 -このモジュールはPostgreSQL20.で削除されます。 +check_primary_key()およびcheck_foreign_key()は、外部キー制約を検査するために使用されます。 +(当然ながら、この機能はかなり前に組み込みの外部キー機能に取って代わりました。しかし例としてはまだ有用です。 +このモジュールはPostgreSQL 20で削除されます。) @@ -67,7 +65,7 @@ secure schema usage pattern and data types where the equality operator is named =. --> -《機械翻訳》refintには、セキュアスキーマ使用パターンタイプと、データが記名的である等価演算子タイプが必要です=. +refintには、安全なスキーマ使用パターンと、等価演算子が=という名前であるデータ型が必要です。 @@ -99,18 +97,23 @@ column name arguments should not be double quoted. See the following mock example of proper use of check_primary_key(): --> -《機械翻訳》check_primary_key()被参照テーブル名前とカラム名前の引数は、内部で生成されたSQL文にそのままコピーされるため、CREATE TRIGGERコマンドで必要に応じてユーザで二重引用符で囲む必要があります。 +check_primary_key()被参照テーブル名と列名の引数は、内部で生成されたSQL文にそのままコピーされるため、CREATE TRIGGERコマンドで必要に応じてユーザで二重引用符で囲む必要があります。 SQL識別子の引用符付けの詳細は、を参照してください。 -逆に、参照テーブル列名前の引数は二重引用符で囲む必要はありません。 -check_primary_key():の正しい使用方法については、次の模擬例を参照してください。 +逆に、参照テーブル列名の引数は二重引用符で囲む必要はありません。 +check_primary_key()の正しい使用方法については、次の模擬例を参照してください。 CREATE TRIGGER mytrigger AFTER INSERT OR UPDATE ON referencing_table FOR EACH ROW EXECUTE PROCEDURE check_primary_key ( - 'column A', 'column B', -- referencing table columns - 'myschema."referenced table"', -- referenced table - '"column A"', '"column B"' -- referenced table columns + + 'column A', 'column B', -- 参照テーブル列 + 'myschema."referenced table"', -- 被参照テーブル + '"column A"', '"column B"' -- 被参照テーブル列 ); @@ -132,9 +135,9 @@ check_primary_key ( primary/unique key columns should be marked NOT NULL and should have a unique index. --> -《マッチ度[94.533030]》check_foreign_key()は被参照テーブルを検査します。 +check_foreign_key()は被参照テーブルを検査します。 使用方法は、この関数を使用するAFTER DELETE OR UPDATEトリガを他のテーブルで参照されるテーブルに作成することです。 -トリガ引数は、この関数が検査を実行しなければならない参照テーブル数、参照キーが見つかった場合の動作(cascade — 参照行を削除、restrict — 参照キーが存在する場合トランザクションをアボート、setnull —参照キーフィールドをNULLに設定)、主/一意キーを形成するトリガを発行したテーブルの列名、参照テーブルの名前と列名(最初の引数で指定された数のテーブル分繰り返す)です。 +トリガ引数は、この関数が検査を実行しなければならない参照テーブル数、参照キーが見つかった場合の動作(cascade — 参照行を削除、restrict — 参照キーが存在する場合トランザクションをアボート、setnull —参照キーフィールドをNULLに設定)、主/一意キーを形成する被参照テーブルの列名、参照テーブルの名前と列名(最初の引数で指定された数のテーブル分繰り返す)です。 主/一意キー列はNOT NULLと指定されていなければならず、また、一意性インデックスを持つべきであることに注意してください。 @@ -150,21 +153,27 @@ check_primary_key ( table column name arguments should not be double quoted. See the following mock example of proper use of check_foreign_key(): --> -《機械翻訳》check_foreign_key()参照テーブル名前とカラム名前の引数は、内部で生成されたSQL文にそのままコピーされるため、CREATE TRIGGERコマンドで必要に応じてユーザで二重引用符で囲む必要があります。 +check_foreign_key()参照テーブル名と列名の引数は、内部で生成されたSQL文にそのままコピーされるため、CREATE TRIGGERコマンドで必要に応じてユーザで二重引用符で囲む必要があります。 SQL識別子の引用符付けの詳細は、を参照してください。 -逆に、被参照テーブル列名前の引数は二重引用符で囲む必要はありません。 -check_foreign_key():の正しい使用方法については、次の模擬例を参照してください。 - +逆に、被参照テーブル列名の引数は二重引用符で囲む必要はありません。 +check_foreign_key()の正しい使用方法については、次の模擬例を参照してください。 CREATE TRIGGER mytrigger AFTER DELETE OR UPDATE ON referenced_table FOR EACH ROW EXECUTE PROCEDURE check_foreign_key ( - 1, -- number of referencing tables - 'cascade', -- action - 'column A', 'column B', -- referenced table columns - 'myschema."referencing table"', -- referencing table - '"column A"', '"column B"' -- referencing table columns + + 1, -- 参照テーブルの数 + 'cascade', -- アクション + 'column A', 'column B', -- 被参照テーブル列 + 'myschema."referencing table"', -- 参照テーブル + '"column A"', '"column B"' -- 参照テーブル列 );