Maintenir les contraintes d'intégrité
|
|
- Edgar Bellefleur
- il y a 8 ans
- Total affichages :
Transcription
1 Maintenir les contraintes d'intégrité
2 Contraintes d'intégrité Plusieurs possibilités pour les maintenir: Dans les définitions des tables Triggers Utilisation de vues et des contraintes sur les vues With check option Read only 2
3 Dans les définitions des tables : rappel contrainte-col: contraintes sur une colonne NOT NULL UNIQUE PRIMARY KEY REFERENCES nom_table [(nom-col)] [action] CHECK (condition) contrainte-table: contraintes sur une table UNIQUE (nom-col)* PRIMARY KEY (nom-col)* FOREIGN KEY (nom-col)* REFERENCES nom_table [(nom-col)*] [action] CHECK (condition) 3
4 Triggers
5 Trigger Concept de base de données active Exécuter une opération suite à un changement survenu dans la base de données: DML sur des éléments de la BD DDL sur la BD Événements d administration: logon, démarrage BD, Permet de Maintenir les contraintes d'intégrité Calculer des valeurs dérivées Maintenir des données répliquées et des vues complexes matérialisées etc 5
6 Evénement Condition - Action Un trigger est activé par un événement Insertion, suppression ou modification sur une table Si le trigger est activé, une condition est évaluée Prédicat qui doit retourner vrai Si la condition est vraie, l'action est exécutée Insertion, suppression ou modification de la base de données (Bloc PL-SQL contenant: des ordres SQL et/ou des appels à des procédures stockées écrites en PL-SQL ou en JAVA) 6
7 Exemple CREATE TRIGGER MAJ_Pays AFTER UPDATE OF population ON Pays FOR EACH ROW WHEN (new.surface > 0) UPDATE Pays_stat SET pop_avg = population/surface WHERE nom = :new.nom; END; condition Événement action 7
8 Exécution d'un trigger Avant, après ou au lieu de l'événement AFTER BEFORE INSTEAD OF AFTER/BEFORE: tables INSTEAD OF: vues (utile pour les vues qui ne peuvent pas être mises à jour) Événement: INSERT ON nom-table DELETE ON nom-table UPDATE [OF noms-d'attributs] ON nom-table Invocation de l'événement une fois par table ou pour tous les tuples affectés [FOR EACH ROW] 8
9 Exemple CREATE OR REPLACE TRIGGER Log_salary_increase AFTER UPDATE ON Emp_tab FOR EACH ROW WHEN (new.sal > 1000) INSERT INTO Emp_log (Emp_id, Log_date, New_salary, Action) VALUES (:new.empno, SYSDATE, :new.sal, 'NEW SAL'); END; UPDATE Emp_tab SET Sal = Sal WHERE Deptno = 20; Si 5 employés dans département 20, alors le trigger est déclenché 5 fois CREATE OR REPLACE TRIGGER Log_emp_update AFTER UPDATE ON Emp_tab INSERT INTO Emp_log (Log_date, Action) VALUES (SYSDATE, 'Emp_tab COMMISSIONSCHANGED'); END; UPDATE Emp_tab SET Sal = Sal WHERE Deptno = 20; Quelque soit le nb d'employés dans département 20, le trigger est déclenché 1 fois 9
10 Références aux valeurs modifiées CREATE TRIGGER MAJ_Log AFTER UPDATE ON Pays FOR EACH ROW WHEN (new.surface <> old.surface) INSERT INTO Pays_log (nom, libellé) VALUES (:new.nom, 'surface_changée'); END; / 10
11 Syntaxe des triggers (SQL 1999) Syntaxe: CREATE [OR REPLACE] TRIGGER nom-du-trigger BEFORE AFTER INSTEAD OF INSERT DELETE UPDATE [OF noms-d'attributs] ON nom-table [FOR EACH ROW] [WHEN (condition)] <bloc PL-SQL ou appel à procédure stockée écrite en PL-SQL ou en Java> 11
12 PL-SQL PL-SQL: extension procédurale du langage SQL PL-SQL: déclaration de variables typées, traitements itératifs, traitements conditionnels, gestion des erreurs. Utilisé pour écrire des méthodes (fonctions et procédures) des types objet, triggers, packages, procédures et fonctions stockées dans Oracle. 12
13 Structure d'un bloc PL-SQL DECLARE Déclaration des variables, constantes, curseurs, exceptions Corps du bloc: -ordres SQL -commandes procédurales -traitement des curseurs - EXCEPTION Gestion des erreurs END; / 13
14 Contenu d'un bloc PL-SQL un bloc PL-SQL peut contenir: toute instruction du LMD (SELECT, INSERT, UPDATE, DELETE) Les commandes de gestion des transactions (COMMIT, ROLLBACK (TO), SAVEPOINT) tout prédicat utilisable dans SQL les sections DECLARE et EXCEPTION sont optionnelles chaque instruction se termine par ";" Les blocs peuvent être imbriqués les sous-blocs ont la même structure que les blocs 14
15 Blocs imbriqués DECLARE DECLARE EXCEPTION END EXCEPTION DECLARE EXCEPTION END END; / Des sous-blocs peuvent être définis dans le corps du bloc et dans la partie exception Les variables sont locales au bloc dans lequel elles sont déclarées 15
16 Portée et visibilité des variables DECLARE A CHAR; B REAL; /* A (CHAR) B (REAL) */ DECLARE A INTEGER; C REAL;. END; DECLARE D CHAR; END; * A (CHAR) B (REAL) * END; /* A (INTEGER) B, C (REAL) */ /* A, D (CHAR) B (REAL) */ - si dans un bloc, une variable du même nom que la variable GLOBALE existe c'est la variable LOCALE qui s'impose - un bloc ne peut utiliser les variables d'un autre bloc de même niveau 16
17 Déclaration de variables
18 Déclaration de variables Variables déclarées dans la section DECLARE Variables peuvent avoir: n'importe quel type SQL: char, date, number, 18
19 Types 19
20 Déclaration de variables Syntaxe : nom_variable type_variable [NOT NULL] [:=val_init] [ DEFAULT val_defaut]; Exemple: nom VARCHAR2(30); pi REAL := ; radius REAL := 1; area REAL := pi * radius**2; blood_type CHAR DEFAULT O ; acct_id INTEGER(4) NOT NULL := 9999; num_client VARCHAR2(5) NOT NULL DEFAULT 'AJ235' 20
21 Déclaration de constantes Analogue à la déclaration de variables Ajout du mot-clé CONSTANT Exemple: Pi CONSTANT NUMBER := ; 21
22 Déclaration de types dynamiques %type permet d'associer à une variable le type d'une autre variable, d'une constante ou d'une colonne de table Intérêt: permet de ne pas avoir à modifier les programmes si on modifie le type d'une colonne Exemple: DECLARE credit REAL(7,2); debit credit%type; 22
23 Type dynamique %type Référence à une colonne d'une table Exemple: On a dans la BD, la table : EMPLOYE (empno NUMBER, ) On peut écrire un programme PL-SQL déclarant: DECLARE numéro Employé.empno%type --- la variable numéro a comme domaine de valeur NUMBER 23
24 Déclaration de "Record" Un record permet de définir des types composites (tuple): DECLARE TYPE DeptRec IS RECORD (dept_id dept.deptno%type, dept_name VARCHAR2(14), dept_loc VARCHAR2(13)); dpt DeptRec; dpt.dept_id 24
25 Type dynamique %rowtype %rowtype permet d'associer à une variable un type composite correspondant : à un tuple d'une table 25
26 Exemple On a dans la BD une table: EMPLOYE (empno NUMBER, nom VARCHAR2(30), sal NUMBER) Code PL-SQL: DECLARE emp_rec Employé%ROWTYPE;... emp_rec.empno emp_rec.nom 26
27 Affectation de valeurs soit par l'opérateur d'affectation := DECLARE salaire NUMBER; salaire := 2000; soit par un ordre select DECLARE salaire NUMBER; select sal INTO salaire from Employé where nom='dupont'; Attention dans cet exemple le select ne doit ramener qu'un tuple!!! 27
28 Exceptions
29 Exceptions C'est un mécanisme permettant de dérouter l'exécution normale du bloc vers la section exception le déroutement est soit: implicite dans le cas d'erreur Oracle explicite dans le cas d'erreurs définies par utilisateurs 29
30 Fonctionnement Lorsqu'une exception est détectée, il y a: arrêt de l'exécution du bloc branchement sur la section exception parcours des clauses when jusqu'à la bonne exécution des instructions associées Une fois le traitement de l'erreur terminé, c'est le bloc suivant qui est effectué 30
31 Fonctionnement DECLARE DECLARE DECLARE END; ERREUR!!!! EXCEPTION END; ERREUR!!!! si l exception n est pas traitée END; ERREUR!!!! EXCEPTION si l'exception est traitée SORTIE EN ERREUR DU BLOC SORTIE EN ERREUR DU BLOC SORTIE NORMALE DU BLOC 31
32 Fonctionnement DECLARE DECLARE DECLARE EXCEPTION END; ERREUR!!!! si l'exception est traitée instruction i EXCEPTION END; SORTIE NORMALE DU BLOC DECLARE ERREUR!!!! EXCEPTION si l'exception n est pas traitée END; instruction i EXCEPTION si l'exception est traitée END; propagation de l'erreur SORTIE NORMALE DU BLOC 32
33 Exceptions: 2 types Exceptions définies par oracle Nommées par oracle ex: TOO_MANY_ROWS, NO_DATA_FOUND... Se déclenchent automatiquement Nécessité de prévoir la prise en compte de l'erreur dans la section EXCEPTION Exceptions définies par l'utilisateur Nommées par l'utilisateur Sont soit déclenchées par une instruction du programme soit automatiquement (PRAGMA EXCEPTION_INIT) Nécessité de prévoir la prise en compte de l'erreur dans la section EXCEPTION 33
34 Définition d'une exception utilisateur Déclaration d'une variable de type exception dans la section DECLARE nom_exception EXCEPTION Définition du traitement associé WHEN nom_exception THEN trt Déclenchement: Soit associer à cette erreur un code oracle, elle sera levée automatiquement: PRAGMA EXCEPTION_INIT(nom_exception,code_erreur_oracle) soit lever manuellement l'exception RAISE nom_exception 34
35 Exemple d'erreur définie par utilisateur DECLARE pas_de_comm EXCEPTION; CURSEUR c_vendeurs is select * from emp where job='salesman'; noemp emp.empno%type FOR v_vend IN c_vendeurs LOOP IF v_vend.comm IS NULL THEN noemp:= v_vend.empno; RAISE pas_de_comm; END IF; END LOOP; EXCEPTION When pas_de_comm THEN END; 35
36 Exemple exception définie par utilisateur DECLARE deadlock_detected EXCEPTION; PRAGMA EXCEPTION_INIT(deadlock_detected, -60);... trt causant une erreur ORA EXCEPTION When deadlock_detected THEN -- prise en compte de l'erreur END; 36
37 Exemple Erreurs oracle DECLARE pe_ratio NUMBER(3,1); SELECT price / earnings INTO pe_ratio FROM stocks; -- erreur possible de division par 0 INSERT INTO stats (symbol, ratio) VALUES ( XYZ, pe_ratio); COMMIT; EXCEPTION When ZERO_DIVIDE THEN prise en compte erreur division by zero INSERT INTO stats (symbol, ratio) VALUES ( XYZ, NULL); COMMIT;... END; 37
38 Exception "others" exception prédéfinie porte le nom de others permet de gérer les erreurs oracle qui ne sont pas gérées explicitement WHEN OTHERS THEN deux fonctions permettent de récupérer des informations sur l'erreur oracle: sqlcode: code de l'erreur oracle sqlerrm: libellé de l'erreur 38
39 Exemple (1) DECLARE EXCEPTION WHEN OTHERS THEN code:=sqlcode; mess:=sqlerrm; dbms_output.put_line('erreur: ' code mess); END; 39
40 Exemple (2) DECLARE deadlock_detected EXCEPTION; PRAGMA EXCEPTION_INIT(deadlock_detected, -60);... trt causant une erreur ORA EXCEPTION WHEN deadlock_detected THEN -- prise en compte de l'erreur WHEN others THEN prise en compte de toutes les autres erreurs ROLLBACK; END; 40
41 raise_application_error il est possible de déclencher ses propres erreurs et de sortir du bloc comme lorsqu'une erreur oracle est détectée: raise_application_error(numéro, message) Exemple select * into rec from emp; IF rec.comm IS NULL THEN raise_application_error(-2000, 'mauvaise commission'); END IF; END; 41
42 Les blocs
43 les aspects procéduraux Conditions IF THEN ELSE END IF CASE Itérations LOOP, FOR i, WHILE Branchements séquentiels GOTO NULL 43
44 IF THEN ELSE IF THEN IF condition THEN sequence_of_statements END IF; IF THEN ELSE IF condition THEN sequence_of_statements1 ELSE sequence_of_statements2 END IF; IF THEN ELSIF IF condition1 THEN sequence_of_statements1 ELSIF condition2 THEN sequence_of_statements2 ELSE sequence_of_statements3 END IF; 44
45 Conditions Conditions peuvent comporter les opérateurs suivants: =, <,>,!=, <=, >=, <> IS [NOT] NULL [NOT] BETWEEN AND, [NOT] IN [NOT] LIKE AND, OR, NOT il doit y avoir au moins une instruction après le THEN 45
46 Exemple... IF sales > THEN bonus := 1500; ELSIF sales > THEN bonus := 500; ELSE bonus := 100; END IF; INSERT INTO payroll VALUES (emp_id, bonus,...); END; 46
47 CASE CASE selector WHEN expression1 THEN sequence_of_statements1; WHEN expression2 THEN sequence_of_statements2;... WHEN expressionn THEN sequence_of_statementsn; [ELSE sequence_of_statementsn+1;] END CASE; 47
48 Evaluation Evaluation séquentielle des conditions, si une condition est vraie, les instructions après le THEN sont effectuées et on sort du CASE Si aucune condition n'est vraie, les instructions associées au ELSE sont effectuées. Si pas de ELSE, PL-SQL ajoute la clause (implicite) ELSE suivante: ELSE RAISE CASE_NOT_FOUND; 48
49 Case, exemple CASE grade WHEN A THEN dbms_output.put_line( Excellent ); WHEN B THEN dbms_output.put_line( Very Good ); WHEN C THEN dbms_output.put_line( Good ); WHEN D THEN dbms_output.put_line( Fair ); WHEN F THEN dbms_output.put_line( Poor ); ELSE dbms_output.put_line( No such grade ); END CASE; 49
50 LOOP LOOP IF credit_rating < 3 THEN EXIT; -- sortie END IF; END LOOP; LOOP EXIT WHEN c1%notfound; -- sortie si la condition est vraie END LOOP; 50
51 WHILE WHILE condition LOOP END LOOP; WHILE total <= LOOP... SELECT sal INTO salary FROM emp WHERE... total := total + salary; END LOOP; 51
52 FOR FOR compteur IN [REVERSE] inf..sup LOOP END LOOP; FOR ctr IN REVERSE LOOP factor := ctr * 2; INSERT INTO T VALUES (ctr, factor); END LOOP; T: (10,20), (9,18), (8, 16) 52
53 GO TO Permet de se brancher sur un label du bloc courant... GOTO insert_row;... <<insert_row>> INSERT INTO emp VALUES... END; Attention, permet aussi de faire n'importe quoi!!! 53
54 NULL signifie "ne rien faire", passer à l'instruction suivante EXCEPTION WHEN ZERO_DIVIDE THEN ROLLBACK; WHEN VALUE_ERROR THEN INSERT INTO errors VALUES... COMMIT; WHEN OTHERS THEN NULL; END; 54
55 Les commandes SQL utilisables en PL-SQL
56 Ordres SQL autorisés Les ordres du LMD: SELECT INTO FROM UPDATE DELETE INSERT Les ordres de gestion des transactions COMMIT ROLLBACK, ROLLBACK TO LOCK TABLE 56
57 Les curseurs
58 Curseurs Oracle crée des zones de travail pour exécuter les ordres SQL, stocker leurs résultats et les utiliser: CURSEURS Deux types de curseurs: implicite : créés automatiquement par Oracle pour ses propres traitements explicite: créés par l'utilisateur pour pouvoir traiter le résultat de requêtes retournant plus d'un tuple 58
59 Curseurs Utilisation: quand une requête retourne plus d'une ligne il faut placer le résultat dans un curseur Comment? déclaration (DECLARE) ouverture (OPEN) utilisation (FETCH) fermeture (CLOSE) 59
60 Déclaration d'un curseur CURSOR nom_curseur IS ordre_select Exemple: DECLARE CURSOR c1 IS SELECT ename, job FROM emp WHERE sal < 3000; 60
61 Ouverture d'un curseur OPEN nom_curseur provoque l'exécution de la requête associée. Exemple: DECLARE CURSOR c1 IS SELECT ename, job FROM emp WHERE sal < 3000; OPEN c1;... END; 61
62 Fetch Permet de parcourir une à une les lignes retournées par l'ouverture du curseur Cette commande ne ramène qu'une seule ligne, il faut donc la mettre dans une boucle FETCH nom_curseur INTO var1, var2, où var1, var2 correspondent aux colonnes de l'ordre select 62
63 Fetch possible de définir une variable dynamique à partir d'un curseur: DECLARE CURSOR c1 IS SELECT deptno, dname, loc FROM dept; dept_rec c1%rowtype; open c1; LOOP FETCH c1 INTO dept_rec; 63
64 Attributs Quatre attributs permettent d'évaluer l'"état" du curseur: %NOTFOUND vrai si le dernier fetch n'a ramené aucune ligne %FOUND (inverse de %NOTFOUND) %ROWCOUNT compte le nombre de fetch exécutés sur un curseur %ISOPEN vrai si le curseur est ouvert 64
65 Exemple 1) FETCH C_VENDEURS INTO VENDEURS; EXIT WHEN C_VENDEURS%NOTFOUND; 2) FETCH C_VENDEURS INTO VENDEURS; IF C_VENDEURS%FOUND then insert into 3) FETCH C_VENDEURS INTO VENDEURS; IF C_VENDEURS%ROWCOUNT < 15 THEN attention ce n'est pas le nombre de lignes retournées 4) IF C_VENDEURS%ISOPEN THEN FETCH C_VENDEURS INTO VENDEURS; 65
66 Exemple DECLARE my_sal emp.sal%type; my_job emp.job%type; factor INTEGER := 2; CURSOR c1 IS SELECT factor*sal FROM emp WHERE job = my_job;... OPEN c1; LOOP FETCH c1 INTO my_sal; EXIT WHEN c1%notfound; factor := factor + 1; END LOOP; CLOSE c1; END; 66
67 Procédures PL-SQL est aussi utilisé pour définir des procédures stockées dans la base de données Syntaxe: CREATE [OR REPLACE] PROCEDURE procedure_name [(parameter[, parameter]...)] [local declarations] Corps PL-SQL [EXCEPTION exception handlers] END [name]; 67
68 Fonctions Syntaxe: [CREATE [OR REPLACE ] ] FUNCTION function_name [ ( parameter [, parameter]... ) ] RETURN datatype [local declarations] Corps PL-SQL [EXCEPTION exception handlers ] END [name]; 68
69 exemple PROCEDURE raise_salary (emp_id INTEGER, amount REAL) IS current_salary REAL; salary_missing EXCEPTION; SELECT sal INTO current_salary FROM emp WHERE empno = emp_id; IF current_salary IS NULL THEN RAISE salary_missing; ELSE UPDATE emp SET sal = sal + amount WHERE empno = emp_id; END IF; EXCEPTION WHEN NO_DATA_FOUND THEN INSERT INTO emp_audit VALUES (emp_id, 'No such number'); WHEN salary_missing THEN INSERT INTO emp_audit VALUES (emp_id, 'Salary is null'); END raise_salary; 69
70 Utilisation dans un bloc PL-SQL nom_proc( ); var := nom_fonc( ); dans SQL*PLUS procédure: variable nom_var type begin :nom_var := value; end; / print nom_var execute nom_proc(:nom_var, ); dans SQL*PLUS fonction: variable nom_var2 type execute nom_var2 := nom_fonc( ); print nom_var2 70
71 Attention Les triggers sont très utiles et puissants Mais: une utilisation prudente est nécessaire Attention aux Invocations de cascade de triggers Utilisations excessives des ressources Difficultés pour prévoir les conséquences 71
Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL
Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions
Plus en détailModule Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS
Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)
Plus en détailBases de données avancées
Bases de données avancées Jean-Yves Antoine LI - Université François Rabelais de Tours Jean-Yves.Antoine@univ-tours.fr UFR Sciences et Techniques IUP SIR Blois Master 1 Bases de Données avancées IUP Blois,
Plus en détailLes Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.
Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger
Plus en détailBases de Données Avancées PL/SQL
1/170 Bases de Données Avancées Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017
Plus en détailCours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry
Cours 3 Développement d une application BD 1 Plan du cours Gestion de la sécurité des données Optimisation des schémas de bases via la dénormalisation Utilisation de vues Placement du code applicatif dans
Plus en détailTP Contraintes - Triggers
TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution
Plus en détailIntroduction au PL/SQL Oracle. Alexandre Meslé
Introduction au PLSQL Oracle Alexandre Meslé 17 octobre 2011 Table des matières 1 Notes de cours 3 1.1 Introduction au PLSQL............................................ 3 1.1.1 PLSQL.................................................
Plus en détailLaboratoires de bases de données. Laboratoire n 6. Programmation SQL. par Danièle BAYERS et Louis SWINNEN
Département Informatique Laboratoires de bases de données Laboratoire n 6 Programmation SQL par Danièle BAYERS et Louis SWINNEN Ce document est disponible sous licence Creative Commons indiquant qu il
Plus en détailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions
Plus en détailIntégrité des données
. Contraintes d intégrité : Définition et objectif Intégrité des données Définition des contraintes Vérification des contraintes Contrainte d'intégrité : propriété sémantique que doivent respecter les
Plus en détailAdministration des bases de données
Administration des bases de données Mehdi Louizi 1 Pourquoi PL/SQL 2 Pourquoi PL/SQL? PL/SQL = PROCEDURAL LANGUAGE/SQL SQL est un langage non procédural Les traitements complexes sont parfois difficiles
Plus en détailCOMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2
SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES
Plus en détailOracle Le langage procédural PL/SQL
Oracle Le langage procédural PL/SQL Denis Roegel roegel@loria.fr IUT Nancy 2 1998/1999 Sommaire 1 Introduction 3 2 Création de packages 3 2.1 Procédures groupées.........................................
Plus en détailBases de Données relationnelles et leurs systèmes de Gestion
III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation
Plus en détailCorrigés détaillés des exercices
Corrigés détaillés des exercices Diagramme des tables objet La figure suivante vous aidera dans la compréhension des manipulations des objets de la base. Client_type Client num nom adresse {telephone_vry}
Plus en détailNotes de cours : bases de données distribuées et repliquées
Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées
Plus en détailDevoir Data WareHouse
Université Paris XIII Institut Galilée Master 2-EID BENSI Ahmed CHARIFOU Evelyne Devoir Data WareHouse Optimisation, Transformation et Mise à jour utilisées par un ETL Mr R. NEFOUSSI Année 2007-2008 FICHE
Plus en détailVues: définition. Vues: avantages. Vues: inconvénients. Vues: exemple. Vues: syntaxe 08/12/2009
Vues: définition Table virtuelle de la base de données dont le contenu est défini par un requête La vue n existe pas en tant qu ensemble de données stockées sur le disque seule la requête décrivant la
Plus en détailLe Langage SQL version Oracle
Université de Manouba École Supérieure d Économie Numérique Département des Technologies des Systèmes d Information Le Langage SQL version Oracle Document version 1.1 Mohamed Anis BACH TOBJI anis.bach@isg.rnu.tn
Plus en détailIntégrité sémantique dans les bases de données relationnelles
Intégrité sémantique dans les bases de données relationnelles 1 - Intégrité sémantique Bernard ESPINASSE Professeur à Aix-Marseille Université (AMU Ecole Polytechnique Universitaire de Marseille Fev. 2013
Plus en détailLe langage procédural PL-PGSQL
Le langage procédural PL-PGSQL PL/pgSQL est un langage procédural utilisé dans le système de gestion de bases de données PostgreSQL. Objectifs : créer des fonctions standards et triggers, ajouter des structures
Plus en détailLangage SQL : créer et interroger une base
Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,
Plus en détailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours 12 : Concurrence d accès Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Accès concurrents Définitions Verrous Collisions Niveaux de cohérence Blocage
Plus en détailA.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW
A.E.C. GESTION DES APPLICATIONS TECHNOLOGIE DE L'INFORMATION LEA.BW Groupe : 322 Exploitation des Banques de données 420-PK6-SL (1-2-1) Étape : 3 Professeur Nom: Marcel Aubin Courriel : maubin@cegep-st-laurent.qc.ca
Plus en détailLe Langage De Description De Données(LDD)
Base de données Le Langage De Description De Données(LDD) Créer des tables Décrire les différents types de données utilisables pour les définitions de colonne Modifier la définition des tables Supprimer,
Plus en détailQuelques aspects du Relationnel-Objet du SGBD Oracle
Département informatique de l IUT (de l université) de Bordeaux Cours de Bases de Données : présentation partielle d un SGBD RO 12 août 2015 Olivier Guibert Quelques aspects du Relationnel-Objet du SGBD
Plus en détailSupport de cours «SGBD»
Direction Générale Institut Supérieur des Des Etudes Technologiques Etudes ******** DGET ******* Technologiques du Kef Support de cours «SGBD» Réalisé par : BOUKCHIM Mosaab (AT-Iset de Kef) HOSNI Anis
Plus en détail//////////////////////////////////////////////////////////////////// Administration bases de données
////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données
Plus en détailChapitre 5 : Les procédures stockées PL/SQL
I. Introduction Une procédure ou une fonction stockée est un bloc PL/SQL nommé pouvant accepter des paramètres et être appelée. Généralement, on utilise une fonction pour calculer une valeur. Les procédures
Plus en détailAuto-évaluation Oracle: cours de base
Auto-évaluation Oracle: cours de base Document: F0475Test.fm 14/01/2008 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION ORACLE: COURS DE
Plus en détailAdministration des bases de données. Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/
Administration des bases de données Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ Administration des bases de données II Objets avancés dans les bases de données OBJECTIFS 2.1. NOTIONS 2.1.1.
Plus en détailPL langage de programmation côté serveur. SQL à la base : types, expressions, requêtes
Introduction à PL langage de programmation côté serveur installation nécessaire : CREATE LANGUAGE ou createlang interprété : erreurs de syntaxe possibles à l exécution SQL à la base : types, expressions,
Plus en détailLe langage SQL pour Oracle - partie 1 : SQL comme LDD
Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger
Plus en détailProcédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12
Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures
Plus en détail1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5
1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases
Plus en détailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailDéveloppement d applications avec les bases de données
Développement d applications avec les bases de données Michel Crucianu http://cedric.cnam.fr/~crucianm/abd.html 23 décembre 2010 NFA011 1 Contenu du cours PL/SQL Variables, structures de contrôle Curseurs,
Plus en détailLicence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées
Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :
Plus en détailGestion de base de données
Université Libre de Bruxelles Faculté de Philosophie et Lettres Département des Sciences de l Information et de la Communication Gestion de base de données Projet : Take Off ASBL Cours de M. A. Clève STIC-B-505
Plus en détailBases de Données Réparties
Bases de Données Réparties Architecture Mise en œuvre Duplication et Réplication Michel Tuffery BDR : Définition Ensemble de bases de données gérées par des sites différents et apparaissant à l utilisateur
Plus en détailORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010
ORACLE 10G DISTRIBUTION ET REPLICATION Distribution de données avec Oracle G. Mopolo-Moké prof. Associé UNSA 2009/ 2010 1 Plan 12. Distribution de données 12.1 Génération des architectures C/S et Oracle
Plus en détailHistorisation des données
Historisation des données Partie 1 : mode colonne par Frédéric Brouard, alias SQLpro MVP SQL Server Expert langage SQL, SGBDR, modélisation de données Auteur de : SQLpro http://sqlpro.developpez.com/ "SQL",
Plus en détailOlivier Mondet http://unidentified-one.net
T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage
Plus en détailOptimisation SQL. Quelques règles de bases
Optimisation SQL Quelques règles de bases Optimisation des ordres SQL Page 2 1. QUELQUES RÈGLES DE BASE POUR DES ORDRES SQL OPTIMISÉS...3 1.1 INTRODUCTION...3 1.2 L OPTIMISEUR ORACLE...3 1.3 OPTIMISEUR
Plus en détailBases de données et sites WEB
Bases de données et sites WEB Cours2 : Sécurité et contrôles d accès Anne Doucet 1 Authentification Autorisation Privilèges Rôles Profils Limitations de ressources Plan Audit Contrôle d accès via les vues
Plus en détailBases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications
Bases de données Oracle Virtual Private Database (VPD) pour la gestion des utilisateurs d applications P.-A. Sunier, HEG-Arc Neuchâtel avec le concours de J. Greub pierre-andre.sunier@he-arc.ch http://lgl.isnetne.ch/
Plus en détailBases de données relationnelles
Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses
Plus en détailBases de données. Mihaela Mathieu
Bases de données 2004-2005 Mihaela Mathieu mathieu@emse.fr Objectifs : comprendre et maîtriser les fonctions d un SGBD relationnel (Oracle et MySQL) connaître le langage SQL savoir développer une application
Plus en détailGestion des transactions et accès concurrents dans les bases de données relationnelles
Gestion des transactions et accès concurrents dans les bases de données relationnelles Bernard ESPINASSE Professeur à Aix-Marseille Université (AMU) Ecole Polytechnique Universitaire de Marseille Fev.
Plus en détailAGRÉGATION «ÉCONOMIE ET GESTION»
AGRÉGATION «ÉCONOMIE ET GESTION» CONCOURS INTERNE SESSION 2002 ÉPREUVE SUR LES TECHNIQUES DE GESTION ET COMPORTANT DES ASPECTS PÉDAGOGIQUES DOMAINE : économie et gestion informatique Durée de préparation
Plus en détailConfigurer la supervision pour une base MS SQL Server Viadéis Services
Configurer la supervision pour une base MS SQL Server Référence : 11588 Version N : 2.2 : Créé par : Téléphone : 0811 656 002 Sommaire 1. Création utilisateur MS SQL Server... 3 2. Configuration de l accès
Plus en détailLangage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes
Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition
Plus en détailPlan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD
Plan Bases de Données L3 Info Céline Rouveirol 2010-2011 Bases de Données 1 / 77 Sources des transparents Bases de Données 2 / 77 Bases de SQL - M.P. Dorville/F. Goasdoué, LRI, Université Paris Sud - V.
Plus en détailA QUOI SERVENT LES BASES DE DONNÉES?
BASE DE DONNÉES OBJET Virginie Sans virginie.sans@irisa.fr A QUOI SERVENT LES BASES DE DONNÉES? Stockage des informations : sur un support informatique pendant une longue période de taille importante accès
Plus en détailPanorama des Bases de Données
Panorama des Bases de Données Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes e-mail : donsez@univ-valenciennes.fr Le Modèle Relationnel Un modèle de données
Plus en détailOra2Pg. Présentation, bonnes pratiques et futur du projet
Ora2Pg Présentation, bonnes pratiques et futur du projet Sommaire Historique et généralités Installation Bonnes pratiques Configuration générique Migration du schéma Migration des données Migration des
Plus en détailCREATION WEB DYNAMIQUE
CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de
Plus en détailPartie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle
Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle Ce projet comporte trois parties sur les thèmes suivants : création de base de donnée, requêtes SQL, mise en œuvre
Plus en détailOpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plus en détailBases de données et sites WEB Licence d informatique LI345
Bases de données et sites WEB Licence d informatique LI345 Anne Doucet Anne.Doucet@lip6.fr http://www-bd.lip6.fr/ens/li345-2013/index.php/lescours 1 Contenu Transactions en pratique Modèle relationnel-objet
Plus en détailChapitre 10. Architectures des systèmes de gestion de bases de données
Chapitre 10 Architectures des systèmes de gestion de bases de données Introduction Les technologies des dernières années ont amené la notion d environnement distribué (dispersions des données). Pour reliér
Plus en détailChapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)
Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL) Un modèle de données définit un mode de représentation de l information selon trois composantes : 1. Des structures de données. 2. Des contraintes qui permettent
Plus en détailLes transactions 1/46. I même en cas de panne logicielle ou matérielle. I Concept de transaction. I Gestion de la concurrence : les solutions
1/46 2/46 Pourquoi? Anne-Cécile Caron Master MAGE - SGBD 1er trimestre 2014-2015 Le concept de transaction va permettre de définir des processus garantissant que l état de la base est toujours cohérent
Plus en détailBases de Données Réparties Concepts et Techniques. Matthieu Exbrayat ULP Strasbourg - Décembre 2007
Bases de Données Réparties Concepts et Techniques Matthieu Exbrayat ULP Strasbourg - Décembre 2007 1 Définition Une base de données répartie (distribuée) est une base de données logique dont les données
Plus en détailIntroduction au Système de Gestion de Base de Données et aux Base de Données
Introduction au Système de Gestion de Base de Données et aux Base de Données Formation «Gestion des données scientifiques : stockage et consultation en utilisant des bases de données» 24 au 27 /06/08 Dernière
Plus en détailSQL Historique 1982 1986 1992
SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse
Plus en détailAttaques applicatives
Attaques applicatives Attaques applicatives Exploitation d une mauvaise programmation des applications Ne touche pas le serveur lui-même mais son utilisation/ configuration Surtout populaire pour les sites
Plus en détailBASES DE DONNEES TP POSTGRESQL
2003-2004 Université Paris Dauphine IUP Génie Mathématique et Informatique IUP 2 ème année et Formation Continue BASES DE DONNEES TP POSTGRESQL Maude Manouvrier La reproduction de ce document par tout
Plus en détailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailPRÉAMBULE... 2 CRÉATION DE LA BASE DE DONNÉES...
Département Informatique de l Institut Universitaire de Technologie de l Université Bordeaux 1 Olivier Guibert Bases de Données Oracle 11g : l exemple «jouet» (du cours) complété et quelques spécificités
Plus en détailSécurité Oracle Gérard Schaller Gerard.Schaller@trivadis.com. Grifes 28 Octobre 2003
Sécurité Oracle Gérard Schaller Gerard.Schaller@trivadis.com Grifes 28 Octobre 2003 Agenda Introduction Sécurité entre les clients et le serveur Authentification - Intégrité - Chiffrement (SSL) Web Services
Plus en détailINTEGRITE ET BD ACTIVES
INTEGRITE ET BD ACTIVES 1. INTRODUCTION Un SGBD doit garantir la cohérence des données lors des mises à jour de la base. En effet, les données d'une base ne sont pas indépendantes, mais obéissent à des
Plus en détailNFA 008. Introduction à NoSQL et MongoDB 25/05/2013
NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée
Plus en détailPrésentation du PL/SQL
I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur
Plus en détailMySQL / SQL EXEMPLES
MySQL_exemples_janv04_mpT EXEMPLES 1 MySQL / SQL EXEMPLES Typologie du langage Il est possible d'inclure des requêtes SQL dans un programme écrit dans un autre langage (en langage C par exemple), ainsi
Plus en détailTP3 : Creation de tables 1 seance
Universite de Versailles IUT de Velizy - Algorithmique 2005/2006 TP3 : Creation de tables 1 seance Objectif : Creation et modication de tables dans une base de donnees. Avant de commencer ce TP, terminer
Plus en détailFileMaker 13. Guide de référence SQL
FileMaker 13 Guide de référence SQL 2013 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et Bento sont des marques commerciales de
Plus en détailInitiation à SQL. Le langage de communication avec une base de données relationnelles. Application avec PostgreSQL. Nathalie Camelin 2011/2012
Initiation à SQL Le langage de communication avec une base de données relationnelles Application avec PostgreSQL Nathalie Camelin 2011/2012 Université du Maine Institut Claude Chappe D'après Levy Estève
Plus en détailUtilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008
Introduction Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa www.degenio.com Novembre 2008 Forms 10g permet l utilisation du JAVA côté client et côté application
Plus en détailHala Skaf-Molli. Nancy-Université skaf@loria.fr 14 mai 2007
Bases de données avancées Hala Skaf-Molli Maître de Conférence Nancy-Université skaf@loria.fr 14 mai 2007 1 Introduction Dans ce cours, nous allons étudier les bases de données Orienté objets, bases de
Plus en détailLes déclencheurs. Version 1.0. Grégory CASANOVA
Les déclencheurs Version 1.0 Grégory CASANOVA 2 Les déclencheurs [09/07/09] Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les déclencheurs du DML... 5 3.1 Introduction... 5 3.2 Création d un déclencheur
Plus en détailPHP. Bertrand Estellon. 26 avril 2012. Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214
PHP Bertrand Estellon Aix-Marseille Université 26 avril 2012 Bertrand Estellon (AMU) PHP 26 avril 2012 1 / 214 SQLite et PDO Base de données SQLite et PDO SQLite écrit les données relatives à la base dans
Plus en détail1 2 3 4 5 6 7 8 Procédures Une procédure est un bloc PL/SQL nommé qui peut accepter des paramètres (ou arguments). Les procédures sont utilisée généralement pour effectuer un certain nombre d actions.
Plus en détailModernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014. Volubis.fr
Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014 13 et 14 mai 2014 IBM Client Center Paris, Bois-Colombes Volubis.fr Conseil et formation sur OS/400,
Plus en détailApplication web de gestion de comptes en banques
Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion
Plus en détailTD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009
TD : Requêtes SQL (BDR.TD2-1) INSA 3IF 2008-2009 Loïc Maisonnasse 1 Objectif Ce TD a pour objectif de vous familiariser avec le langage de requêtes SQL. Et de vous apprendre à écrire des requêtes SQL pour
Plus en détailLE LANGAGE SQL2 1. INTRODUCTION
LE LANGAGE SQL2 1. INTRODUCTION Les serveurs de données relationnels présentent aujourd hui une interface externe sous forme d un langage de recherche et mise à jour, permettant de spécifier les ensembles
Plus en détail1 Position du problème
Licence Science et Technologies - INF245 Examen session 1 - mai 2012 Durée : 2 heures Documents non autorisés Le barème est donné à titre indicatif 1 Position du problème Le Club Universitaire de Vélo
Plus en détailCréation et Gestion des tables
Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5
Plus en détailJava et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
Plus en détailLe langage SQL (première partie) c Olivier Caron
Le langage SQL (première partie) 1 Plan Le S.G.B.D. postgres Le langage SQL Langage de manipulation de données Langage de requêtes 2 Quelques mots sur Postgres (1/2) Travaux de Stonebraker (Univ. Berkeley)
Plus en détailECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;
RÈGLES A SUIVRE POUR OPTIMISER LES REQUÊTES SQL Le but de ce rapport est d énumérer quelques règles pratiques à appliquer dans l élaboration des requêtes. Il permettra de comprendre pourquoi certaines
Plus en détailI4 : Bases de Données
I4 : Bases de Données Passage de UML au modèle relationnel Georges LOUIS Département Réseaux et Télécommunications Université de La Rochelle Module I4 2008-2009 1 G.Louis Sommaire 1 Des classes aux tables
Plus en détailGestion des utilisateurs et de leurs droits
Gestion des utilisateurs et de leurs droits Chap. 12, page 323 à 360 Lors de la création d'un utilisateur vous devez indiquer son nom, ses attributs, son profil, la méthode d'authentification (par le SE
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailPHP 5. La base de données MySql. A. Belaïd 1
PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple
Plus en détail14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.
Gaëlle PERRIN SID2 Grenoble Le 10/04/2014 Base de Données (BD) : une grande quantité de données, centralisées ou non, servant pour les besoins d'une ou plusieurs applications, interrogeables et modifiables
Plus en détail