ホームページ > データベース > mysql チュートリアル > MySQLのテーブル間の関係を作成および管理するにはどうすればよいですか?

MySQLのテーブル間の関係を作成および管理するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-24 14:21:09
オリジナル
361 人が閲覧しました

How Do I Create and Manage Relationships Between Tables in MySQL?

MySQLデータベーステーブル関係の構築

高効率MySQLデータベース設計は、テーブル間関係の合理的な構築に依存します。外部キーの制約は、一般的なタイプの関係の1つであり、さまざまなテーブルでデータを接続できます。

次の例は、外部のキー関係を確立する方法を示しています:

<code class="language-sql">CREATE TABLE accounts(
    account_id INT NOT NULL AUTO_INCREMENT,
    customer_id INT(4) NOT NULL,
    account_type ENUM('savings', 'credit') NOT NULL,
    balance FLOAT(9) NOT NULL,
    PRIMARY KEY (account_id)
);</code>
ログイン後にコピー
テーブルで、
<code class="language-sql">CREATE TABLE customers(
    customer_id INT NOT NULL AUTO_INCREMENT,
    name VARCHAR(20) NOT NULL,
    address VARCHAR(20) NOT NULL,
    city VARCHAR(20) NOT NULL,
    state VARCHAR(20) NOT NULL,
    PRIMARY KEY (customer_id)
);</code>
ログイン後にコピー
句を使用してこれらの2つのテーブルを接続します。

この制約により、テーブル内の各accountsFOREIGN KEYテーブルの

と一致することが保証されます。
<code class="language-sql">CREATE TABLE accounts(
    ...
    FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
) ENGINE=INNODB;</code>
ログイン後にコピー
列を引用することにより、1つの-to -multi -lelationshipが確立されます。各顧客は複数のアカウントを持つことができ、各アカウントは1つの顧客のみに属します。

accountsMySQLは、他のタイプのテーブル関係もサポートしています。たとえば、プライマリキーと外側キーの制約を使用して、複数の関係を確立できます。タイプと制約の詳細については、MySQLの公式ドキュメントを参照してください。 customer_id

以上がMySQLのテーブル間の関係を作成および管理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート