-2

テーブルの列に適用するトリガーを定義する必要があります。トリガーは、ユーザーが null 値ではなく重複する値を入力するように制限する必要があります。または、主キーのロジックを知る必要があると言うことができます。

4

3 に答える 3

2

「主キーの作り方を知りたいです(もちろんトリガーです)」

それについて「もちろん」はありません。制約はトリガーではありません。これは、インデックスと多くの低レベルのアクティビティを使用して、信頼性が高く効率的な方法でリレーショナル制約を適用する内部プロセスです。

ルールを学びたい場合は、非常に簡単です: 非 null、一意性、シリアル化。したがって、トリガーに主キーを実装してみてください。「変化するテーブル」の問題のために、できないことがわかります(ネタバレ注意!)。それが何を意味するのか理解できない場合は、読むべき良いトピックがあります.


「挿入前に値がnullで一意であってはならないことをチェックするトリガーを定義することはできませんか?」という質問があります。

その質問に対する答えは、いいえです。トリガーベースの実装をコーディングすることはできますが、他の「変更テーブル」の回避策と同様に、パッケージと AFTER ステートメントトリガーが必要になります (技術的には挿入前ではありません)。

しかし、真剣に、ポイントは何ですか?主キーが実際にどのように機能するかについては何も学びません。そして、変化するテーブルはほとんどの場合、不適切なデータ モデルを指しています。

于 2013-07-12T09:59:35.860 に答える