SQL création et modification. de données. Plan. Université de Cergy-Pontoise. Création de tables SQL. Modification de données. Diplôme Universitaire

Documents pareils
Bases de Données relationnelles et leurs systèmes de Gestion

Le Langage De Description De Données(LDD)

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Olivier Mondet

Création et Gestion des tables

TP Contraintes - Triggers

CREATION WEB DYNAMIQUE

Le langage SQL (première partie) c Olivier Caron

Le Langage SQL version Oracle

TP3 : Creation de tables 1 seance

SQL Historique

Langage SQL : créer et interroger une base

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

Pour les débutants. langage de définition des données

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

MySQL / SQL EXEMPLES

PHP 5. La base de données MySql. A. Belaïd 1

Chapitre 3 LE MODELE RELATIONNEL ET SQL (DDL)

Partie 0 : Gestion des tablespace et des utilisateurs... 3

Plan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD

A QUOI SERVENT LES BASES DE DONNÉES?

SQL sous SqlServer OLIVIER D. DEHECQ Olivier 0

Cours Bases de données 2ème année IUT

Les bases de données

Intégrité sémantique dans les bases de données relationnelles

Historisation des données

Intégrité des données

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Compétences Business Objects

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Bases de données relationnelles

ISC Système d Information Architecture et Administration d un SGBD Compléments SQL

Introduction au Système de Gestion de Base de Données et aux Base de Données

Modélisation et Gestion des bases de données avec mysql workbench

1. Base de données SQLite

Gestion de base de données

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Corrigés détaillés des exercices

A QUOI SERVENT LES BASES DE DONNÉES?

Auto-évaluation Oracle: cours de base

Notes de cours : bases de données distribuées et repliquées

Bases de données et sites WEB

1 Position du problème

I. MySQL : Serveur et SGBD

Les BASES de DONNEES dans WampServer

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF

Systèmes de Gestion de Bases de Données

BASES DE DONNEES TP POSTGRESQL

Gestion des transactions et accès concurrents dans les bases de données relationnelles

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

I4 : Bases de Données

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes

PHP. Bertrand Estellon. 26 avril Aix-Marseille Université. Bertrand Estellon (AMU) PHP 26 avril / 214

Exercices sur SQL server 2000

Support de cours. Introduction à SQL et MySQL. 2003, Sébastien Namèche

WEB DEVELOPER SGBD SYSTEME DE GESTION DE BASES DE DONNEES L étudiant sera capable :

FileMaker 13. Guide de référence SQL

BTS/CGO P10 SYSTEME INFORMATION Année

Bases de données relationnelles & SQL

SQL Server Cyril Gruau. 11 février 2003

1/ Présentation de SQL Server :

SQL Server 2000, Analysis Services et DTS

Application web de gestion de comptes en banques

Bases de Données Avancées

Système de Gestion de Bases de Données Relationnelles. MySQL. Youssef CHAHIR

MySQL avec Mac OS X. Quelques manipulations avec le terminal sont nécessaires si une version de MySQL est déjà lancée:

Administration des bases de données. Jean-Yves Antoine

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Partie II Cours 3 (suite) : Sécurité de bases de données

Installation d'un serveur FTP géré par une base de données MySQL

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

LE LANGAGE SQL2 1. INTRODUCTION

Université de Nice Sophia-Antipolis. Langage SQL. version 5.7 du polycopié. Richard Grin

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

Data Tier Application avec SQL Server 2008 R2

Bases de Données Avancées

Bases de données. Mihaela Mathieu

OpenPaaS Le réseau social d'entreprise

Gestion des utilisateurs et de leurs droits

Département Génie Informatique

1 Introduction. 2 Le modèle relationnel. 3 Algèbre relationnelle 4 SQL. 5 Organisation physique des données 1/228

Objectifs du TP : Initiation à Access

Bases de données avancées

Bases de données Cours 4 : Le langage SQL pour ORACLE

Master Exploration Informatique des données DataWareHouse

Réplication logique avec PostgreSQL 9.4

Résumé S Q L. Auteur: Alexandre PATIN Edition: 22 février alexandre.patin@free.fr URL :

Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry

Introduction au PL/SQL Oracle. Alexandre Meslé

Bases de données. Yamine AIT AMEUR. INPT-ENSEEIHT DIMA 2 Rue Charles Camichel Toulouse Cedex 7

Comprendre les bases de données

Procédures Stockées WAVESOFT ws_sp_getidtable Exemple : ws_sp_getnextsouche Exemple :... 12

IFT3030 Base de données. Chapitre 1 Introduction

Transcription:

SQL création et modification de données Dan VODISLAV Université de Cergy-Pontoise Diplôme Universitaire Plan Création de tables SQL Types de données Contraintes Modification de la définition d'une table Suppression de tables Création de vues Modification de données INSERT DELETE UPDATE UCP, DU: SQL - création et modification de données 2

Création de tables Langage de définition de données (LDD) Création de tables Définition de contraintes sur les données Modification de la définition d'une table Suppression d'une table Création de vues Commandes CREATE TABLE ALTER TABLE DROP TABLE TRUNCATE TABLE CREATE VIEW UCP, DU: SQL - création et modification de données 3 CREATE TABLE Création d'une table CREATE TABLE <nom-table> ( <nom-attribut> <type-attribut> <contraintes-attribut>, <contraintes-table>) Types d'attributs Chaîne de caractères de taille fixe ou variable: CHAR(n), VARCHAR(n) Numériques: NUMERIC(n, d), FLOAT(n), INTEGER, Date: DATE, TIME, TIMESTAMP, INTERVAL, Bloc de données: BLOB, CLOB, Exemple CREATE TABLE Département ( dcode CHAR(3), dnom VARCHAR(20), ville VARCHAR(20), chef CHAR(8)) UCP, DU: SQL - création et modification de données 4

