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

Le LDD comprend les commandes pour la définition des données, qui sont CREATE (créer), DROP (supprimer), et ALTER (modifier).

SCHEMA modifier

Instruction CREATE SCHEMA modifier

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ées toto.

Sous MySQL on peut employer le terme DATABASE

CREATE {DATABASE | SCHEMA} nom_base;

Instruction DROP SCHEMA modifier

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 raisons 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;

TABLE modifier

Instruction CREATE TABLE modifier

  • 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 chaîne non unicode remplacé par nchar pour des chaînes unicode microsoft (cf À la découverte d'Unicode )
    • VARCHAR chaîne non unicode remplacé par nvarchar pour des chaînes unicode microsoft.
    • INTEGER
    • NUMBER
    • DECIMAL
    • FLOAT
    • DOUBLE
    • DATE
    • TIME
    • TIMESTAMP


  • Exemple :
CREATE TABLE client1 ("NOM" VARCHAR( 50 ), "PRENOM" VARCHAR( 50 ), "TELEPHONE" VARCHAR( 50 ), "ADRESSE" VARCHAR( 200 ) );

Cette instruction crée une table intitulée client1 contenant 4 champs :

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

Instruction DROP TABLE modifier

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.

INDEX modifier

Instruction CREATE INDEX modifier

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.

Instruction DROP INDEX modifier

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.

VIEW modifier

Instruction CREATE VIEW modifier

{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.


Voir aussi modifier