67% ont trouvé ce document utile (3 votes)
3K vues29 pages

Admin Des BD - SQL Server

Ce document présente SQL Server et ses principaux composants et fonctionnalités. Il décrit notamment le fonctionnement d'un serveur OLTP et OLAP, les composants de SQL Server, les outils disponibles et les tâches d'un administrateur de bases de données SQL Server.

Transféré par

Miatovickk Generall
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
67% ont trouvé ce document utile (3 votes)
3K vues29 pages

Admin Des BD - SQL Server

Ce document présente SQL Server et ses principaux composants et fonctionnalités. Il décrit notamment le fonctionnement d'un serveur OLTP et OLAP, les composants de SQL Server, les outils disponibles et les tâches d'un administrateur de bases de données SQL Server.

Transféré par

Miatovickk Generall
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

ADMINISTRATION DES BASES DE DONNEES

Première partie : Présentation de SQL server


Deuxième partie : Prise en main de SQL server
Troisième partie : Travaux pratique
ADMINISTRATION DES BASES DE DONNEES

PRESENTATION DE SQL SERVER

INTRODUCTION
Microsoft SQL server est un SGBDR développé et commercialisé par Microsoft.
C’est un logiciel permettant le stockage de donnée de façon cohérente et organisé, de manière
à pouvoir facilement consulter et modifier leur contenu.
Il utilise le TSQL (Transact SQL) pour ses requêtes : c’est une implémentation du
SQL qui prend en charge les procédures stockées ainsi que les déclencheurs. SQL Server
utilise le format TDS (Tabular Data Stream ou protocole de communication entre les clients
et le serveur)
La première version de SQL server est sortie en 1986, aujourd’hui il est à la version 19.
Mais dans de le cadre de ce cours nous utiliserons SQL server 2017 version 17.9

I. FONCTIONNEMENT
On distingue 2 types de serveur sur lesquels l’environnement SQL peut être déployé :
- Le serveur OLTP (Online transactionnal processing) qui est un serveur transactionnel
c’est-à-dire un serveur sur lequel un certain nombre de transaction de type LMD
peuvent être exécuté. La plupart du temps les systèmes OLTP sont utilisés pour la
saisie des commandes, des transactions financières, la gestion de la relation clients
etc. ces systèmes comptent un grand nombre d’utilisateur qui effectue des requêtes
courtes et retourne relativement peu d’enregistrement.
En résumer un serveur OLTP possède les caractéristiques suivantes :

 Les transactions impliquent de petites quantités de donnée


 Possède un grand nombre d’utilisateur
 Les temps de réponse sont assez rapides
 Demande une grande disponibilité

- Le serveur OLAP (Online Analytical .Processing) est un serveur décisionnel. Il


permet de consolider les données venant de source multiple grâce à un ETL
(extraction, transformation, loading)
OLAP effectue une analyse Multi dimensionnel des données de l’entreprise et offre la
possibilité d’effectué des calculs complexes. Il est utilisé en entreprise pour la gestion de la
performance, la planification, les prévisions, les rapports financiers etc. il fournit au analyste
et manager les informations donc ils ont besoin pour prendre des décisions.
ADMINISTRATION DES BASES DE DONNEES

En résumé un serveur OLAP permet :

 Une analyse rapide de donnée


 Permet d’organiser et de comparer les données
 Optimise le reporting
 D’effectuer des calculs complexes
 De manipuler un nombre important de donnée pouvant aller à plusieurs Téra octet

II. LES COMPOSANTS DE SQL SERVER


Microsoft SQL Server est composée de plusieurs logiciels qui s’exécutent sous forme
de service. Certains possèdent des interfaces graphiques, d’autre sont accessible via une
ligne de commande. SQL server est composée de 5 principaux services :
- SQL SERVER : c’est le service moteur de base de données et correspond à une
instance SQL SERVER. Ce composant s’exécute en tant que service Windows et est
référencé sous le nom MS SQL SERVER pour l’instance par défaut et MS SQL
SERVER $NOMDELINSTANCE Pour une instance nommée. Le nom d’une instance
est défini lors de l’installation.
- SQL SERVER INTEGRATION SERVICE : (SSIS) c’est l’outil SQL SERVER
d’import-export de transfert et de transformation de donnée
- SQL SERVER ANALYSIS SERVICE : (SSAS) c’est le projet idéal pour les projets
décisionnels et de data meanning. Il permet de construire les cubes OLAP.
- SQL SERVER REPORTING SERVICE : (SSRS) c’est grâce à ce composant que
nous pouvons restituer nos données provenant de notre entrepôt de donnée sous forme
de rapport (tableaux, graphiques, etc.)
- L’AGENT SQL : il est en charge de la surveillance de SQL SERVER, ce composant
gère également l’examinassions des tâches planifiées, et le suivie des alertes. Il est
directement lié à une instance SQL et est référencé par défaut dans le gestionnaire des
services Windows sous le nom : SQL SERVER AGENT. Et par
$SQLSERVERAGENT (nom de l’instance) dans le cas d’une instance nommée.

