Maison > base de données > tutoriel mysql > Comment créer et gérer des relations entre les tables dans MySQL?

Comment créer et gérer des relations entre les tables dans MySQL?

Mary-Kate Olsen
Libérer: 2025-01-24 14:21:09
original
383 Les gens l'ont consulté

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

Construction des relations entre les tables de base de données MySQL

La conception efficace d'une base de données MySQL repose sur la construction raisonnable de relations entre les tables. Les contraintes de clé étrangère sont l'un des types courants de relations qui vous permettent de joindre des données provenant de différentes tables.

L'exemple suivant montre comment établir une relation de clé étrangère :

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)
);
Copier après la connexion
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)
);
Copier après la connexion

Utilisez la clause accounts dans la table FOREIGN KEY pour joindre les deux tables :

CREATE TABLE accounts(
    ...
    FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
) ENGINE=INNODB;
Copier après la connexion

Cette contrainte garantit que chaque accounts de la table customer_id correspond à un customers existant dans la table customer_id. En référençant la colonne customer_id, une relation un-à-plusieurs s'établit : chaque client peut avoir plusieurs comptes, alors que chaque compte n'appartient qu'à un seul client.

MySQL prend également en charge d'autres types de relations entre tables. Par exemple, vous pouvez utiliser des contraintes de clé primaire et de clé étrangère pour établir une relation plusieurs-à-plusieurs. Pour plus d'informations sur les types de relations et les contraintes, veuillez vous référer à la documentation officielle de MySQL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal