• 20 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 20/10/2020

Posez vos clés sur la table !

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Dans les parties précédentes, vous avez déjà vu les tables et les clés. Nous sommes ici au début d'une nouvelle partie, dans laquelle nous nous concentrons sur l'interrogation d'une base de données en langage SQL.

Mais avant de pouvoir les interroger, il est préférable de savoir créer une table, et comment implémenter les clés.

Créer une table avec des clés

Créons ensemble la table entity, qui accueillera les sociétés offshores contenues dans les Panama Papers.

CREATE TABLE entity (
id INTEGER,
name TEXT NOT NULL,
jurisdiction TEXT,
jurisdiction_description TEXT,
company_type TEXT,
id_address INTEGER,
incorporation_date DATE,
inactivation_date DATE,
status TEXT,
service_provider TEXT,
country_codes TEXT,
countries TEXT,
source TEXT,
PRIMARY KEY(id),
FOREIGN KEY(id_address) REFERENCES address(id)
)

C'est assez simple à comprendre : nous utilisons CREATE TABLE, et spécifions ensuite le nom de la table à créer. Nous ouvrons les parenthèses, et spécifions chacune des colonnes en les séparant par des virgules. Pour chaque colonne, nous spécifions son nom et son type.

Remarquez que grâce aux mots clés NOT NULL, nous imposons que la valeur de name soit toujours renseignée lors de l'insertion d'une nouvelle ligne : on ne pourra donc jamais ajouter une société offshore sans spécifier son nom !

Nous avons également donné ici les clés étrangères et primaires de la table entity grâce aux clauses suivantes :

  • PRIMARY KEY 

  • FOREIGN KEY ... REFERENCES ... 

Pour la clé étrangère, ce qui nous avons écrit ici signifie que la colonne id_address de la table entity fait référence à la colonne id de la table address.

Insérer des données

Maintenant que nous avons créé la structure de la table, insérons une ligne.

INSERT INTO entity (id, name, jurisdiction, jurisdiction_description, incorporation_date) VALUES (0, 'Une société', 'IMG', 'Le Pays Imaginaire', '2020-01-01');

Nous spécifions ici la table à remplir grâce à INSERT INTO, puis nous indiquons entre parenthèses les colonnes que nous voulons compléter (id, name, etc.) . Enfin, nous donnons les valeurs à insérer après le mot clé VALUES : ces valeurs doivent être dans le même ordre que les colonnes.

Il est aussi possible de remplir une table à partir d'un fichier CSV.  En effet, un fichier CSV se présente exactement de la même manière qu'une table d'une base de données ; si vous ne connaissez pas ce format, je vous invite à jeter un coup d'oeil ici. ;)

Cependant, chaque SGBDR a sa propre manière d'importer des données à partir d'un tel fichier :'(. Certains utilisent une syntaxe SQL, pour d'autres, c'est un peu plus compliqué. Il faudra donc vous renseigner en fonction du SGBDR que vous utilisez...

En résumé

  • On crée une table avec CREATE TABLE.

  • On insère des données grâce à INSERT INTO (...) VALUES (...).

Exemple de certificat de réussite
Exemple de certificat de réussite