Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 32 additions & 23 deletions doc/src/sgml/contrib-spi.sgml
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,9 @@
key mechanism, of course, but the module is still useful as an example.
This module will be removed in <productname>PostgreSQL</productname> 20.)
-->
《マッチ度[75.218659]》<function>check_primary_key()</function>および<function>check_foreign_key()</function>は、外部キー制約を検査するために使用されます。
(当然ながら、この機能はかなり前に組み込みの外部キー機能に取って代わりました。しかし例としてはまだ有用です。)
《機械翻訳》<function>check_primary_key()</function>と<function>check_foreign_key()</function>はチェック外部キー制約に使用されます。
(この機能は、もちろん組み込みの外部キーメカニズムに取って代わられてからかなり経っていますが、このモジュールは例として今でも有用です。
このモジュールは<productname>PostgreSQL</productname>20.で削除されます。
<function>check_primary_key()</function>および<function>check_foreign_key()</function>は、外部キー制約を検査するために使用されます。
(当然ながら、この機能はかなり前に組み込みの外部キー機能に取って代わりました。しかし例としてはまだ有用です。
このモジュールは<productname>PostgreSQL</productname> 20で削除されます。)
</para>

<note>
Expand All @@ -67,7 +65,7 @@
<link linkend="ddl-schemas-patterns">secure schema usage pattern</link> and
data types where the equality operator is named <literal>=</literal>.
-->
《機械翻訳》<filename>refint</filename>には、<link linkend="ddl-schemas-patterns">セキュアスキーマ使用パターン</link>タイプと、データが記名的である等価演算子タイプが必要です<literal>=</literal>.
<filename>refint</filename>には、<link linkend="ddl-schemas-patterns">安全なスキーマ使用パターン</link>と、等価演算子が<literal>=</literal>という名前であるデータ型が必要です。

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

等価演算子が<literal>=</literal>という名前であるデータ型が必要です。

がちょっと分かりづらいように思いました。

等価演算子の名前が<literal>=</literal>であるデータ型が必要です。

とするのはどうでしょうか。

</para>
</note>

Expand Down Expand Up @@ -99,18 +97,23 @@
column name arguments should not be double quoted. See the following mock
example of proper use of <function>check_primary_key()</function>:
-->
《機械翻訳》<function>check_primary_key()</function><emphasis>被参照</emphasis>テーブル名前とカラム名前の引数は、内部で生成されたSQL文にそのままコピーされるため、<command>CREATE TRIGGER</command>コマンドで必要に応じてユーザで二重引用符で囲む必要があります。
<function>check_primary_key()</function><emphasis>被参照</emphasis>テーブル名と列名の引数は、内部で生成されたSQL文にそのままコピーされるため、<command>CREATE TRIGGER</command>コマンドで必要に応じてユーザで二重引用符で囲む必要があります。
SQL識別子の引用符付けの詳細は、<xref linkend="sql-syntax-identifiers"/>を参照してください。
逆に、<emphasis>参照</emphasis>テーブル列名前の引数は二重引用符で囲む必要はありません
<function>check_primary_key()</function>:の正しい使用方法については、次の模擬例を参照してください。
逆に、<emphasis>参照</emphasis>テーブル列名の引数は二重引用符で囲む必要はありません
<function>check_primary_key()</function>の正しい使用方法については、次の模擬例を参照してください。
<programlisting>
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', &#45;- referencing table columns
'myschema."referenced table"', &#45;- referenced table
'"column A"', '"column B"' &#45;- referenced table columns
-->
'column A', 'column B', -- 参照テーブル列
'myschema."referenced table"', -- 被参照テーブル
'"column A"', '"column B"' -- 被参照テーブル列
);
</programlisting>
</para>
Expand All @@ -132,9 +135,9 @@ check_primary_key (
primary/unique key columns should be marked NOT NULL and should have a
unique index.
-->
《マッチ度[94.533030]》<function>check_foreign_key()</function>は被参照テーブルを検査します。
<function>check_foreign_key()</function>は被参照テーブルを検査します。
使用方法は、この関数を使用する<literal>AFTER DELETE OR UPDATE</literal>トリガを他のテーブルで参照されるテーブルに作成することです。
トリガ引数は、この関数が検査を実行しなければならない参照テーブル数、参照キーが見つかった場合の動作(<literal>cascade</literal> &mdash; 参照行を削除、<literal>restrict</literal> &mdash; 参照キーが存在する場合トランザクションをアボート、<literal>setnull</literal> &mdash;参照キーフィールドをNULLに設定)、主/一意キーを形成するトリガを発行したテーブルの列名、参照テーブルの名前と列名(最初の引数で指定された数のテーブル分繰り返す)です。
トリガ引数は、この関数が検査を実行しなければならない参照テーブル数、参照キーが見つかった場合の動作(<literal>cascade</literal> &mdash; 参照行を削除、<literal>restrict</literal> &mdash; 参照キーが存在する場合トランザクションをアボート、<literal>setnull</literal> &mdash;参照キーフィールドをNULLに設定)、主/一意キーを形成する被参照テーブルの列名、参照テーブルの名前と列名(最初の引数で指定された数のテーブル分繰り返す)です。
主/一意キー列はNOT NULLと指定されていなければならず、また、一意性インデックスを持つべきであることに注意してください。
</para>

Expand All @@ -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 <function>check_foreign_key()</function>:
-->
《機械翻訳》<function>check_foreign_key()</function>参照テーブル名前とカラム名前の引数は、内部で生成されたSQL文にそのままコピーされるため、<command>CREATE TRIGGER</command>コマンドで必要に応じてユーザで二重引用符で囲む必要があります。
<function>check_foreign_key()</function>の<emphasis>参照</emphasis>テーブル名と列名の引数は、内部で生成されたSQL文にそのままコピーされるため、<command>CREATE TRIGGER</command>コマンドで必要に応じてユーザで二重引用符で囲む必要があります。
SQL識別子の引用符付けの詳細は、<xref linkend="sql-syntax-identifiers"/>を参照してください。
逆に、<emphasis>被参照</emphasis>テーブル列名前の引数は二重引用符で囲む必要はありません。
<function>check_foreign_key()</function>:の正しい使用方法については、次の模擬例を参照してください。
<emphasis></emphasis>
逆に、<emphasis>被参照</emphasis>テーブル列名の引数は二重引用符で囲む必要はありません。
<function>check_foreign_key()</function>の正しい使用方法については、次の模擬例を参照してください。
<programlisting>
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, &#45;- number of referencing tables
'cascade', &#45;- action
'column A', 'column B', &#45;- referenced table columns
'myschema."referencing table"', &#45;- referencing table
'"column A"', '"column B"' &#45;- referencing table columns
-->
1, -- 参照テーブルの数
'cascade', -- アクション
'column A', 'column B', -- 被参照テーブル列
'myschema."referencing table"', -- 参照テーブル
'"column A"', '"column B"' -- 参照テーブル列
);
</programlisting>
</para>
Expand Down
Loading