III. LES OUTILS


Les différents outils que l’on peut trouver dans SQL server sont :
- SQL SERVER MANAGEMENT STUDIO (SSMS): il permet de réaliser toutes les
opérations au niveau du moteur de base de données
- LE GESTIONNAIRE DE CONFIGURATION SQL SERVER : il permet de gérer
tous les services liés à SQL SERVER.
- SQL SERVER PROFILER : il permet de suivre et d’analyser la charge de travail
d’une instance SQL server
- L’ASSISTANT DE PARAMETRAGE DU MOTEUR DE BASE DE DONNEE :
permet une optimisation du fonctionnement du monteur
ADMINISTRATION DES BASES DE DONNEES

- LE SQL CMD : il permet d’exécuté les requêtes, les scripts de commande

IV. TACHE D’UN ADMINISTRATEUR DE BASE DE DONNE SQL SERVER


Un administrateur de base de donnée doit être capable de :
- Installer, configurer le server et administré les bases de données ;
- Veiller à l’intégrité des données stockées dans les bases de données ;
- Mettre en place des plans de sauvegarde ;
- Mettre en place des solutions de maintiens de la continuité de la production ;
- Veillez au maintien de la performance de l’accès aux donnée ;
- Participer à la veille technologique.

V. STRUCTURE D’UNE BASE DE DONNEE SQL SERVER


Une base de données SQL SERVER est composée de 2 types de fichiers
- Les fichiers de données ;
- Les fichiers journaux.

LES FICHIERS DE DONNEES


Il en existe deux types :
 Les fichiers primaires de données : qui sont obligatoires et d’extensions .mdf et qui
renferme le catalogue de la base de donnée ;
 Les fichiers secondaires de données : facultatif et d’extensions .ndf qui renferme les
objets et les données des utilisateurs.

Noté bien :
Chaque base de données comprend un seul fichier de donnée primaire.

LES FICHIERS JOURNAUX


Avec pour extension .ldf, il enregistre toutes les modifications de la base de donnée.
Ils contiennent les informations qui seront utilisées pour la restauration de la base de données,
chaque base de données doit posséder au moins un fichier journal.
ADMINISTRATION DES BASES DE DONNEES

DEUXIEME PARTIE : PRISE EN MAIN DE SQL SERVER

1. SE CONNECTER A UNE INSTANCE DE SQL SERVER


- Démarrer SQL MANAGEMENT STUDIO
- AU NIVEAU DE LA RUBRIQUE TYPE DE SERVER, sélectionner MOTEUR DE
BASE DE DONNEE ;
- Pour le nom du server, entrée le nom de votre instance SQL ;
- Au niveau de la rubrique authentification, sélectionner authentification Windows ;
- Cliquer sur se connecter

2. CREATION D’UNE BASE DE DONNEE


Pour créer une base de donnée, on peut soit utilisé soit le TSQL, soit SSMS.
1. Utilisation de SSMS
- Dans l’explorateur d’objet, connecter vous a une instance du moteur de base de
données ;
- Cliquez avec le bouton droit sur base de données, puis cliquer sur Nouvelle base de
données ;
- Dans nouvelle base de données, entrez le nom de votre base de donnée ;
- Pour créer la base de données en acceptant toutes les valeurs par défauts, cliquer sur
OK ;
- Pour modifier les valeurs par défaut des fichiers primaires et des fichiers journaux,
cela se fait dans la grille fichiers de la base de données, cliquer sur la cellule
approprié, puis entrer la nouvelle valeur ;
- Pour modifier les options de la base de données, sélectionner l’onglet option, puis
apporter les modifications de votre choix ;
- Pour ajouter une propriété étendue à la base de données, sélectionner propriété
étendu :

 Dans la colonne NOM, entrez le nom de la propriété étendue ;


 Dans la colonne VALEUR, entrez le texte de la propriété étendue.

2. UTILISATION DU TSQL
Dans la barre d’outils standard cliquez sur nouvelle requête
USE master;
GO
CREATE DATABASE GL
ON
(NAME = GL_dat,
ADMINISTRATION DES BASES DE DONNEES

FILENAME = ‘C:\Program Files\Microsoft SQL


Server\[Link]\MSSQL\DATA\GL_dat.mdf’,
SIZE=10,
MAXSIZE = 50,
FILEGROWTH = 5)
LOGON
(NAME = GL_log,
FILENAME = ‘C:\Program Files\Microsoft SQL
Server\[Link]\MSSQL\DATA\
GL_log.ldf’,
SIZE = 5 // en MO,
MAXSIZE = 25,
FILEGROUWTH = 5);
GO

3. SUPPRIMER UNE BASE DE DONNEE

a) Utilization de SSMS
- Dans l’explorateur d’objet, connectez-vous à une instance d’objet du moteur de base
de données ;
- Développé le dossier base de données, cliquer avec le bouton droit sur la base de
donnée à supprimer, puis cliquer sur SUPPRIMER ;
- Vérifier que la base de donnée correcte est sélectionnée puis cliquer sur OK.

