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 でタスク用のカスタム システム トレイ インジケーターを作成する

推薦する

ウェブタイポグラフィにおける致命的な意味的ミス 10 選

<br />これは、Steven D が書いた Web フロントエンド開発デザインの基本...

MySQL 5.7.19 Winx64 ZIP アーカイブのインストールと使用に関する問題の概要

今日はMySQLのインストール方法を学びましたが、その過程でいくつか問題が発生しました。関連記事をい...

MySQLのユーザー管理とPostgreSQLのユーザー管理の違い

1. MySQL ユーザー管理[例1.1] ローカルMySQLサーバーのテストデータベースにroot...

MySQL可視化ツールNavicatへの接続方法

Navicatをインストールした後次のエラーが発生する場合があります: Client does no...

Docker5フル機能の港湾倉庫構築プロセス

Harbor は、Docker イメージを保存および配布するためのエンタープライズ レベルのレジスト...

高度なクローラー - JS 自動レンダリングのための Scrapy_splash コンポーネントの使用

目次1. scrapy_splash とは何ですか? 2. scrapy_splashの役割3. s...

CSS3のwebkit-box-reflectを巧みに使用して、さまざまな動的効果を実現します。

かなり前の記事で、 -webkit-box-reflectプロパティについて説明しました。リフレクシ...

React refsの詳細な紹介

1. 何ですかRefs 、コンピューターでは Resilient File System (ReF...

MySQL 8.0.13 解凍版のインストールと設定方法のグラフィックチュートリアル

1. インストール1. MySQLをダウンロードするダウンロードアドレス: リンクアドレスブラウザで...

携帯電話に GreasyFork js スクリプトをインストールするチュートリアル

目次序文1. Iceraven ブラウザ (Firefox) (Android) 2. (アンドロイ...

Dockerコンテナのログ分析

コンテナログを表示するまず、 docker run -it --rm -d -p 80:80 ngi...

ReactはExcelファイルのインポートとエクスポートを実装します

目次プレゼンテーション層ビジネスレイヤーコアプラグイン xlsx ExcelインポートExcelエク...

JSは写真の自動再生効果を実現します

この記事では、写真の自動再生効果を実現するためのJSの具体的なコードを参考までに紹介します。具体的な...

Vue プラグイン エラー: このページで Vue.js が検出されました。問題は解決しました

Vue プラグインがエラーを報告しました: このページで Vue.js が検出されましたVueプラグ...

CSS 不透明度子要素が親要素の透明度を継承するためのソリューションの詳細な説明

プロジェクト ページの作成中に、子要素が親要素の透明度を継承するという問題に遭遇しました。多くのドキ...