検索
ホームページデータベースSQLSQL外部キーステートメントの書き方

外部キーは、2つのテーブルとフォースデータの整合性の間の関連性を確立するために使用されるデータベース関係です。 SQLの外部キー制約構文は次のとおりです。テーブルChild_table Add addifice extional key(column_name)参照parent_table(column_name)。 SQLが提供する外部キー制約タイプには、次のものが含まれます。

SQL外部キーステートメントの書き方

SQL外部キーステートメント

外国の鍵とは何ですか?

外部キーは、2つのテーブル間の関連付けを作成するために使用されるデータベース関係です。別のテーブルのプライマリキー列を参照することにより、データの整合性を強制します。

外部キー構文

SQLでは、次の構文を使用して外部キーの制約を作成できます。

 <code class="sql">ALTER TABLE child_table ADD FOREIGN KEY (column_name) REFERENCES parent_table(column_name)</code>

で:

  • child_tableは、外部キー列を含むテーブルです。
  • column_nameは、 child_tableの外部キー列です。
  • parent_table 、参照されるプライマリキー列を含むテーブルです。
  • column_nameは、 parent_tableの主要な列です。

外部キー制約タイプ

SQLは、次のタイプの外部キーの制約を提供します。

  • 削除cascade:親テーブルのレコードが削除されると、レコードを参照する子テーブルのすべてのレコードが自動的に削除されます。
  • 削除済みnull:親テーブルのレコードが削除された場合、レコードを参照する子テーブルの外部キー列はnullです。
  • 削除設定でデフォルト:親テーブルのレコードが削除された場合、レコードを参照する子テーブルの外部キー列はデフォルト値に設定されます。
  • Cascadeの更新:親テーブルのレコードが更新されると、レコードを参照する子テーブルのすべてのレコードが自動的に更新されます。
  • 更新でnull:親テーブルのレコードが更新されると、レコードを参照する子テーブルの外部キー列がnullです。
  • デフォルトの更新で:親テーブルのレコードが更新されると、レコードを参照する子テーブルの外部キー列がデフォルト値に設定されます。

次のSQLステートメントはordersテーブルとcustomersテーブルの間に外部キーを作成します。

 <code class="sql">ALTER TABLE orders ADD FOREIGN KEY (customer_id) REFERENCES customers(customer_id) ON DELETE CASCADE</code>

これはordersテーブルのcustomer_id列がcustomersテーブルのcustomer_idプライマリキーを参照することを意味します。 customersテーブルのレコードが削除されると、レコードを参照するordersテーブルのすべてのレコードも削除されます。

以上がSQL外部キーステートメントの書き方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
OLTP対OLAP:ビッグデータはどうですか?OLTP対OLAP:ビッグデータはどうですか?May 14, 2025 am 12:06 AM

oltpandolaparebothessentialforbigdata:oltphandlesreal-timetransactions、whilelapanalyzeslaredatasets.1)oltprequiresscaling withtechnologiesqlforbigdata、faceingchallengesinconsistencisanding.2

SQLのパターンマッチングとは何ですか?それはどのように機能しますか?SQLのパターンマッチングとは何ですか?それはどのように機能しますか?May 13, 2025 pm 04:09 PM

PatternMatchingInsqlusesthelikeoperatorandRegularexpressionStoseartextextpatterns.ItenablesFlexibledataqueryingwithcardslike%and_、andregexforcomplexMatches

学習SQL:課題と報酬の理解学習SQL:課題と報酬の理解May 11, 2025 am 12:16 AM

学習SQLには、基本的な知識、コアクエリ、複雑な結合操作、パフォーマンスの最適化をマスターする必要があります。 1.表、行、列、さまざまなSQL方言などの基本概念を理解します。 2。クエリに選択されたステートメントを使用するのに習熟しています。 3.結合操作をマスターして、複数のテーブルからデータを取得します。 4.クエリパフォーマンスを最適化し、一般的なエラーを避け、インデックスと説明コマンドを使用します。

SQL:その目的と機能を発表しますSQL:その目的と機能を発表しますMay 10, 2025 am 12:20 AM

SQLのコアコンセプトには、CRUD操作、クエリの最適化、パフォーマンスの改善が含まれます。 1)SQLは、リレーショナルデータベースの管理と操作に使用され、CRUD操作をサポートします。 2)クエリの最適化には、解析、最適化、実行段階が含まれます。 3)インデックスの使用を通じてパフォーマンスの改善を実現し、Select*を回避し、適切な参加型とページネーションクエリを選択します。

SQLセキュリティベストプラクティス:データベースを脆弱性から保護しますSQLセキュリティベストプラクティス:データベースを脆弱性から保護しますMay 09, 2025 am 12:23 AM

SQLインジェクションを防ぐためのベストプラクティスには、1)パラメーター化されたクエリの使用、2)入力検証、3)最小許可原則、4)ORMフレームワークを使用します。これらの方法により、データベースはSQLインジェクションおよびその他のセキュリティの脅威から効果的に保護できます。

MySQL:SQLの実用的なアプリケーションMySQL:SQLの実用的なアプリケーションMay 08, 2025 am 12:12 AM

MySQLは、優れたパフォーマンスと使いやすさとメンテナンスのために人気があります。 1.データベースとテーブルの作成:createdatabaseとcreateTableコマンドを使用します。 2。挿入とクエリデータ:InsertIntoおよび選択ステートメントを介してデータを操作します。 3.クエリを最適化:インデックスを使用してステートメントを説明してパフォーマンスを向上させます。

SQLとMySQLの比較:構文と機能SQLとMySQLの比較:構文と機能May 07, 2025 am 12:11 AM

SQLとMySQLの違いと接続は次のとおりです。1.SQLはリレーショナルデータベースを管理するために使用される標準言語であり、MySQLはSQLに基づくデータベース管理システムです。 2.SQLは基本的なCRUD操作を提供し、MySQLはこれに基づいてストアドプロシージャ、トリガー、その他の機能を追加します。 3。SQL構文標準化、MySQLは、返品行の数を制限するために使用される制限など、一部の場所で改善されています。 4.使用例では、SQLとMySQLのクエリ構文はわずかに異なり、MySQLのJoinとGroupbyがより直感的です。 5.一般的なエラーには、構文エラーとパフォーマンスの問題が含まれます。 MySQLの説明コマンドは、クエリのデバッグと最適化に使用できます。

SQL:初心者向けガイド - 簡単に習得できますか?SQL:初心者向けガイド - 簡単に習得できますか?May 06, 2025 am 12:06 AM

sqliseasytolearnforbeginnersduetoitsStraightforwardsyntaxandbasicoperations、butmasteringitinvolvescomplexconcept.1)startsimplequerieslikeselect、insate、delete.2)startiCeRegularlylyusinglikeLeetformslikeLeet codeoreTorsqodeorsqudeLfiddatabes

See all articles

ホット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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 中国語版

SublimeText3 中国語版

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