Vous êtes sur la page 1sur 12

La gestion d’une table

1. La création d’une table

L’instruction CREATE TABLE permet de créer une nouvelle table.

Syntaxe

Create table nom_table

(nom_colonne type_donnée [contrainte] [,] ……)

Avant de créer une nouvelle table, vous devez être sur que c’est la base de données utilisateur.

Exemple

Use tempdb

Create table ABC

Colonne A int ,

Colonne B varchar (50) ,

Colonne C datetime)

Dans une instruction create, le mot clé AS permet de créer des colonnes calculées à partir des autres.

Exemple

Use tempdb

Create table note

(note_id int,

Note1 real,

Note2 real,

Moyenne as(note1+note2)/2 );

2. Modification d’une table

L’instruction ALTER TABLE permet de modifier la structure d’une table.

Exemple

Use tempdb

Alter table ABC

Add colonne D varchar (50)

Drop colonne B
3. Suppression d’une table

L’instruction DROP TABLE permet de supprimer une table.

Syntaxe

Drop table nom_table

Exemple

Use tempdb

Drop table ABC

4. Implémentation des contraintes d’intégrités

Les contraintes d’intégrités permettent d’assurer les contrôles sur les données saisies dans la base de
données. Il existe différentes catégories de contrainte.

 Contrainte d’identité : définit une ligne comme une entité unique.


 Contrainte d’intégrité référentielle : elle est fondée sur les relations entre les clés étrangères et
les clés primaires.
 Contrainte de données : définir un intervalle ou une liste de valeurs possibles pour une colonne.

Exemple

Use tempdb

Create table ABC

(Colonne A int primarykey, colonne B varchar (50))

Create table DEF

(colonne D int

Colonne E varchar (50)

Colonne F datetime

Constraints PK DEF primarykey (colonne D , colonne E)


Création d’une base de données

1. Contrainte d’entité

La contrainte Primary key permet de définir une ou plusieurs clés primaires d’une table.

Exemple

Create table ABC

(colonne A int primary key

Colonne B nvarchar (30))

La contrainte unique permet de garantir qu’aucune valeur en double n’est entrée dans une colonne
spécifique. Elle s’utilise de la façon suivante :

Use tempdb

Create table facture

(FID int primary key

Fcod char (40)

Fdatedatetime)

La propriété Identity permet d’incrémenter automatique les valeurs numériques d’une colonne. Sa
syntaxe est :

Identity [(valeur_initial, valeur_incrément)]

Lorsqu’aucun paramètre n’est pris en compte, la propriété Identity prend comme valeur initiale 1 et
valeur d’incrément à 1.

Exemple

Use tempdb

Create table classe

(CID int identity (10,2) primary key

Cnom varchar (20))

La contrainte foreign key appliquée à une colonne permet de vérifier que la valeur doit exister dans la
colonne référenciée, dans le cas contrainte le système envoi une erreur signalant une violation de clé
étrangère.

Exemple

Use tempdb

Create table pere


(PID int primary key,

Pnom varchar (30))

Create table fils

(FID int primary key,

Fnom varchar (30)

PID int references pere(PID))

La contrainte CHECK permet de définir une condition que la valeur doit respecter. Elle s’utilise de la
façon suivante :

Use tempdb

Create table visite

(VID int Identity primary key,

Vage int check (Vage<30)

Vjour varchar (30) check (Vjour in (‘lundi, mardi, mercredi’))

Vpoid real check (Vpoid between 5 and 100))

La contrainte DEFAULT permet de définir une valeur par défaut d’une colonne.

Exemple

Use tempdb

Create table personnel

(PID int Identity primary key,

Pdate datetime default(get date ())

Pmontant money default (3000))

La contrainte not null permet de définir la possibilité pour une colonne d’accepter une valeur nulle. Elle
est utilisée pour rendre la saisie d’une donnée est obligatoire pour une colonne.

Exemple

Use tempdb

Create table etudiant

(EID int identity primary key

Enom varchar (30) not null

Epronom varchar (30) not null)


1. Création d’une base de données

L’instruction create database permet de créer une nouvelle base de données, la syntaxe est la suivante :

Create database nom_base

[on primary

(name=nom_logique

File_name= nom_physique

[size=taille_initial]MB

[,Max size=taille maximale]MB-GB

[fileGrouth= pas d’incrémentation])

Log on

(name=nom logique

File_name=nom physique

[size=taille_initial]

[,Max size=taille maximale]

[fileGrouth=pas d’incrémentation])]

Les arguments de cette instruction sont les suivants :

 On primary : signifier d’utiliser le groupe de fichiers primary pour créer le fichier de données.
 Name : désigne le nom logique de données, par défaut le nom de la base de données est suivi
par _DATApour le fichier de données et _log pour le fichier de transaction.
 File name : désigne le chemin d’accès aux fichiers (données, transaction). Par défaut, ce fichier
(données, transaction). Par défaut, ce fichier est créé dans le sous dossier :
C:\ProgramFiles\Microsoft SQL SERVER\MS SQL\Data.
 Size : indique la taille initiale du fichier en KB, MB ou GB.
 Max size : indique la taille maximale qu’un fichier ne devra pas excéder.
 File Grouth : indique le pas d’incrément de la taille du fichier.
La valeur peut être en pourcentage par rapport à la taille actuelle du fichier.

Exemple

Create Database test

On primary

(name=test_date,

File name=’C:\test.mdf’,
Size =10 MB,

Max size= 50 MB,

File grouth= 10%)

Log on

(name=test_log,

File name=’C:\test.ldf’,

Size =5 MB,

Max size= 25 MB,

File grouth= 5%))