b) Utilisation de transact sql (TSQL)

Supprimer base de données


USE master ;
GO
DROP DATABASE GL ;
GO
ADMINISTRATION DES BASES DE DONNEES

4. RENOMMER UNE BASE DE DONNEE

a) Avec ssms
- Toujours vérifier qu’il n’y a aucune connexion ouverte à la base de donnée ; il faut
donc définir la base de donnée en mode mono-utilisateur, pour ainsi fermer toutes les
connexions ouvertes et empêcher les autres utilisateurs de se connecter pendant le
nom de la base de donnée est modifiée.
Pour se faire :
 Cliquer avec le bouton droit sur la base de donnée à modifier, puis cliquer sur
PROPRIETE ;
 Dans la boite de dialogue propriété, cliquer sur OPTION
 Dans l’option restreindre l’accès, sélectionner utilisateur unique ;
 Si d’autre utilisateur sont connectées à la base de données, un message ouvrir
les connexions apparaît pour appliquer la propriété et fermer toute les autres
connexions, cliqué sur oui
- Dans l’explorateur d’objet développé sur base de données, cliquer avec le bouton
droit sur la base de données à renommer, puis cliquez sur renommer.
- Entrez le nom de la base de données puis cliquez sur OK.
b) Avec TSQL
USE master;
GO
ALTER DATABASE GL SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
ALTER DATABASE GL MODIFY NAME=GLCOPY;
GO
ALTER DATABASE GLCOPY SET MULTI_USER;
GO

5. SUPPRIMER LES FICHIERS DE DONNEE OU DE JOURNAUX


a) AVEC SSMS (SQL SERVER MANAGEMENT SYSTEM)
- Développer le dossier base de données, cliquer avec le bouton droit sur la base de
données sur laquelle vous souhaités supprimer le fichier, puis cliquez sur propriété ;
- Sélectionner fichier ;
- Dans la grille fichier à supprimer sélectionner OK.
USE master;
GO
ADMINISTRATION DES BASES DE DONNEES

ALTER DATABASE GLCOPY REMOVE FILE GL_dat;


GO
6) CREATION D’UN TABLE
1. AVEC SSMS
- Dans l’explorateur d’objet développé le nœud base de données, puis sélectionner la
base de données qui va contenir la nouvelle table
- Cliquez avec le bouton droit sur le nœud table, puis cliquez sur nouvelle table
- Entrez les noms des colonnes, choisissez le type de donnée, et spécifiez si les valeurs
NULL sont autorisés pour chaque colonne ;
- Pour spécifier d’avantages de propriété pour une colonne, cliquez sur la colonne et
choisissez les propriétés appropriées dans l’onglet propriété de la colonne ;
- Pour spécifier une colonne comme clé primaire, cliquez avec le bouton droit sur la
colonne et sélectionner définir la clé primaire ;
- Pour créer les relations de clé étrangère, de contrainte ou d’index, cliquez avec le
bouton droit dans le volet concepteur de table et sélectionner un objet dans la liste ;
Par défaut, la table est contenue dans le schéma DBO. Pour spécifier un schéma
différent, cliquer avec le bouton droit dans le volet concepteur de table, et sélectionné
propriété.
Dans la liste déroulante schéma, sélectionner le schéma approprié
- Dans le menu fichier, choisissez enregistrer nom de la table
- Dans la boite de dialogue, choisissez un nom pour la table, et cliquez sur OK

2. LES TYPES DE DONNEES SOUS SQL SERVER


- Les valeurs numériques exactes :
Int
Small Int
TINY Int
BIG Int
DECIMAL
NUMERIC
MONEY
MORE MONEY
- Les valeurs numériques:
FLOAT
ADMINISTRATION DES BASES DE DONNEES

REAL
- Date et heure
DATE
TIME
DATETIME
SMALL DATE TIME
DATE TIME 2
DATETIME OFFSET
- Le type chaine de caractère
CHAR
VARCHAR
TEXT
- Les chaines de caractère Unicode
NVARCHAR
NCHAR
NTEXT
- Les chaines binaires
TYPE IMAGE
TYPE BINARY
TYPE VARBINARY

3. AVEC TSQL
Use nom_bd ;
GO
CREATE TABLE schema (DBO)
4. Supprimer une table
Vous ne pouvez pas supprimer une table ayant une contrainte, vous devez au préalable
supprimer la contrainte. Lorsqu’ une table est supprimée les règles et valeurs qui lui sont
associées sont supprimées automatiquement
ADMINISTRATION DES BASES DE DONNEES

La suppression d’une table entraine automatiquement celle de toute les relations qu’elle
entretient

a) SOUS SSMS
- Dans l’explorateur d objet développer le nœud base de données, sélectionner la base
de données, puis le nœud table
- Cliquer avec le bouton droit sur la table, puis dans le menu contextuel cliquez sur
supprimer
- Un message vous demande de confirmer la suppression cliquez sur ok

