<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://fr.wikijournal.org/w-wiki/index.php?action=history&amp;feed=atom&amp;title=Bases_de_donn%C3%A9es_relationnelles_pour_d%C3%A9butants</id>
	<title>Bases de données relationnelles pour débutants - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://fr.wikijournal.org/w-wiki/index.php?action=history&amp;feed=atom&amp;title=Bases_de_donn%C3%A9es_relationnelles_pour_d%C3%A9butants"/>
	<link rel="alternate" type="text/html" href="https://fr.wikijournal.org/w-wiki/index.php?title=Bases_de_donn%C3%A9es_relationnelles_pour_d%C3%A9butants&amp;action=history"/>
	<updated>2026-05-08T15:46:10Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://fr.wikijournal.org/w-wiki/index.php?title=Bases_de_donn%C3%A9es_relationnelles_pour_d%C3%A9butants&amp;diff=305&amp;oldid=prev</id>
		<title>Philip : Page créée avec « == Qu&#039;est-ce qu&#039;une base de données relationnelle ? == Imaginez que vous gérez une boutique en ligne. Vous avez des informations sur vos clients, leurs commandes et les produits. Comment organiser toutes ces données ? Une base de données relationnelle permet de stocker des informations sous forme de tables reliées entre elles, un peu comme des feuilles de calcul Excel, mais bien plus puissantes.  == Concepts clés ==  === Tables === Chaque table représente... »</title>
		<link rel="alternate" type="text/html" href="https://fr.wikijournal.org/w-wiki/index.php?title=Bases_de_donn%C3%A9es_relationnelles_pour_d%C3%A9butants&amp;diff=305&amp;oldid=prev"/>
		<updated>2025-01-15T22:25:04Z</updated>

		<summary type="html">&lt;p&gt;Page créée avec « == Qu&amp;#039;est-ce qu&amp;#039;une base de données relationnelle ? == Imaginez que vous gérez une boutique en ligne. Vous avez des informations sur vos clients, leurs commandes et les produits. Comment organiser toutes ces données ? Une base de données relationnelle permet de stocker des informations sous forme de tables reliées entre elles, un peu comme des feuilles de calcul Excel, mais bien plus puissantes.  == Concepts clés ==  === Tables === Chaque table représente... »&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Qu&amp;#039;est-ce qu&amp;#039;une base de données relationnelle ? ==&lt;br /&gt;