2. Modification d’une BDD

L’instruction ALTER DATABASE permet la modificationd’une BDD, la syntaxe est :

User master

Alter database test

Modifyname= test2

3. Suppression d’une BDD

L’instruction DROP DATABASE permet la suppression d’une BDD, la syntaxe est :

User master

Drop database test

4. Extraction des données

L’extraction ou la sélection des données de base sur une requête et une demande de données
stockées dans SQL SERVER.

4.1. La clause SELECT

Elle définit les listes des colonnes à extraire.

Exemple

1 / Select fac_id, fact_date

From facture

2/ select * from facture

Le mot clé ‘Identity Col’ permet de désigner la colonne soumise à la propriété Identity.

Exemple
Select identity col from facture

Le mot clé ’AS’ permet de définir l’alias pour une colonne.

Exemple

Select fact_id as ‘numero facture’

Fact_date as ‘date de facture’

Fact_montant as ‘montant facture’

From facture

4.2. La clause FROM

La clause FROM permet de spécifier la (les) table(s) dont on extraire les données, elle est obligatoire
dans toute les instructions.

4.3. La clause WHERE

La clause Where permet de spécifier un critère de recherche que les colonnes doit respecter.

Exemple

Select * from facture where fact_data>’01/01/2015.

On peut utiliser aussi une combinaison d’un ou plusieurs opérateurs de comparaison.

On peut aussi utiliser les suivants :

Expression [not] between valeur 1 and valeur 2

Expression is not null

Expression not like chaine

L’opérateur LIKE permet d’afficher des comparaisons sur des données chaines.

 Like ‘% ordinateur%’
 Like ‘_inf’
 Like ‘200[0-5]
 Like ‘-[200]

4.4. La clause order by

La clause order by spécifie l’ordre de tri affecter aux colonnes renvoyées.

ASC : ordre de tri croissant.

DEX : ordre de tri décroissant.

La valeur null est toujours considérée comme la plus petite valeur.

Exemple
Select e_classe, e_nom, e_date_naiss,

Frometudiant

Order by e_classe ASC

4.5. Techniques avancées d’accès aux données

Le mot clé distinct permet d’éliminer les doublons.

Exemple

Select distinct type

From titres

/*afficher la liste des différents livres sont en doubles*/

Le mot clé TOP permet de limiter le nombre des lignes renvoyées. Select top N [percent]