5. RENOMMER UNE TABLE


a) SOUS SSMS
- Dans l’explorateur d’objet cliquer avec le bouton droit sur la table a renommé
Use GL ;
Go
Exec sp_rename ‘[Link]’, ‘cours’;
Go

6. AJOUTER DES COLONNES A UNE TABLE


a) Avec SSMS
- Dans l’explorateur d’objet, développer le nœud base de données, sélectionner la base
de donner puis cliquer sur la table sur laquelle vous souhaiter ajouter des colonnes
- Faire un clic droit sur la rubrique colonne puis cliquer sur nouvelle colonne
- Entrez les nouvelles colonnes avec leur type puis valider

b) Avec TSQL
ALTER TABLE [Link] ADD NOM_COLONNE TYPES1 …. ,
GO
7. SUPPRIMER UNE COLONNE
a) SOUS SSMS
- Recherché la table donc vous souhaités supprimer les colonnes, développer la pour
exposer les noms des différentes colonnes
- Cliquer avec le bouton droit sur la colonne à supprimer puis cliquer sur supprimer
- Dans la boite de dialoguer supprimer un objet cliquer sur ok
- Si la colonne contient des contraintes ou d’autre dépendance, un message s’affichera
dans la boite de dialogue supprimé un objet. Résolvez l’erreur en supprimant les
contraintes référencées
- Vous ne pouvez pas supprimer une colonne ayant une contrainte check, vous devez
d’abord supprimer la contraint
ADMINISTRATION DES BASES DE DONNEES

- Vous ne pouvez pas supprimer une colonne ayant des contraintes, primary key ou
foreign key ou d’autre dépendance, sauf si vous utilisés le concepteur de table

b) TSQL
ALTER TABLE [Link]
DROP COLUMN NOM_COLONNE ;
DROP CONSTRAINT NOM_COLONNE ;
GO
8. RENOMMER UNE COLONNE
a) SSMS
- Dans l’explorateur d’objet, cliquer avec le bouton droit sur la colonne à renommer et
choisissez renommer
- Entrez un nouveau nom à colonne puis validez
b) TSQL
USE NOM_BD ;
GO
EXEC SP_RENAME
‘SCHEMA.NOM_TABLE.NOM_ANCIENNECOLONNE’ ,
‘NOM_NOUVELLECOLONNE’, ‘COLUMN’ ;
9. INSERER DES LIGNES DANS UNE TABLE
10. Cas pratique
Créer une base de données Gest_Etudiant avec 3 trois extension un fichier primaire, un
secondaire et
ADMINISTRATION DES BASES DE DONNEES

Créer les tables


Remplissez cette bd à l’aide du tableau ci-dessous.
Affichez les toutes les tables,
ADMINISTRATION DES BASES DE DONNEES

1. Création base de données


USE master ;
GO
CREATE DATABASE GEST_ETUDIANT
ON
(NAME = GEST_ETUDIANT_dat,
FILENAME = "C:\Program Files\Microsoft SQL
Server\[Link]\MSSQL\DATA\GEST_ETUDIANT.mdf",

SIZE=10,
MAXSIZE = 50,
FILEGROWTH = 5),
ADMINISTRATION DES BASES DE DONNEES

(NAME = GEST_ETUDIANT_dat2, FILENAME =


"C:\Program Files\Microsoft SQL
Server\[Link]\MSSQL\DATA\GEST_ETUDIANT.ndf",

SIZE=10,
MAXSIZE = 50,
FILEGROWTH = 5)

LOG ON
(NAME = GEST_ETUDIANT_dat,
FILENAME = "C:\Program Files\Microsoft SQL
Server\[Link]\MSSQL\DATA\GEST_ETUDIANT.ldf",
SIZE = 5 ,
MAXSIZE = 25,
FILEGROWTH = 5);
GO
Suite du TD

/*CONNNEXION A LA BASE DE DONNEE GEST_ETUDIANT*/

USE GEST_ETUDIANT;
GO
/* CREATION DE LA TABLE ETUDIANT EN DBO*/

CREATE TABLE [Link] (


num_etud INT PRIMARY KEY IDENTITY(01234567,1),
nom NVARCHAR(20) NULL,
prenom NVARCHAR(20) NULL,
date_naiss DATE,
sect VARCHAR(20) NULL,
age INT
);
ADMINISTRATION DES BASES DE DONNEES

/* CREATION DE LA TABLE code mat EN DBO*/


CREATE TABLE DBO.Code_mat (
code_mat INT PRIMARY KEY,
nom_mat NVARCHAR(20) NULL,
coef INT CHECK(coef > 0),

);

/* CREATION DE LA TABLE NOTE EN DBO*/


CREATE TABLE [Link](
num_etud INT,
code_mat INT,
note FLOAT CHECK( note> 0 and note <20),

FOREIGN KEY(num_etud) REFERENCES [Link](num_etud),


FOREIGN KEY(code_mat) REFERENCES DBO.Code_mat(code_mat)

);

