Programmation SQL/Langage de définition de données

Un livre de Wikibooks.

Le langage SQL
Département Informatique
Les réseaux TCP/IP
Sommaire
Modifier ce modèle

Les commandes pour la définition des données sont CREATE (créer), DROP (supprimer), ALTER (modifier).

Sections

[modifier] SCHEMA

[modifier] Instruction CREATE SCHEMA

CREATE SCHEMA nom_base;
  • Signification : crée une base de données appelée nom_base.
  • Rappel : une base de données est un ensemble de tables. Un SGBD peut gérer plusieurs bases de données.
  • Exemple :

CREATE SCHEMA `toto` ;
Cette commande permet de créer une base de donnée toto.

Sous MySQL on peut employer le terme DATABASE

CREATE {DATABASE | SCHEMA} nom_base;

[modifier] Instruction DROP SCHEMA

DROP SCHEMA nom_base;
  • Signification : détruit une base de données appelée nom_base.
  • remarque : cette instruction est parfois désactivée pour des raison de sécurité.
  • Exemple :

DROP SCHEMA `toto` ;
Cette commande permet de détruire une base de données toto.

Sous MySQL on peut employer le terme DATABASE

DROP {DATABASE | SCHEMA} nom_base;

[modifier] TABLE

[modifier] Instruction CREATE TABLE

  • Cette instruction permet de créer une table : il faut définir son nom, les différents champs de la table avec leur type ainsi que des caractéristiques comme par exemple des clés.
  • Chaque champs d'une table possède un type :
    • CHAR
    • VARCHAR
    • INTEGER
    • NUMBER
    • DECIMAL
    • FLOAT
    • DOUBLE
    • DATE
    • TIME
    • TIMESTAMP
  • Exemple :

CREATE TABLE `client1` (`NOM` VARCHAR( 20 ) ,`PRENOM` VARCHAR( 20 ) ,`ADRESSE` VARCHAR( 200 ) );
Cette instruction crée une table intitulée client1 contenant 3 champs :

    • Un champ NOM : chaîne d'au plus 20 caractères.
    • Un champ PRENOM : chaîne d'au plus 20 caractères.
    • Un champ ADRESSE : chaîne d'au plus 200 caractères.

[modifier] Instruction DROP TABLE

DROP TABLE nom_table;
  • Signification : détruit la table appelée nom_table.
  • Exemple :

DROP TABLE `client1` ;
Cette commande permet de détruire la table client1

[modifier] INDEX

[modifier] Instruction CREATE INDEX

CREATE [UNIQUE] INDEX nom_de_l_index ON nom_de_table
  • Signification : crée un index appelée nom_de_l_index sur la table nom_de_table.

[modifier] Instruction DROP INDEX

DROP INDEX nom_de_l_index ON nom_de_table
  • Signification : détruit l'index appelé nom_de_l_index de la table nom_table.


[modifier] VIEW

[modifier] Instruction CREATE VIEW

{CREATE | REPLACE} VIEW {nom_de_la_vue} AS
{Instruction SELECT}
WITH READ ONLY;

Avec Oracle :

  • La création d'une vue nécessite les droits de création de vue.
  • L'instruction WITH READ ONLY(lecture seule) est facultative.
  • Une vue qui comporte certaines expressions (comme GROUP BY) est forcément en lecture seule.
  • L'{Instruction SELECT} de la vue ne comportera pas d'ORDER BY.