Exemple

select top 10

from titres

5. Regroupement et synthèse des données

5.1. Utilisation des fonctions d’agrégation

La fonction d’agrégation (SUM, AVG, MIN, MAX, COUNT) génère des valeurs de synthèse dans les
résultats.

6.2. La fonction MIN et MAX

Renvoient respectivement la valeur minimale et la valeur maximale d’une colonne ou d’une expression
synthèse :

Min/max ([All/distinct] expression)

Exemple

Use master

Select max (price) from titres

5.3. Les fonctions SUM/AVG

Revoient respectivement la somme et la moyenne des valeurs d’une colonne.

Syntaxe : sum/avg [all/distinct] expression

Exemple

Select sum (note)


Frometudiant

Select avg (note)

Frometudiant

5.4. La fonction COUNT

Retourne le nombre d’élément d’une colonne.

Syntaxe : count ([all/distinct]expression)

Exemple 01

Select count(*) from titres

Exemple 02

Use master

Select min(price) as minimum,

max(price) as maximum,

avg(price) as moyenne

from titres

5.5. Regroupement avec GROUP BY

La clause GROUP BY est utilisée pour produit des valeurs regroupées selon une expression.

Exemple

Use master

Select type, min(price), max(price)

From titres

Group by type

La clause HAVING permet de définir un critère de sélection pour la clause ORDER BY.

Exemple

Use master

Select type, min(price), max(price)

From titres

Group by type

Havingmax(price)>1000
Application

Avec les requêtes de SQL SERVER 2005, exécutez toutes les instructions vues au cours.

1. Jointures entre les tables

Pour retourner des données provenant de deux ou plusieurs tables, vous devez utiliser une jointure
entre ces tables.

Une jointure se base sur les relations entre les tables pour sélectionner des enregistrements. Il existe
deux catégories de jointure.

 Les jointures internes : elles retournent les enregistrements uniquement quand les deux tables
respectant les conditions de la jointure.
 Les jointures externes : elles retournent tous les enregistrements d’au moins une des deux
tables.

6.1. Les jointures internes

Elles sont spécifient dans la clause FROM. Dans une jointure interne, les valeurs de colonne jointure sont
comparées avec des opérateurs de comparaison qui est généralement l’opérateur d’égalité.

Une jointure interne est introduite par le mot clé ‘INNER JOIN’. La syntaxe est la suivante :

From table innerjoin table B

On condition

Exemple

Select p_nom, f_prenom

Frompere_pinnerjoinfils_f

On p_num.pere= f.num_pere

--la liste des fils qui ont un père—

6.2. Jointure externe

Les jointures externe renvoient tous les lignes d’au moins une des tables contournée.

ALL : indique que toutes les lignes doivent être combinées y compris les doublons.

Exemple

Select non, fonction

Fromemploye

Union

Select nom, fonction


From temporaire

8. Modification des données

8.1. Ajout des données

L’instruction ‘INSERT’permet d’ajouter une ou plusieurs lignes dans une tables, sa syntaxe est :

Insert [into]nom_table [(liste des colonnes)]

[ values (expression)]

Exemple

Insert into.etudiant(nom,prenom)

Values(‘yagoubi’,’wafia’)

Insert intoetudiant(nom,prenom)

Select nom, prenom

From bachelier

Where moyenne >=12

/*Ajouter à la table etudiant la liste des bacheliers qui ont une moyenne supérieure ou égale à 12*/

Dans la liste des colonnes, une colonne peut ne pas être précise, si l’une des conditions suivantes est
respectée :

 Elle est incrémentée automatiquement.


 Elle possède une valeur par défaut
 Elle autorise les nuls

Exemple

Create table voiture

(numerointidentityprimary key, immatriculation char(8) unique,


date_arrivéedatetimedefault(‘01/01/2015’))

Insert into voiture

Values (‘4100AA011’,’01/02/2015’)

Insert intovoiture(immatriculation)

Values(‘200GGG01’)
Création des vues

Vous aimerez peut-être aussi