GO

SELECT DISTINCT * FROM [Link]


INNER JOIN [Link]
ON
[Link].num_etud = [Link].num_etud
WHERE
[Link].code_mat = 12518;
ADMINISTRATION DES BASES DE DONNEES

Afficher la liste des etudiants dont le nom a‘O’


Use Gest_Etudiant ;
Go
Select*from [Link] like Nom like ‘%[O]%’;
Go
Nom de l’étudiant qui a la plus grande note ?
Nb lorsqu’ on est face à une requette il faut se poser la question qu’est ce que je suis sensé
faire et quelle sont les tables à utiliser ?
Use Gest_Etudiant
Go
Select Top(1)* from [Link] e
Inner join note n on([Link]-Etud=n.num_Etud)
order by [Link] DESC;
go
oubien
select nom from [Link] e inner join [Link] n on ([Link]-Etud=n.num_Etud)
where [Link]= (select max (note) from [Link]);
go

Pour chaque section le nombre d’étudiant inscrit ?


Use Gest_Etudiant
Go
Select section, count (*) as nombre etudiant from [Link]
Group by ([Link] .section);
Go

Nombre d’étudiant née en 1988


Use Gest_Etudiant
ADMINISTRATION DES BASES DE DONNEES

Go
Select count (*) as Nes_en_1988 from [Link] where year(date_naiss)=1988;
Go
Afficher la moyenne de chaque étudiant
Use Gest_Etudiant
Go
Select nom, isnull(note*coef/sum(coef),0)as moyenne from [Link] e
Left join [Link] n on([Link]-etud=n.num_etud)
Left join [Link] m on(n.code_mat=m.code_mat)
Group by nom;
go
TD”2 Gest_Directeur
afficher la liste de client appartenant à la catégorie1 par ordre décroissant
select *from client where num_cat=1 order by nom_cl;
liste des clients qui a pour directeur Inno ?
slect*from [Link] C inner join [Link] D on (D.Num_directeur=C.Num_directeur)
where nom_directeur=’ HInaud’ ;
go
afficher la liste des directeur,
pour chaque chef de secteur le nombre de departement qu’il a à sa tete
selsct chef_secteu, count(*) as nombre_depart
from [Link]
group by ([Link].chef_secteur);
go

liste des directeurs ayant pour chef secteur Fisher


select* from [Link]
inner join [Link]
on
ADMINISTRATION DES BASES DE DONNEES

[Link].num_dir= [Link].num_direct
inner join [Link]
on [Link].code_dep= [Link].code_dep
where
[Link].chef_secteur=’FISHER’ ;
go

la liste des clients qui bénéficie de 2%


select*from [Link]
inner join [Link]
on
client.num_cat = categorie.num_cat
where [Link] =’2%’;

go

LISTE DES CHEFS SECETEUR QUI ONT AU MOINS 2 DEPARTEMENTS A LEUR


TETE

 Select chef_secteur ,count(nom_dep) from [Link] group by

Chef_secteur having count (nom_dep)> =2;

go

Liste des client qui appartient àdes collecteivité

Select nom_cl from [Link] C inner join dbo,categorie ca

On (c.num_cat = ca.num_cat) where nom_cat=’collectivité’;

Go

Nom des departement dont la 3ème lettre est ‘L’

Select nom_dep from [Link] where nom_dep like’_ _ L%’


ADMINISTRATION DES BASES DE DONNEES

Go

Liste des directeurs dont l’âge est supérieur à la moyenne des âges

Select nom_directeur from [Link] where age >(select AVG(age)from directeu);

Go

Nb structure de

Select nom_champ, fonction

From dbo.nom_table

Clause (Where

Order by

Group by

Having)

Condition

Go

7) Supprimer une table

- Vous ne pouvez pas supprimer une table qui est référencer par une contrainte foreign key
vous devez au préalable supprimer la contrainte ou la table qui la référence
- Lorsqu’une table est supprimée les règles et les valeurs par défauts sont supprimer et toutes
les contraintes qui lui sont associes sont automatiquement supprimer
- La suppression d’une table entraine automatiquement celles de toutes les relations qu’elle
entretient

A – sous SSMS
- Dans l’explorateur d’objet développer le nœud base de données puis sélectionner la base de
données ensuite le nœud table
- Cliquez avec le bouton droit sur la table puis dans le menu contextuel cliquer sur supprimer
- Un message vous demander de confirmer la suppression cliquer sur ok

b- Sur TSQL
Requête :

Use Nom_de la BD

Go
ADMINISTRATION DES BASES DE DONNEES

Drop table nom_schema.nom_table

Go

Renommer une table


a. Avec SSMS
- Cliquer avec le boutton droit sur la rable a renommer
- Puis entrez un nouveau nom a la colonne puis valider

b. Avec TSQL
Use Nom_de_la bd

go

EXEC SP_Rename [schema.ancien_nom, nouveau_nom]

