MySQL 外部キー制約の一般的な操作の例 [表示、追加、変更、削除]

MySQL 外部キー制約の一般的な操作の例 [表示、追加、変更、削除]

この記事では、例を使用して、MySQL 外部キー制約の一般的な操作について説明します。ご参考までに、詳細は以下の通りです。

1. データベーステーブルを作成するためのSQL文を表示する

テーブル作成を表示 VIP

2. 外部キーの制約名を表示する

テーブル `vip` を作成します (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `address` varchar(255) デフォルト NULL,
 `code` varchar(255) デフォルト NULL,
 `mobile` varchar(255) デフォルト NULL,
 `name` varchar(255) デフォルト NULL,
 `score` int(11) デフォルト NULL,
 `id_code` varchar(255) デフォルト NULL,
 `user_id` int(11) デフォルト NULL,
 主キー (`id`)、
 キー `FK1C81D1738DA76` (`user_id`)、
 制約 `FK1C81D1738DA76` 外部キー (`user_id`) 参照 `user` (`id`)
) エンジン=InnoDB AUTO_INCREMENT=7 デフォルト文字セット=utf8

3. 外部キー制約を削除する

テーブル VIP を変更して外部キー FK1C81D1738DA76 を削除します

4. 外部キーを削除する

テーブル VIP を変更して user_id を削除します

5. 外部キー制約を追加する

ALTER TABLE `tfeedbackmessage`
制約 `FK_i1q2cf5pxfr8r69cfci3yyari` を追加 FOREIGN KEY (`HANDLERID`) 参照 `toperationuser` (`FID`) 
ON DELETE CASCADE ON UPDATE RESTRICT;

一般的な操作の概要:

テーブルのフィールド情報を表示します: desc テーブル名;

テーブルのすべての情報を表示します: show create table table name;

主キー制約を追加します: alter table table name add constraint primary key (例: PK_table name) primary key table name (primary key field);

外部キー制約を追加します。alter table で制約 foreign key from table を追加します (例: FK_from table_primary table) foreign key from table (外部キー フィールド) は primary table (主キー フィールド) を参照します。

主キー制約を削除します: alter table table name drop primary key;

外部キー制約を削除します: alter table table name drop foreign key foreign key (大文字と小文字が区別されます);

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL ログ操作スキル」、「MySQL トランザクション操作スキル」、「MySQL ストアド プロシージャ スキル」、「MySQL データベース ロック関連スキルの概要」、および「MySQL 共通関数の概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQL 外部キー制約 (FOREIGN KEY) ケースの説明
  • MySQL 外部キー制約とテーブル関係の概要
  • MySQL 外部キー制約の例の説明
  • MySQL 外部キー制約の詳細な説明
  • 外部キー制約を持つテーブルデータを削除する MySQL メソッドの紹介
  • MySQLデータベースで外部キー制約を使用する必要があるかどうかの詳細な説明

<<:  Vueのフロントエンドとバックエンドのデータのやり取りと表示を理解する方法

>>:  Linux でタスク用のカスタム システム トレイ インジケーターを作成する

推薦する

Vueは小さなメモ帳機能を実装しました

この記事の例では、メモ帳の小さな機能を実現するためのvueの具体的なコードを参考までに共有しています...

mysql5.6.zip形式の圧縮版インストールグラフィックチュートリアル

はじめに: MySQL は、スウェーデンの MySQL AB によって開発されたリレーショナル デー...

Bootstrap 3.0 学習ノートのページレイアウト

今回はレイアウトを中心に学習しますが、これは基本的なHTMLタグのほとんどにも存在するため、比較的簡...

Mysql-connector-java ドライバのバージョン問題の概要

Mysql-connector-java ドライバのバージョンの問題私のデータベースのバージョンは ...

Vueのv-onパラメータの問題についてお話しましょう

Vue での v-on:clock の使用現在、vue.js フレームワークを学習しています。後で参...

MySQLのパラメータについてお話しましょう

序文:以前の記事では、特定のパラメータの機能についてよく紹介してきました。しかし、MySQL パラメ...

MySQL レプリケーション問題の 3 つのパラメータの分析

目次01 sql_slave_skip_counter パラメータ02 スレーブスキップエラーパラメ...

方言変換のためのApache Calciteコード

意味Calcite は、Sql を SqlNode に解析し、次に SqlNode を特定のデータベ...

ElementUIはドロップダウンオプションと複数選択ボックスのサンプルコードを実装します

目次ドロップダウン複数選択ボックスアップグレード - すべてのオプションを追加改訂と改善を求める製品...

Windows システムでの MySQL 8.0.21 インストール チュートリアル (図とテキスト)

インストールの提案: インストールには .exe を使用せず、圧縮パッケージを使用してください。これ...

iframe を通じて DOM 要素のサイズ変更を監視する

開発プロセス中によく発生する問題は、div のサイズ変更をどのように監視するかということです。たとえ...

Windows SSHサーバーを簡単に構築するためのいくつかの手順

ここで言及されている SSH は Security Shell と呼ばれます。Linux をよく使用...

ページデザインにおけるテーブルとdivの適切な適用についての簡単な説明

この記事の冒頭で、以前書いた入門記事の間違いを訂正したいと思います。初心者を再び誤解させないように、...

MySQLデータのバックアップとリカバリの実装方法の分析

この記事では、例を使用して MySQL データのバックアップと復元の方法について説明します。ご参考ま...

jQuery は呼吸カルーセルを実装します

この記事では、ブレッシングカルーセルを実装するためのjQueryの具体的なコードを参考までに共有しま...