Réseau CERTA Dijon Page 1 Langage SQL
PRISE EN MAIN D’INTERBASE
ADMINISTRATION D’UNE BASE DE DONNÉES
Ce support a pour objectif de prendre en main les instructions de base du langage de définition de
données de SQL, pour vous permettre de créer une base de données et les contraintes qui lui sont
associées.
PREMIERE PARTIE : Création, suppression des tables
Attention à la syntaxe (virgules, parenthèses et au point-virgule de fin d'instruction).
EXERCICE 1 : Création de la table PRODUIT
La création d’une table s’effectue à l’aide de la console d’administration IBConsole.
À partir de l'outil "Interactive SQL" de la console, saisir l'ordre SQL ci-dessous :
create table PRODUIT(
REFPDT CHAR(5) not null constraint PK_PRODUIT primary key,
DESPDT CHAR(50),
PUHTPDT DECIMAL(5,2)
);
Sauvegarder l’ordre SQL dans un script de requête.
Exécuter cette requête SQL, en appuyant ensuite sur le troisième bouton en cliquant sur le bouton
Exécuter.
Sauvegarder l’ordre SQL dans un script de requête.
PUHTPDT DECIMAL(5,2),
constraint PK_PRODUIT primary key (REFPDT)
);
Tester ce script SQL
supprimer d’abord la table "produit" grâce à la requête interactive : drop table produit;
récupérer votre script cr_produit.sql ("Query", "Load Script"),
modifier la requête
sauvegarder la requête (sous le nom cr2_produit.sql).
exécuter la requête
Réseau CERTA Dijon Page 2 Langage SQL
EXERCICE 2 : Création de la table VENDEUR
Créer un script SQL à partir du "Bloc-Notes" ou de "WordPad"
saisir les ordres SQL ci-dessous
sauvegarder le script sous le nom cr_vendeur.sql.
create table VENDEUR(
CODEVENDEUR CHAR(1) not null,
NOMVENDEUR CHAR(25),
PRENOMVENDEUR CHAR(25)
);
alter table VENDEUR
add constraint PK_VENDEUR primary key (codevendeur)
;
Exécuter la requête (en retournant à l’outil "Interactive SQL" de la console IB6)
EXERCICE 3 : Création des autres TABLES
En utilisant la méthode de votre choix, créer les autres tables.
Vous trouverez dans le fichier cr_autres_tables.sql les lignes ci-dessous :
create table CLIENT(
NUMCLT INTEGER not null,
CODEVENDEUR CHAR(1) not null,
NOMCLT CHAR(25),
ADR1CLT CHAR(30),
ADR2CLT CHAR(30),
CPVILLECLT CHAR(30),
TELCLT CHAR(10),
EMAILCLT CHAR(30),
REPLIQUE NUMERIC(1),
constraint PK_CLIENT primary key (NUMCLT)
);
create table COMMANDE(
CODEVENDEUR CHAR(1) not null,
NUMCDE INTEGER not null,
NUMCLT INTEGER not null,
DATECDE DATE,
constraint PK_COMMANDE primary key (CODEVENDEUR, NUMCDE)
);
create table CONTENIR(
CODEVENDEUR CHAR(1) not null,
NUMCDE INTEGER not null,
REFPDT CHAR(5) not null,
QTE INTEGER,
PU DECIMAL(5,2),
constraint PK_CONTENIR primary key (CODEVENDEUR, NUMCDE, REFPDT)
);
Remarque : les tables Commande et Contenir vous permettent de voir comment créer une clé
primaire composée de deux champs ou plus, grâce à une contrainte de "niveau table".
Réseau CERTA Dijon Page 3 Langage SQL
EXERCICE 4 : Création des contraintes d'intégrité référentielles
Saisir les contraintes d’intégrité entre les différentes tables
les lignes ci-dessous qui vous permettent de créer les contraintes de clés étrangères traduisant les
relations entre les tables :
Association SUIVRE entre CLIENT et VENDEUR
alter table CLIENT
add constraint FK_CLIENT_SUIVRE_VENDEUR foreign key (CODEVENDEUR)
references VENDEUR;
Association PASSER entre COMMANDE et CLIENT
alter table COMMANDE
add constraint FK_COMMANDE_PASSER_CLIENT foreign key (NUMCLT)
references CLIENT;
Association OBTENUE_PAR entre COMMANDE et VENDEUR
alter table COMMANDE
add constraint FK_COMMANDE_OBTENUE_PAR_VENDEUR foreign key (CODEVENDEUR)
references VENDEUR;
Association CONTENIR entre PRODUIT et COMMANDE
alter table CONTENIR
add constraint FK_CONTENIR_PRODUIT foreign key (REFPDT)
references PRODUIT;
alter table CONTENIR
add constraint FK_CONTENIR_COMMANDE foreign key (CodeVendeur,Numcde)
references COMMANDE;
Vous trouverez ces instructions SQL dans le fichier ajout_contraintes.sql.
Supprimer la table "Contenir". Que dit le message d'erreur ?
EXERCICE 5 (SYNTHÈSE) : Création de la base de données
Exécuter le script suppression_tables.sql
Créer un script intégrant toutes les requêtes de création des tables et des contraintes d’intégrité
référentielle
Créer la base de données à partir de ce script.
Réseau CERTA Dijon Page 4 Langage SQL
EXERCICE 6 : Alimentation de la base de données
En utilisant l’ordre SQL d’insertion de lignes dans une table, créer les lignes de données
demandées par le sujet pour chacune des tables.
Vous pouvez réaliser la première insertion en mode interactif, puis créer un script pour les
autres lignes, et l’exécuter.
I. Ajouter des données
Voici l'ordre SQL permettant d'insérer une ligne dans la table Vendeur.
insert into vendeur values('A','Dumont','Frédéric');
Ajoutez les lignes de données demandées par le sujet pour chacune des tables.
1 / 4 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 !