• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
BASES DE DO NN \u00c9E S
AVANC \u00c9E S
OFFICE DE LA FORMATION PROFESSIONNELLE & DE LA PROMOTION DU TRAVAIL
INSTITUT SUPERIEUR DES TECHNOLOGIES DE L\u2019INFORMATION ET DE LA COMMUNICATION DE
SAFI
I do not fear computers.
I fear the lack of them.
Isaac Asimov
Page : 1
ANNEE DE FORMATION 2008/2009
W.JAKJOUD
OFFICE DE LA FORMATION PROFESSIONNELLE & DE LA PROMOTION DU TRAVAIL
INSTITUT SUPERIEUR DES TECHNOLOGIES DE L\u2019INFORMATION ET DE LA COMMUNICATION DE
SAFI
A. LE S BA SE S DU LA NG AG E TR AN SA CT SQ L :
1) INT ROD UC TION
Le transact SQL ou TSql est un langage d\u00e9di\u00e9 \u00e0 l\u2019acc\u00e9s aux donn\u00e9es. Il est une extension am\u00e9lior\u00e9e du langage SQL :
\u2022
Les variables
\u2022
Les structures conditionnelles (if /then/ switch\u2026)
\u2022
Les pointeurs sur les lignes (curseurs)
\u2022
\u2026
2)LE S VAR IAB LE S :
a)DECL AR ATION:

DECLARE @nom_variable type
Exemple : DECLARE @x int
La variable @x est locale car elle est visible juste pour la requ\u00eate qui suit.

b)TY PES DES DO NN\u00c9 ES:
Types num\u00e9riques :
\u2022
Entiers :
oBigint entier sur 64 bits sign\u00e9
oint enti\u00e8re sur 32 bits sign\u00e9
osmallint entier sur 16 bits non sign\u00e9 (\u00e9quivalent \u00e0 un octet)
oBigint entier sur 64 bits sign\u00e9
\u2022
Binaire :
oBit : 0 ou 1
\u2022
D\u00e9cimaux et num\u00e9riques :
oDecimal : nombre \u00e0 pr\u00e9cision fixe
oNumeric : equivalent au type decimal
\u2022
Mon\u00e9taires
oMoney : 4 chiffres apres la virgule
oSmallmoney
\u2022
Float
\u2022
Real
\u2022
Date :
oDatetime : date et heure allant du 1er janvier 1753 au 31 decembre9999 avec une precision de
3.33 millisecondes
oSmalldatetime : date et heure allant du 1er janvier 1900 au 6 juin 2079
\u2022
Cha\u00eenes de caract\u00e8res :
oChar : chaine de caracteres fixe
oVarchar chaine de caract\u00e9res \u00e0 longueur variable

oText : chaine de carcteres de taille pouvant aller jusqu\u2019\u00e0 2^31 -1 caracteres
oNchar : chaine incluant des caracteres unicodes
o\u2026\u2026\u2026.

RE MAR QU E :

On peut cr\u00e9er nos propres types de donn\u00e9es. Par exemple, pour repr\u00e9senter le code postal , on utilise couramment varchar(6) comme type de donn\u00e9es .On peut cr\u00e9er un type nomm\u00e9 codePost par exemple pour mapper ce type . pour cela, on ex\u00e9cute la proc\u00e9dure sp_addtype qui prend comme param\u00e8tres le nom du type \u00e0 cr\u00e9er et le nom du type de base : EXEC sp_addtype @typename=\u2019codePost\u2019 , @physType=\u2019varchar(6)\u2019

Page : 2
ANNEE DE FORMATION 2008/2009
W.JAKJOUD
OFFICE DE LA FORMATION PROFESSIONNELLE & DE LA PROMOTION DU TRAVAIL
INSTITUT SUPERIEUR DES TECHNOLOGIES DE L\u2019INFORMATION ET DE LA COMMUNICATION DE
SAFI
C. UTILI SATION DES VAR IAB LE S
Avant d\u2019utiliser une variable il faut la d\u00e9clarer :
Exemple s :

Declare @x float
Select @x = pa
From article where numArticle = 5
Select @x

Declare @moyenne_prix real
Select @moyenne_prix = avg(pv)
From article
Select @moyenne_prix

Declare @nb_clients int
Set @nb_clients = (select count(cmdClient) from commande)
Select @nb_clients

La diff\u00e9rence avec les deux exemples pr\u00e9c\u00e9dents est que cette fois on utilise SET au lieu de Select.
On peut egalement utiliser plusieurs variables dans la meme requete :

Declare @moyenne_prix real
Declare @nb_articles real
Select @nb_articles = cont(numeroArticle) , @moyenne_prix = avg(pa)
From article

3) LE S STRU CT URE S COND ITIONNELLE S :
A) IF - ELS E
Exemples :
1) declare @nbArticle real

select @nbArticle = count(numArticle)
from article
if (@nbArticle < 100 )
print 'moins de 100 references dans le stock'
else
print 'le stock contient plus de 100 references'

La fonction PRINT permet d\u2019afficher le message
2) declare @nbArticle real
select @nbArticle = count(numArticle)
from article

if (@nbArticle < 100 )
begin
print 'moins de 100 references dans le stock'
print @nbArticle
end

else
begin
print 'le stock contient plus de 100 references'
print @nbArticle
end

3) declare @nbArticle real

select @nbArticle = count(numArticle)
from article
if (@nbArticle < 100 )

Page : 3
ANNEE DE FORMATION 2008/2009
W.JAKJOUD
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...