9. ajouter des colonnes a une table

a) Avec SSMS
- Dans l’explorateur d’objet développer le nœud base de données , sélectionner la base de
donner puis cliquer sur la table sur la quel vous voulez ajouter des colonnes
- Faire un cliquer droit sur nouvelles colonnes entrez les nouvelles colonnes avec leurs types
et valider

b) Avec TSQL

Alter table schema.nom_table ADD nom_colonne type go ;

10. supprimer une colonne

a) SOUS SSMS
- Recherchez la table donc vous souhaitez supprimer les colonnes, développez la pour exposez
le nom des différentes colonnes
- Cliquer sur le bouton droit de la colonnes a supprimer puis choisissez supprimer
- Dans la boite de dialogue afficher cliquer sur OK
- Si la colonne contient des contraintes ou d’autres dépendance un message d’erreur
s’afficheras dans la boite de dialogue supprimer un objet. Résolvez l 'erreur en supprimant
les contraintes référencer

NB : vous ne pouvez pas supprimer un colonnes avec une contrainte check vous devez d’abord
supprimer la contrainte

- Vous ne pouvez pas supprimer une colonnes comportant une contrainte primary key ou
foreign key ou d’autre dépendance sauf si vous utilisez le concepteur de table, dans le cas
contraire vous devez d’abord supprimer tout les dépendances de la colonne
ADMINISTRATION DES BASES DE DONNEES

b) SOUS TSQL

11) Renommer une colonne

A) Avec SSMS
- Dans l’explorateur d’objet cliquer avec le bouton droit sur la colonne à renommer et
choisissez renommer
- Entrez un nouveau nom à la colonne puis valider
B) AVEC TSQL

- Vous faite
o USE nom_bd
 EXEC SP_RENAME ‘SCHEMA.nom_Table.nom_encienne_colonne’,
‘nom_nouvelle_colonne’ , ‘column’ ;
o Go

12) insérer des lignes dans une table

INSERT INTO DBO.nom_table

