Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

Foreach

いつトリガが起動されるかを制御します。

使用法

トリガがいつ起動されるかを指定するには、以下の構文を使用します。

Trigger name [ Event = sqlevent, Foreach = foreach ] 
{
   //implementation
}

foreach は以下のいずれかの値になります。

  • row — このトリガは、トリガ文の影響を受ける各行によって起動されます。行レベルのトリガは、TSQL ではサポートされていません。つまり、Language キーワードの設定は cache である必要があります。

  • row/object — このトリガは、トリガ文の影響を受ける各行、またはオブジェクト・アクセスによる変更によって起動します。行レベルのトリガは、TSQL ではサポートされていません。つまり、Language キーワードの設定は cache である必要があります。

    このオプションは、統一トリガを定義します。SQL またはオブジェクト・アクセスにより発生するデータ変更によって起動されるトリガであるため、そのように呼ばれます。(対照的に、他のトリガを使用すると、オブジェクト・アクセスによる変更の発生時に同じ論理を使用するには、%OnDelete() などのコールバックを実装する必要があります。)

  • statement — このトリガは、文全体で 1 回起動されます。文レベルのトリガは、ObjectScript と TSQL の両方でサポートされています。つまり、Language キーワードの設定には cache または tsql を使用できます。

詳細

いつトリガが起動されるかを制御します。

既定値

このキーワードを省略すると、トリガは行レベルのトリガになります。

例外

TSQL では、行レベル・トリガはサポートされていません。

関連項目

FeedbackOpens in a new tab