11
A
答えて
29
ON DELETE CASCADEとON DELETE RESTRICTは外部キーのプロパティで、2つのテーブル間の関係を作成するときに設定します。
リレーションシップをON DELETE CASCADEに設定すると、親テーブルでDELETEステートメントを実行すると、対応するすべての行が自動的にCHILDテーブルから削除されますが、RESTRICT(デフォルトの外部キー関係の動作)は、親テーブルから行を削除しようとしたときに、同じIDを持つ子テーブルに行がある場合、既存の子行について不平を言うことになります。
どちらの方法でも、DELETE句には何も言及する必要はありません。
私はまた、削除のために異なるルールに関するブログ記事を書いて、アップデートはここでは詳細にコマンド:
https://koukia.ca/sql-server-foreign-key-update-and-delete-rules-556cf09117fe
0
右ので、これらは、DELETEとON UPDATE ON親テーブル/行に適用されます。 NO ACTIONとRESTRICTが同じ理由は、親が存在しない場合は、子と親との関係を持つことができないためです。
4
ON DELETE CASCADEを
- 外部キーに関連付けられて削除上の3つのタイプがあります。データは、親テーブルから削除されたときに、自動的にデータが子テーブル(外部キーテーブル)から削除。
- On Delete Null:親テーブルからデータが削除されると、関連付けられた外部キーは子テーブルでヌルになります。
- 削除時の制限:データが親テーブルから削除され、子テーブルに関連付けられた外部キーがあるとエラーが発生した場合、レコードを削除することはできません。
関連する問題
- 1. 制限アソシエーションアクティブモデルシリアライザのカスケード
- 2. クエリセットの制限SQLデータベース
- 3. ライブラリー・データベースのER図とSQL DDL
- 4. sqlとmysqlの制限構文の違い
- 5. SQL DDL - 2属性のチェック制約
- 6. mySQL制限カスケードなしアクション設定
- 7. Powerapps SQL制限
- 8. LDAPデータベースとSQLまたはMySqlデータベースとの違い
- 9. データベース列の制限
- 10. SQLの制限の合計と制限の列
- 11. SQLカスタム制限
- 12. ChromeとAndroidのWeb SQLストレージの制限?
- 13. Sqlサーバーセッションコンテキストの制限
- 14. SQL文の制限
- 15. ASP.NET SQLのカスケードは
- 16. パッケージフレームワークの制限の相違
- 17. 制限付きワイルドカードと型パラメータの違いは何ですか?
- 18. Sql Express 2005の制限
- 19. SQL - JOINの制限情報
- 20. 毎日のタスクを制限するためのSQLの制約
- 21. phpとsqlの違いは?
- 22. MySQLとMS SQLデータベースとのコードの違いは?
- 23. SQL Server Express 4GB制限
- 24. BigQueryとCloud SpannerでのSQLの制限
- 25. Mysqlデータベース名の制限
- 26. Azure DocumentDBデータベース/コレクションの制限
- 27. 克服のWindows AzureのSQLデータベース150ギガバイトのサイズ制限
- 28. 制限付きオペレータでのSQLと
- 29. Azure SQLデータウェアハウスのダンプテーブルとDDLの表示
- 30. SQLサーバのテンポラリテーブルレコードの制限
私はON DELETE RESTRICTと言うと、親テーブルの削除された行は他のテーブルから削除されませんか? – user3102872
RESTRICTに設定すると、行(親または子)が削除されず、表示され、エラーが表示されます。子行の有無にかかわらず親行を削除したい場合は、NO ACTIONを使用してください。 – Aram
**カスケード**は、親を削除すると子も削除されることを意味します。 ** Restrict **は削除しようとするとエラーになります。 ** No Action **は、親を削除したときに子の中のものを変更しません。 ** Set default **は、親を削除するときに子をデフォルト値に設定します。 ** Set null **は、親が削除されたときに子をnullに設定します。私は正しい?ありがとうございました – user3102872