Values (valeur (correspondant au type du champ` ))

II. Les Procédures Stocker


Une procédure stoker dans SQL server est un groupe d’une ou plusieurs instructions TSQL pour être
réutiliser plus facilement. Les procédures stoker ressemble à des instructions d’autre langage de
programmation car elles peuvent :

- Accepter des paramettres d’entres et retourner plusieurs valeus sous la forme de parmatre
de sortir au programme appelant
- Contenir des instructions de programmation qui effectue des operations qui effectue des
operations dans la base de donnes

Les procedures stockes donnes les avantages suivants :

- Elle garantissent un temps de reponse plus rapide et une meilleur performance du système
- Elle permettent de ne plus ecrires les memes instructions
- Il est possible de donner aux utilisateurs le droit d’executer les procedures stoker sans
qu’elle est le droit sur les objets qu’elle manipule

a. Les tyoes de procedures stockes

- Les procédures stokes definis par l’utilisateur


ADMINISTRATION DES BASES DE DONNEES

- Une procedure definir par l’utilisateur peut etre cree dans une base de donnnes definir par
celui-ci ou toute autre base de donnees syteme a l’exception de la base de donnes nommer
resource
 Les Pocedures Temporaire
o Les sont une autre forme de procédures stoker défini par l’utilisateur. Il en existe
deux types :
 Les procedures temporaires locale
 Les procedures temporaires globale

le premier caractere du nom des procedues temporaires locale est un #. Ces procedures sont
disponible seulement pendant la connexion de l’utilisateur et sont supprimer des que la connexion
est fermer.

Par contre les oms des procédures temporaires globales débute avec ## . ces procedures sont visible
a toute utilisateur et sont supprimer a la fin de la dernier session qui utilise la procédure

 Les Procedures système

Elles sont inclussent dans SQL Server et elle sont stoker physiquement dans la base de
données ressources mais apparaissent logiquement dans le schema SYS defini soit pas le
système soit par l’utilisateur. La base de donnee MSBD contient egalement les procedures
stoker système dans le schema dbo utiliser pour planifier les alertes

NB :

- Etant donner que les procedures stoker Système commence par le préfix sp_ il est
recommande de ne pas utiliser ce préfix quand vous nommer vos procédures etant donner
- Si un user cree une procedure stocker potant le meme nom qu’une procedure système cette
procedure ne s’exectera jamais
- La programmation d’une procedure stoker difere celon que cette procedure ne recois aucun
paramettre , recois des paramettres en entre, renvoi des paramettre de sortir ou retourne
une valeur

c. Cree une procédure Stocker

- Sous SSMS

Connectez vous a une instance du moteur de base de donnees

Develloper base de donnees

Ensuite cliquer sur programmabilite

Cliquer avec le boutton droit sur procedure stoker

Dans le menu requete cliquer sur specifier les valeurs de parametre du model

Dans la boite de dialogue entrez les valuers suivantes :


ADMINISTRATION DES BASES DE DONNEES

Paaramettre Valeurs
Auteur Votre nom
Date de Creation Date du jour
Description Donnee qui retourne ce que fait votre Procedure

Procedure_name Nom de la procedure stocke


@param @nom du param 1
@datetype_from_param1 Type de parametre 1
@default_value_from_param1 Valeur par default tu parametre 1
@param 2 //
@datetype_from_param2 //
Default_value_from_param2 //

Cliquer sur Ok puis dans l’éditeur de requête écrivez votre requete . ensuite pour tester la syntaxe
dans le menu requete cliquer sur analyse. Si un sms d’erreur est retourner comparer les
insstructions avec les instructions propose et apporter les corrections nécessaire

Pour executer la procedure cliquer sur le boutton droit sur le nom de la procedure et selectionner
executer la procedure stocke e entrant les paramettres correspondant.

- Avec TSQL

Create PROCEDURE [schema]. nom_procedure


@param1 type,
@param n type n
As
SET NOCOUNT ON;
// instruction TSQL
Go

Exo

Procédure stocké qui affiche la classe et le niveau de l’étudiant en fonction de la procédure

Use gest_etudiant

Create procedure [Link]

@Mat varchar (11)


ADMINISTRATION DES BASES DE DONNEES

As

Set Nocount on;

Select [Link], [Link]

From [Link] E, [Link] C, [Link] N, dbo.Niv_et_classe NIV

Where [Link] =@Mat AND

[Link] =[Link] AND C.code_classe=NIV.code_classee and


N.id_numero=NIV.id_numero ;

GO

 Déclaration d’une variable

DECLARE @ nom_de_la_Variable type

 Affectation d’une valeur à une variable

SELECT @NOM_VARIABLE = VALEUR

OU

SET @NOM_VARIABLE = VALEUR

 Affectation Des informations

PRINT(……)

 Utilisation des structureS alternativeS


- Le If else

If condition

BEGIN

// instruction

END

ELSE

BEGIN
ADMINISTRATION DES BASES DE DONNEES

// instruction

END

Exple afficher erreur lorsque l’utilisateur entre un nom qui n’est pas ds la bd.

Use Gest_etud

Create procedure [Link]

@penom varchar(25)

DECLARE @Pre varchar(25)

AS

Set nocount on;

Select @Pre=(select prenom from [Link] where prenom=@Prenom);

If (@Pre is not null)

BEGIN

Select nom_etud,mat_etu

From [Link]

Where Prenom=@prenom,

END

Else

Begin

Print’le prenom n’existe pas

END

Go

Exo je souhaite vérifier qu’un étudiant a une note en SQL server. Si c’est le cas on affiche la
note de l’étudiant si ce n’est pas le cas on affiche ‘ l’étudiant tel n’a pas de note’

Correction

Use Gest_etudiant ;
ADMINISTRATION DES BASES DE DONNEES

Go

Create procedure dbo.not_sql

@nom varchar (25), @matier varchar (25)

AS

SET NOCOUNT ON

Declare @note float

Set @note= (select note from [Link])

 Le CASE when condition 1 then resultat 1


When condition n then résultat n
Else resultat
END

Expel afficher la liste des etudiants (nom et prénom avec en plus une colonne genre qui
affiche masculine , feminine en function du sexe de l’étudiant)

CREATE PROCEDURE [Link]


AS
SET NOCOUNT ON ;
SELECT nom, prenom, ‘genre’=
CASE
WHEN sexe= ‘M’ THEN ‘MASCULIN’
WHEN sexe= ‘F’ THEN ‘FEMININ’
ELSE ‘AUTRES’
END

FROM [Link]

GO

EXO
Afficher la liste des étudiants et indiquer dans chaque colonne type s’il est
MINEUR ou MAJEUR
Use
Go
ADMINISTRATION DES BASES DE DONNEES

Create procédure dbo.get_type

As

Set nocount on;

Select nom,prénom, ‘type’=

CASE

WHEN (year (getdate ()) – year (date_naiss)<18) THEN ‘MINEUR’

WHEN (year (getdate()) – year (date_naiss)>=18) THEN ‘MAJEUR’

END

From dbo.étudiants

Go

Gestion des transactions

Une transaction permet d’exécuter un groupe d’instruction, si pour une raison quelconque
l’une de ces instructions n’a pas été exécutée, tout le groupe d’instruction est annulé :
 Pour déclarer une transaction, on utilise l’instruction BEGIN TRAN.
 Pour valider la transaction, et rendre les traitements qui lui sont associés effectifs, on
utilise l’instruction COMMIT TRAN.
 Pour interrompre une transaction en cour qui n’a pas encore été validée, on utilise
l’instruction ROLLBACK TRAN
Syntaxe :
BEGIN TRAN nom
//Instruction.
COMMIT TRAN
Exple :
BEGIN TRAN exple
Delete from commande where numCom=5
Delete from ligneCommande where numCom=5
COMMIT TRAN
ADMINISTRATION DES BASES DE DONNEES

La gestion des messages d’erreur

Lorsqu’une erreur est rencontrée, le moteur de BD associe à celle-ci un message. Si


l’erreur n’existe pas dans la table [Link] de la bd master, elle obtient le code
50000. Le moteur ajoute également une notion de sévérité (degré de gravité d’une erreur),
qui est notée par une valeur :
 De 0 à 9 : cela veut dire que les messages d’informations signalent des erreurs qui
ne sont pas très graves (avertissements).
 Sévérité 10 : Les messages d’informations signalent des erreurs peut graves, et le
moteur de bd convertis une gravité 10 en gravité 0.
 Gravité 11 : Indique que l’objet ou l’entité n’existe pas.
 Sévérité 12 : Utilisé pour des requêtes qui n’ont pas de verrou.
 Sévérité 13 : Indique des erreurs de blocage liées aux transactions.
 Sévérité 14 : Indique des erreurs liées à la sécurité, tel qu’une autorisation refusée.
 Sévérité 15 : Indique des erreurs de syntaxe.
 Sévérité 16 : Indique des erreurs générales.
 De 17 à 19 : Indique des erreurs logicielles qui ne peuvent pas être corrigées par
l’utilisateur.
 De 20 à 24 : Indique une défaillance du système, et des erreurs fatales qui peuvent
endommager la BD.

Utilisation du RAISERROR :f

Elle permet d’afficher un message erreur.


RAISERROR ({msg_id | msg_str| @local_variable},
{severité, état},
[argument [1,..n]]
[with option [1,..n]])

Message_id indique le numéro du message pour faire appel à un message déjà disponible
dans la table [Link].
Message_str : Il affiche le message personnalisé par l’utilisateur.
@local_variable : Permet d’appeler la variable initialisée par l’utilisateur.
Sévéérité : Représente le niveau de gravité d’une erreur. Seul l’administrateur peut ajouter
des messages avec un niveau de gravité situé entre 19 et 24.
Létat : Entier compris entre 0 et 255, et identifie la source à partir de laquelle l’erreur a été
émise.
ADMINISTRATION DES BASES DE DONNEES

Argument : Ce sont des paramètres servant à la substitution des variables définis dans le
message.
With OPTION : C’est une option personnalisée pour l’erreur.
La gestion des curseurs.

Common questions

Alimenté par l’IA

An OLTP (Online Transactional Processing) server is characterized by handling a large number of transactions that involve small amounts of data per transaction, rapid response times, support for a large number of users, and high availability . These characteristics are crucial for transactional operations because they ensure efficient handling of numerous concurrent short transactions such as financial transactions or order entries, maintaining system performance and user satisfaction.

The SQL Server Agent is responsible for automating and scheduling tasks like backups, system maintenance, and alerts . It is vital for database management because it ensures regular, consistent execution of maintenance tasks, error alerts, and thereby contributes to server reliability and performance optimization.

In SQL Server databases, each database consists of primary, secondary, and log files . The primary data file (.mdf) is essential and contains the startup information for the database. Secondary data files (.ndf) are optional and can be used to spread data across multiple files or disks. Log files (.ldf) record all transactions and changes, crucial for data recovery .

SQL Server Integration Services (SSIS) is used for the import, export, transfer, and transformation of data in SQL Server . It plays a critical role in data management by enabling complex data integration and workflow solutions, automating data tasks, and facilitating data migration among different databases and formats.

Stored procedures in SQL Server are re-usable collections of Transact-SQL code that perform operations in the database. Advantages include faster execution times, reduced network traffic, easier maintenance, and the ability to grant permissions without exposing the underlying data structure .

SQL Server supports multi-dimensional data analysis primarily through SQL Server Analysis Services (SSAS). SSAS allows users to design, create, and manage multi-dimensional structures for online analytical processing (OLAP), enabling complex analytical queries, performance management, and data mining.

SQL Server supports various data types for efficient data storage and retrieval, including exact numeric types (INT, BIGINT), approximate numeric types (FLOAT), character string types (CHAR, VARCHAR), Unicode string types (NCHAR, NVARCHAR), and binary types (BINARY, VARBINARY). The significance lies in choosing the appropriate type for efficient storage, accurate data representation, and optimized querying operations.

Constraints such as primary keys, foreign keys, and checks impede the dropping of columns or tables as these constraints ensure data integrity and relationships . Removing a column or table with active constraints involves first resolving these, which means dropping or altering dependencies to maintain database consistency.

SQL Server Management Studio (SSMS) enables users to perform all operations related to the database engine . It facilitates database administration by providing an integrated environment for managing SQL infrastructure, including design, development, and querying of databases, alongside offering tools for performance tuning, configuring server settings, and establishing security protocols.

Using T-SQL to create a database involves the CREATE DATABASE command followed by specifying the database name and file locations for primary and log files . For deletion, the DROP DATABASE command is used after switching to the master database context . Steps include entering the commands in a query editor and executing them to affect changes in the server.

Vous aimerez peut-être aussi