HOBBES World.com

Bases de Données
Présentation
MySQL
PSQL
Oracle

SQL
Structure
Enregistrements
Affichage
Exemples
SQL - Calcul
SQL - Exercice

Menu Général
Informatique
Programmation
Loisirs
Outils
Divers
Accueil

Log In


Login à vie

Créer un compte
Mot de passe

SQL - Structure



  1. Présentation

Il y a 2 types de requêtes : les requêtes de traitement des enregistrement (Select, insert, delete), les requêtes de gestion (les autres, celles dont nous parlerons ici !). Nous allons voir ici les différentes requêtes de gestion de la base. J'entends par la les requetes de creation de base, de creation de table, de modification du format d'une table, d'ajout d'enregistrement, de suppression d'enregistrement.



  2. La base


  2. 1. Création de la base

CREATE DATABASE nom_base;

  2. 2. Suppression de la base

DROP DATABASE nom_base;


  3. Les tables


  3. 1. Création de la table

Structure standard :
CREATE TABLE nom_table (nomcolonne1 type [options] [, autres champs [options]]);
Exemple :
create table personne (codep int primary key auto_increment,
                       nomp char(50) not null,
                       prenomp char(50));
create table adresse (codea int,
                      adressea longtext,
                      codepostal char(5) default "35000");
create table if not exists relation (ca int not null,
                                     cb int not null,
                                     constraint cle primary key(ca, cb));
  • La table "Personne" contient donc un premier champs "CodeP" qui est la clé, qui en plus s'incrémente automatiquement. Ensuite, on fixe un champs "NomP" qui ne doit pas etre vide (option "NOT NULL"), et enfin un champs "PrenomP" qui est une chaine de 50 caractères, et qui peut etre vide.
  • La table "Adresse" contient elle un champ "CodeA" qui est juste un entier, un champs "AdresseA" qui peut contenir des retours à la ligne, puis un dernier champs "CodePostal" qui est une chaine de 5 caractère ayant pour valeur par défaut "35000".
  • La table "Relation" est constituée de 2 champs non nuls et d'une clé primaire sur les deux champs.

    Les différents types possibles sont les suivants:
    Type Description
    INT Entier standard
    SMALLINT Petit entier
    FLOAT Valeur réelle
    CHAR (n) Chaine fixe de n caractères
    VARCHAR (n) Chaine variable d'au plus n caractères
    LONGTEXT Chaine de caractère premettant les sauts de lignes
    LONG VARCHAR Chaine de caractère permettant les sauts de lignes
    DATE Enregistrement au format date
    ENUM (valeur1, valeur2,...) Type énuméré (seulement certaines valeurs autorisées)
    TIMESTAMP Enregistrement de l'heure et de la date

    Les différentes options possibles sont les suivantes:
    Options Description
    NOT NULL Le champs ne peut être vide
    AUTO_INCREMENT La valeur du champs est incrémentale, très pratiquep pour les clés
    PRIMARY KEY Permet de définir la clé primaire
    DEFAULT Valeur par defaut de la colonne
    UNSIGNED Permet de ne prendre en compte que les valeurs positives
    IF NOT EXISTS Permet de ne créer la table que si elle n'existe pas déjà
    Ceci permet de créer a peu près tout type de tables, même s'il existe d'autres options que je n'ai pas abordé ici car elles sont moins couremment utilisées.


      3. 2. Suppression de la table

    DROP TABLE nom_table;

      3. 3. Modification de la table

    Il peut être utile de temps en temps de supprimer ou d'ajouter un champs. C'est ce que nous allons voir maintenant.
    La structure générale est :
    ALTER TABLE nom_table [Operation] (Champs type);
    Exemple :
    ALTER TABLE Adresse ADD (Ville CHAR(25),Pays CHAR(20));
    ALTER TABLE Adresse DROP Pays;
    ALTER TABLE Adresse RENAME Logement;
    ALTER TABLE Adresse CHANGE Ville VilleA CHAR(15);
    ALTER TABLE Adresse ALTER VilleA SET DEFAULT "Rennes";
    Ces exemples permettent, dans l'ordre, de :
  • Ajouter 2 colonnes a la table Adresse
  • Supprimer une colonne de la table Adresse
  • Renommer la table
  • Changer le nom et la definition d'une colonne
  • Fixer une valeur par défaut d'une colonne



      » Commentaires

    Aucun commentaire pour cette page.

    Si vous souhaitez ajouter un commentaire, vous devez être identifié


  •  Page modifiée le : 22/07/2002
    Site modifié le : 02/04/2008
      Flux RSS : cliquez-ici si vous voulez suivre les évolutions
    Contacter le webmaster : si vous trouvez qu'il manque des infos, n'hésitez pas à me le dire !
    © HobbesWorld - /db/requetesformat.php