削除オプションで別の外部キーをテストしています。カスケードに疲れました。アクションはありません。nullに設定します。デフォルトに設定する以外はすべて機能します。SQL SERVERはエラーを報告するだけです:
メッセージ547、レベル16、状態0、1行目DELETEステートメントがFOREIGNKEY制約「FK_child_parent」と競合しました。データベース「Test」、テーブル「dbo.Test_parent」、列「no」で競合が発生しました。ステートメントは終了されました。
create table Test_parent(
[no] int primary key
)
CREATE TABLE test_child(
SUB1 INT,
[NO] int DEFAULT 0 CONSTRAINT FK_child_parent REFERENCES Test_parent([no]) ON DELETE set default
)
insert into Test_parent values(1),(2)
insert into test_child values(1, 1)
insert into test_child values(2, 1)
delete from Test_parent