Contraintes d'attribut NOT NULL: on n'accepte pas les valeurs nulles pour l'attribut dnom VARCHAR(20) NOT NULL UNIQUE: la valeur doit être unique dans la table Un attribut unique et non nul peut servir de clé primaire DEFAULT <valeur>: valeur par défaut si pas précisée Sinon, la valeur par défaut est NULL CHECK (<condition>): condition à respecter salaire NUMERIC(6,2) CHECK(salaire>0) PRIMARY KEY: clé principale dcode VARCHAR(20) PRIMARY KEY UCP, DU: SQL - création et modification de données 5 Contraintes de table PRIMARY KEY (clé primaire constituée de plusieurs attributs) CREATE TABLE Appartement( adresse VARCHAR(50), no-apt INTEGER, superficie NUMERIC(5,2), PRIMARY KEY(adresse, no-apt)) FOREIGN KEY: clé étrangère (valeur qui est clé dans une autre table) On spécifie les attributs formant la clé étrangère, la table référencée et éventuellement les attributs clé (si leur nom est différent de ceux de la clé étrangère) CREATE TABLE Personne( nom VARCHAR(20) PRIMARY KEY adresse VARCHAR(50) NOT NULL, no-apt INTEGER NOT NULL, FOREIGN KEY(adresse, no-apt) REFERENCES Apartement) On peut nommer les contraintes (le système leur génère sinon un nom interne) C'est préférable, car on peut les modifier/supprimer plus facilement CONSTRAINT FK_Personne FOREIGN KEY(adresse, no-apt) REFERENCES Apartement UCP, DU: SQL - création et modification de données 6

Contraintes de table (suite) Déclencheurs sur mise à jour de clé étrangère Définies pour une clé étrangère S.e qui référence une clé primaire R.c on delete <action> (suppression d'un n-uplet de R, donc d'une clé primaire R.c) on update <action> (modification d'une clé primaire R.c) <action>: CASCADE: suppression/modification correspondante des n-uplets de S RESTRICT: interdiction de l'opération si R.c est référencée dans S SET NULL / SET DEFAULT <valeur> : remplacement de S.e par NULL/<valeur> CREATE TABLE Département ( dcode CHAR(3) PRIMARY KEY, dnom VARCHAR(20) NOT NULL, ville VARCHAR(20) DEFAULT 'Paris', chef CHAR(8) NOT NULL, FOREIGN KEY(chef) REFERENCES Employé(ecode) on delete RESTRICT on update CASCADE) UCP, DU: SQL - création et modification de données 7 Modification de la définition d'une table ALTER TABLE ADD <nom-attribut> <type-attribut> <contraintes-attribut> ALTER <nom-attribut> <type-attribut> <contraintes-attribut> DROP <nom-attribut> ADD <contrainte-table> DROP CONSTRAINT <nom-contrainte> UCP, DU: SQL - création et modification de données 8

Vidage et suppression de table TRUNCATE TABLE <nom-table> Élimine toutes les données de la table, mais la table reste (vide) Plus rapide que la commande DELETE, qui permet une suppression sélective des n-uplets DROP TABLE <nom-table> Élimine la table et les données qu'elle contient UCP, DU: SQL - création et modification de données 9 Création de vues Vue = table virtuelle définie à l'aide d'une requête Commande CREATE VIEW Exemple: les employés travaillant à Paris CREATE VIEW EmployéParis AS SELECT * FROM Employé WHERE dcode IN (SELECT dcode FROM Département WHERE ville='paris') La vue a pour attributs les attributs du SELECT On peut interroger la vue comme une table normale Exemple: les employés de Paris qui gagnent plus de 4000 euros SELECT dnom FROM EmployéParis WHERE salaire > 4000 UCP, DU: SQL - création et modification de données 10

Insertion de données dans une table INSERT INTO <table>(<attrib 1 >,, <attrib k >) VALUES (<valeur 1 >,, <valeur k >) On insère un nouvel n-uplet dans la table <table>, en donnant aux attributs <attrib 1 >,, <attrib k > les valeurs <valeur 1 >,, <valeur k > Les attributs de <table> non spécifiés dans l'insertion reçoivent la valeur par défaut (NULL ou celle précisée par DEFAULT) Formes particulières INSERT INTO T(a 1,, a k ) VALUES (v 1,, v k ), (v' 1,, v' k ), INSERT INTO T(a 1,, a k ) SELECT FROM WHERE Exemple INSERT INTO Département(dcode, dnom, chef) VALUES('D7', 'Financier', 'E22') UCP, DU: SQL - création et modification de données 11 Suppression de données DELETE FROM <table> WHERE <condition> On supprime de la table les n-uplets qui satisfont la condition Exemple: supprimer tous les employés qui ont par erreur une date d'embauche ultérieure à la date courante La fonction CURRENT_DATE retourne la date courante DELETE FROM Employé WHERE embauche > CURRENT_DATE UCP, DU: SQL - création et modification de données 12

Modification de données UPDATE <table> SET <attrib 1 > = <expression 1 >, <attrib k > = <expression k > WHERE <condition> Seuls les n-uplets qui respectent la condition sont modifiés Seuls les attributs précisés sont modifiés L'expression de modification de valeur peut utiliser l'ancienne valeur de l'attribut Augmenter de 2% les salaires au département Administratif UPDATE Employé SET salaire = salaire * 1.02 WHERE dcode IN (SELECT dcode FROM Département WHERE dnom = 'Administratif') UCP, DU: SQL - création et modification de données 13