1
Le langage SQL
Les Types de données :
Il existe 4 types de données :
- entiers / réels
- Chaînes de caractères
- Date / heure
- Booléen
Valeurs Alphanumériques :
- CHARACTER (longueur) représente une valeur numérique de longueur fixe.
- CHAR(longueur)
-CHARACTER VARYONG (longueur) représente une valeur numérique de longueur variable
- CHAR VARYING (longueur)
- VARCHAR
- NATIONAL CHARACTER représente une valeur numérique de longueur fixe dépendant du
jeu de caractère du pays.
- NATIONAL CHAR
- N CHAR représente une valeur numérique de longueur variable dépendant du jeu de
caractère du pays.
- NATIONAL CHAR VARYING
- NATIONAL CHAR
- NCHAR
Valeurs Dates / Heure :
DATE représente une date (12/04/2002)
TIME représente une heure (10 :54 :00)
TIMESTAMP : représente une valeur de DATE + HEURE combinées
INTERVAL : représente un intervalle de date et de temps
Valeur BINAIRE :
0,1 BIT (Long) : représente une chaîne de bit de longueur fixe.
BIT VARYING : représente une chaîne de bit de longueur variable
BINARY(long) : représente une valeur binaire d’une longueur précisée en argument.
8 bits octet BYTES(long)
IMAGE : représente une valeur permettant de stocker des images
BOOLEAN représente une valeur de type booléenne qui peut dans certains cas propre a SQL
comporter trois états.
LOGICAL
2
CREATION DE NOUVEAU TYPE DE DONNEES
Le langage SQL permet de créer ses propres types de données par l’intermédiaire de l’instruction :
CREATE TYP ou CREATE DOMAIN.
La création d’un type défini par l’utilisateur produit un objet contenant 1 ou plusieurs champs
possédant chacun un type de données particulier.
CREATE TYPE Type_Utilisateur
(nom.champ Type_Donnée,
Nom_ChampN Type_donnée N)
Cet objet ainsi crée devient utilisable dans une base de donné par l’intermédiaire d’une définition de
type habituelle.
Nom_Champ Type_Utilisateur
CREATE TYPE Type Personnel AS OBJECT ; CREATE TYPE Type_Coordonée AS OBJECT
(Nom , VARCHAR(20), Ville AS VARCHAR(50)
Prénom AS VARCHAR (20) CP AS DECIMAL (5,0)
Naissance AS DATE)
Définition des types de données :
CREATE TABLE Liste Personnel
(Personnel AS CHAR(20)
Employe type Personnel
Coordonne Type. Coordonnée)
L’utilisation des types de données procure divers avantages : facilité de modification globale des
types de données dans l’ensemble de la base de donnée ou encore l’application de contraintes
globales.
3
Les contraintes de champs
Les contraintes permettent d’indiquer les valeurs permises au sein d’une table afin d’obtenir
les caractéristiques spécifiques comme l’acceptation de valeurs nulles ou non nulles,
l’interdiction des doublons ainsi que l’affectation des clés primaire et étrangères.
Nom_Champ Type_Donnée Contrainte
Les contraintes qui existent sont les suivantes :
- Def_Champ NULL : peut accepter des valeurs nulles
- Def_Champ NOT NULL : n’accepte pas de valeurs nulles.
- Def_Champ UNIQUE : Indique que le champ n’accepte pas de doublons
- PRIMARY KEY : indique que le champ constitue la clé primaire
- CONSTRAINT Nom_Contrainte PRIMARY KEY (Champ[s] : permet de définir
une contrainte sur une colonne lors de la création d’une table.
- La définition de la contrainte contient une clause CHECK : assure l’intégrité du
domaine en limitant les valeurs placées dans une colonne par l’intermédiaire de son
expression : CONTRAINT Nom_Contrainte CHECK (expression)
L’expression de la clause CHECK peut être n’importe quelles condition combinant
notamment divers opérations logiques, de comparaison, etc
Les contraintes peuvent-être modifié ou supprimer par l’intermédiaire de la commande
ALTER TABLE
ALTER TABLE nom_table MODIFY CONSTRAINT nom _contrainte
ALTER TABLE nom_table DROP CONSTRAINT nom_ contrainte
Ex :
CREATE TABLE Tabl_Personne
(ID INTEGER PRIMARY KEY
ID_Service INTEGER NOT NULL
Nom VARCHAR(20) NOT NULL
Date_NAISS . DATE NOT NULL
Ville_Naiss . VARCHAR(20) NOT NULL
Adresse VARCHAR(50) NOT NULL
EMail VARCHAR(50) NULL UNIQUE
CONSTRAINT CONST-ID FOREIGN KEY ID_Service REFERENCE Table_Service(ID)
- on UPDATE CASCADE)
- on DELETE CASCADE)
4
Les conditions
Une condition indique une combinaison d’une ou plusieurs expressions et opérateurs
logiques afin d’effectuer certaines opérations sur une base de donnée.
Les conditions peuvent être appliquées dans une clause WHERE.
Ex :
SELECT * FROM Table WHERE eMail IS NULL AND NOT LIKE ‘%@_%’
Certaines conditions comme avec les opérateurs logiques et comparaisons, sont utilisabale
également dans le cadre des CONTRAINTES.
Ex :
CREATE TABLE TABLE_Personne
(ID INTEGER PRIMARY KEY
Nom VARCHAR (20)
Prénom VARCHAR (20)
EMail VARCHAR(50)
CONSTRAINT Limite_ID CHECK (ID BETWEEN 10000 AND 19999))
Ex : CREATE TABLE TablePersonne
(ID INTEGER PRIMARY KEY
SexeVARCHAR(80) NOT NULL
Nom VARCHAR(80) NOT NULL
Email VARCHAR(50)
CONSTRAINT Limite_Id CHECK (ID BETWEEN 10000 AND 19 999))
Exercice : condition pour :
Sexe soit « M » ou « F »
Nom comprenant les lettres [a à z] et [A et Z] et [à,â,ä,é,è,ê,ë,î,ï,ô,ö,ù,û,ü]
Email soit de la forme *@*.*
Tél soit compris entre [0000000000 et 9999999999 ]
CREATE TABLE TABLE_Personne
(ID INTEGER, PRIMARY KEY,
………..
…………..
CONSTRAINT LIMIT_ID CHECK (ID BETWEEN 10000 AND 999999)
CONSTRAINT LIMIT_SEX CHECK (SEX:”FEMININ” OR SEX :”MASCULIN”)
CONSTRAINT LIMIT_Name CHECK
(NAME IS LIKE “_%[_a-zA-Zàâäéèêëîïôöùûü]%)
CONSTRAINT LIMIT_EMAIL CHECK(EMAIL IS LIKE %@%)
CONSTRAINT LIMIT_PHONE CHECK
(PHONE (BETWEEN 0000000000_9999999999)
5
SQL nécessite divers opérateurs dans le but d’effectuer des manipulation sur des valeurs numérique,
littérale, logiques
OPERATEURS Arithmétique et de concaténation
OPERATEURS de comparaison
OPERATEURS conjonctifs
OPERATEURS logiques
OPERATEURS d’ensemble
ARITHMETIQUES et CONCATENATION
SELECT Prix-((Prix Réduction)/100), Produit FROM Liste_Produit
Exp1 + Exp 2 : Accomplit l’addition des deux expressions
Exp 1 Exp 2 : Accomplit la soustraction des deux expressions
Exp 1 * Exp 2 : Accomplit la multiplication des deux expressions
Exp 1 / Exp 2 : Accomplit la division de la première expression par la deuxième.
Exp1 % Exp 2 : Accomplit le modulo des deux expressions
Exp 1 || Exp 2 : Accomplit la concaténation des deux expressions (+ est utilisé par SQL Server, ||
par Oracle)
Ex : ORACLE :
SELECT ID, Designation, Quantité, Prix et quantité FROM Vente WHERE Date_Commande >=
SYSDATE-7
SQL Server :
SELECT ID, désignation, Quantité, Prix * Quantité FROM vente WHERE Date_Commande
>=DATEDAY (Day, 7 , GATDATE())
Opérateurs de comparaison
Les opérateurs de comparaisons permettent une mise en correspondance de deux expressions
retournant une valeur Booléenne TRUE or FALSE
SELECT * FROM nom_table WHERE Exp1 Opérateur Exp 2
Exp 1 * Exp 2 : vérifie l’égalité entre les deux expressions
Exp 1 { !=|<>|^=} Exp 2 : vérifie la différence entre les deux expressions
Exp 1 > Exp 2 : Vérifie si l’expression 1 est supérieure à l’expression 2
Exp 1 < Exp 2 : Vérifie si l’expression 1 est inférieur à l’expression 2
Exp 1 >= Exp 2 : Vérifie si l’expression 1 est supérieure ou égale à l’expression 2
Exp 1 !> Exp 2 : Verifie si la première expression n’est pas supérieure à la seconde.
Opérateurs conjonctifs :
Les opérateurs conjonctifs AND et OR permettent plusieurs conditions.
Exp 1 AND Exp 2 : retourne TRUE si les deux expressions sont TRUE
Exp 1 OR Exp 2 : retourne TRUE si une des deux expressions est TRUE
Ex :
1 / 20 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !