ホームページ php教程 PHP开发 SQLトリガー(挿入、更新、削除)

SQLトリガー(挿入、更新、削除)

Dec 14, 2016 pm 04:19 PM
SQLトリガー

--トリガーを挿入
作成トリガー tri_insert
on Student --挿入用に変更されるテーブルの名前
--データをテーブルに挿入するときにトリガーされます
as
declare @student_id char(10) --定義変数
SELECT @student_id=s.student_id from — クエリされた指定されたフィールドの値を変数に割り当てます
student の内部結合が i
on s.student_id=i.student_id
if @student_id='0000000001'
begin
Raiserror( '学生番号 1 は挿入できません!',16,8)
rollback tran
end
go

--更新トリガー
学生のトリガー tri_update
を作成します —更新用に変更されるテーブルの名前
—テーブルへ データの一部が変更されたときにトリガーされます
as
if update(student_id)
begin
Raiserror('学生 ID は変更できません!',16,8)
rollback tran
end
go


--deleteトリガー
作成トリガー tri_delete
on Student -- 削除するために変更されるテーブルの名前
-- データがテーブルから削除されるときにトリガー
@student_id varchar(10) を宣言
select @student_id=student_id from selected
if @student_id='admin'
begin
Raiserror('error',16,8)
rollback tran
end

説明: データを削除するときは、データベースが削除対象のデータを配置すると想定できます。削除された一時テーブルに挿入することは、通常のテーブルの読み取りと同じであり、削除されたテーブルからフィールドを選択して挿入することも同じですが、挿入されるデータが挿入されたテーブルに配置される点が異なります。

更新操作は、最初に行レコードを削除し、次に挿入するという 2 つの操作を実行すると考えることができます。このため、更新操作は実際には削除されたテーブルと挿入されたテーブルに対して行われるため、更新されたテーブルが存在しない場合があります。 2 つのテーブルには主キーと外部キーの関係があります。メイン テーブルのデータを削除する場合、この時点でトリガーを使用しても、サブテーブルに関連するデータも削除されます。 , このトリガーはテーブルを削除した後にトリガーされるため、この時点では直接終了され、「主キーと外部キーの関係があるため削除できません」というメッセージが表示されます。このような削除トリガーはすべて無効です。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)