Imaginez que vous gérez une boutique en ligne. Vous avez des informations sur vos clients, leurs commandes et les produits. Comment organiser toutes ces données ? Une base de données relationnelle permet de stocker des informations sous forme de tables reliées entre elles, un peu comme des feuilles de calcul Excel, mais bien plus puissantes.&lt;br /&gt;
&lt;br /&gt;
== Concepts clés ==&lt;br /&gt;
&lt;br /&gt;
=== Tables ===&lt;br /&gt;
Chaque table représente une entité spécifique. Par exemple :&lt;br /&gt;
&lt;br /&gt;
* Table des utilisateurs (users)&lt;br /&gt;
* Table des commandes (orders)&lt;br /&gt;
* Table des produits (products)&lt;br /&gt;
&lt;br /&gt;
=== Champs (Colonnes) ===&lt;br /&gt;
Chaque table est composée de champs. Par exemple, pour la table des utilisateurs, on pourrait avoir :&lt;br /&gt;
&lt;br /&gt;
* id (identifiant unique)&lt;br /&gt;
* nom&lt;br /&gt;
* email&lt;br /&gt;
* téléphone&lt;br /&gt;
* date d&amp;#039;inscription&lt;br /&gt;
&lt;br /&gt;
=== Enregistrements (Lignes) ===&lt;br /&gt;
Ce sont les données concrètes dans une table. Une ligne = un enregistrement concernant un utilisateur, une commande ou un produit.&lt;br /&gt;
&lt;br /&gt;
== Comment les tables sont-elles reliées entre elles ? ==&lt;br /&gt;
&lt;br /&gt;
=== Clés primaires ===&lt;br /&gt;
Chaque table doit avoir un identifiant unique pour chaque enregistrement. En général, c&amp;#039;est le champ &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; :&amp;lt;syntaxhighlight lang=&amp;quot;mysql&amp;quot;&amp;gt;&lt;br /&gt;
CREATE TABLE users (&lt;br /&gt;
    id INT PRIMARY KEY AUTO_INCREMENT,&lt;br /&gt;
    name VARCHAR(100),&lt;br /&gt;
    email VARCHAR(100)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Clés étrangères ===&lt;br /&gt;
Ce sont des champs qui relient une table à une autre. Par exemple, dans la table des commandes, nous stockons l&amp;#039;&amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; de l&amp;#039;utilisateur :&amp;lt;syntaxhighlight lang=&amp;quot;mysql&amp;quot;&amp;gt;&lt;br /&gt;
CREATE TABLE orders (&lt;br /&gt;
    id INT PRIMARY KEY AUTO_INCREMENT,&lt;br /&gt;
    user_id INT,&lt;br /&gt;
    order_date DATETIME,&lt;br /&gt;
    total_amount DECIMAL(10,2),&lt;br /&gt;
    FOREIGN KEY (user_id) REFERENCES users(id)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Types de relations entre tables ==&lt;br /&gt;
&lt;br /&gt;
=== Un à un (One-to-One) ===&lt;br /&gt;
Par exemple, un utilisateur peut avoir un profil contenant des informations supplémentaires :&amp;lt;syntaxhighlight lang=&amp;quot;mysql&amp;quot;&amp;gt;&lt;br /&gt;
CREATE TABLE user_profiles (&lt;br /&gt;
    user_id INT PRIMARY KEY,&lt;br /&gt;
    address TEXT,&lt;br /&gt;
    phone VARCHAR(20),&lt;br /&gt;
    FOREIGN KEY (user_id) REFERENCES users(id)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Un à plusieurs (One-to-Many) ===&lt;br /&gt;
Le type de relation le plus courant. Par exemple, un utilisateur peut avoir plusieurs commandes :&lt;br /&gt;
&lt;br /&gt;
* Un utilisateur → Plusieurs commandes&lt;br /&gt;
* Un produit → Plusieurs commentaires&lt;br /&gt;
* Une catégorie → Plusieurs produits&lt;br /&gt;
&lt;br /&gt;
=== Plusieurs à plusieurs (Many-to-Many) ===&lt;br /&gt;
Par exemple, une commande peut contenir plusieurs produits, et un produit peut apparaître dans plusieurs commandes. Pour cela, on crée une table intermédiaire :&amp;lt;syntaxhighlight lang=&amp;quot;mysql&amp;quot;&amp;gt;&lt;br /&gt;
CREATE TABLE order_items (&lt;br /&gt;
    order_id INT,&lt;br /&gt;
    product_id INT,&lt;br /&gt;
    quantity INT,&lt;br /&gt;
    FOREIGN KEY (order_id) REFERENCES orders(id),&lt;br /&gt;
    FOREIGN KEY (product_id) REFERENCES products(id),&lt;br /&gt;
    PRIMARY KEY (order_id, product_id)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Avantages du modèle relationnel ==&lt;br /&gt;
&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Intégrité des données&amp;#039;&amp;#039;&amp;#039; : Le système garantit que toutes les relations sont valides.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Pas de duplication&amp;#039;&amp;#039;&amp;#039; : Les informations sont stockées à un seul endroit et reliées par des clés.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Flexibilité&amp;#039;&amp;#039;&amp;#039; : Il est facile d&amp;#039;ajouter de nouvelles relations et de modifier la structure.&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;Efficacité&amp;#039;&amp;#039;&amp;#039; : Recherche et traitement des données rapides grâce aux index.&lt;br /&gt;
&lt;br /&gt;
== Exemple pratique ==&lt;br /&gt;
Prenons un exemple simple de système de blog :&amp;lt;syntaxhighlight lang=&amp;quot;mysql&amp;quot;&amp;gt;&lt;br /&gt;
-- Table des utilisateurs&lt;br /&gt;
CREATE TABLE users (&lt;br /&gt;
    id INT PRIMARY KEY AUTO_INCREMENT,&lt;br /&gt;
    username VARCHAR(50),&lt;br /&gt;
    email VARCHAR(100),&lt;br /&gt;
    created_at DATETIME&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
-- Table des articles&lt;br /&gt;
CREATE TABLE posts (&lt;br /&gt;
    id INT PRIMARY KEY AUTO_INCREMENT,&lt;br /&gt;
    user_id INT,&lt;br /&gt;
    title VARCHAR(200),&lt;br /&gt;
    content TEXT,&lt;br /&gt;
    published_at DATETIME,&lt;br /&gt;
    FOREIGN KEY (user_id) REFERENCES users(id)&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
-- Table des commentaires&lt;br /&gt;
CREATE TABLE comments (&lt;br /&gt;
    id INT PRIMARY KEY AUTO_INCREMENT,&lt;br /&gt;
    post_id INT,&lt;br /&gt;
    user_id INT,&lt;br /&gt;
    comment_text TEXT,&lt;br /&gt;
    created_at DATETIME,&lt;br /&gt;
    FOREIGN KEY (post_id) REFERENCES posts(id),&lt;br /&gt;
    FOREIGN KEY (user_id) REFERENCES users(id)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;Dans cet exemple :&lt;br /&gt;
&lt;br /&gt;
* Un utilisateur peut créer plusieurs articles (un à plusieurs)&lt;br /&gt;
* Chaque article peut avoir plusieurs commentaires (un à plusieurs)&lt;br /&gt;
* Chaque commentaire est lié à la fois à un article et à un utilisateur&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Les bases de données relationnelles sont un outil puissant pour organiser les données dans une application. Comprendre les principes de base de leur fonctionnement est essentiel pour les développeurs débutants. Une structure de base de données bien conçue rend une application plus fiable, efficace et facile à maintenir.&lt;br /&gt;
&lt;br /&gt;
[[wj-en:Relational databases for beginners]]&lt;br /&gt;
[[wj-de:Relationale Datenbanken für Anfänger]] &lt;br /&gt;
[[wj-ru:Реляционные базы данных для начинающих]] &lt;br /&gt;
[[wj-it:Basi di dati relazionali per principianti]]&lt;br /&gt;
[[wj-es:Bases de datos relacionales para principiantes]]&lt;/div&gt;</summary>
		<author><name>Philip</name></author>
	</entry>
</feed>