Mon Cours 1.1
3 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
3 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Chapitre 8 Le Langage de Manipulation de Données Lorsqu’on veut insérer des données, les modifier ou les supprimer, nous devons exécuter des requêtes du langage de manipulation de données. Ces opérations de mise à jour sont faites via trois requêtes INSERT, UPDATE et DELETE. 8.1 Ajout de données – INSERT L’ajout d’une ou de plusieurs lignes dans une table se fait par la requête INSERT. Si on veut ajouter les données ligne par ligne, on peut alors utiliser la première variante de la requête INSERT dont la forme générale est la suivante : INSERT INTO nom_table[(col1,[ col2,…, coln])] VALUES (v1,[v2,…,vn]). nom_table est le nom de la table dans laquelle on veut insérer notre ligne, il est suivi par la liste des colonnes de la table, par le mot clé VLAUES et par la liste des valeurs qu’on veut insérer. Il est possible d’insérer une partie d’une ligne (omettre les valeurs d’une ou de plusieurs colonnes) mais à condition de respecter les contraintes de la table (on ne peut pas omettre la valeur d’une colonne NOT NULL), dans ce cas les valeurs non communiquées auront NULL par défaut. Il faut aussi respecter une certaine cohérence dans la requête INSERT entre la liste descriptive de la table et la liste des valeurs à ajouter. Cette cohérence concerne le nombre et l’ordre des colonnes. La liste descriptive peut être omise, et dans ce cas on doit respecter l’ordre des colonnes (défini lors de la création de la table et qu’on peut consulter par la commande DESC ...

Informations

Publié par
Nombre de lectures 21
Langue Français

Extrait

Chapitre 8Le Langage de Manipulation de Données Lorsqu’on veut insérer des données, les modifier ou les supprimer, nous devons exécuter des requêtes du langage de manipulation de données. Ces opérations de mise à jour sont faites via trois requêtes INSERT, UPDATE et DELETE. 8.1Ajout de données – INSERT L’ajout d’une ou de plusieurs lignes dans une table se fait par la requête INSERT. Si on veut ajouter les données ligne par ligne, on peut alors utiliser la première variante de la requête INSERT dont la forme générale est la suivante : INSERT INTOnom_table[(col1,[col2,…, coln])] VALUES (v1,[v2,…,vn]). nom_tableest le nom de la table dans laquelle on veut insérer notre ligne, il est suivi par la liste des colonnes de la table, par le mot clé VLAUES et par la liste des valeurs qu’on veut insérer. Il est possible d’insérer une partie d’une ligne (omettre les valeurs d’une ou de plusieurs colonnes) mais à condition de respecter les contraintes de la table (on ne peut pas omettre la valeur d’une colonne NOT NULL), dans ce cas les valeurs non communiquées auront NULL par défaut. Il faut aussi respecter une certaine cohérence dans la requête INSERT entre la liste descriptive de la table et la liste des valeurs à ajouter. Cette cohérence concerne le nombre et l’ordre des colonnes. La liste descriptive peut être omise, et dans ce cas on doit respecter l’ordre des colonnes (défini lors de la création de la table et qu’on peut consulter par la commande DESCnom_table) et saisir les valeurs de toutes les colonnes de la table. REQ 83 Insérer dans la table EMP le nouvel employé de matricule 7521, de nom ‘PATRICK’, ‘SALESMAN’, de manager 5000, de salaire 1250 et département 30 ? INSERT INTO EMP (EMPNO,ENAME,JOB,HIREDATE,MGR,SAL,DEPTNO) VALUES(7521,‘PATRICK’,’SALESMAN’,SYSDATE,5000,1250,30); La deuxième alternative d’ajout de données permet d’insérer un ensemble de lignes par la requête SELECT. Les lignes insérées sont le résultat de cette dernière. INSERT INTO nom_table(col1,col2,…,coln) SELECT arg1, arg2, …, argnFROM table…; La requête SELECT peut utiliser la jointure, les sousrequêtes etc. l’important est de respecter l’ordre, le nombre et les types de données des colonnes sélectionnées. REQ 84 Insérer dans la table EMP2 (qui est vide et de même structure que EMP) tous les employés de la table EMP ? INSERT INTO EMP2 SELECT * FROM EMP;
Chapitre 8 : Le Langage de Manipulation de Données 4 REQ 85 Dans la table FPJ, insérer le projet ‘J1’ qui a été alimenté par 5 pièces ‘P1’ par les fournisseurs de ‘LONDRES’ ? INSERT INTO FPJ SELECT NF,’J1’,’P1’,5 FROM F WHERE VILLE=’LONDRES’; 8.2Modification de données – UPDATE La modification des données se fait via la requête UPDATE. Cette requête met à jour une ou plusieurs lignes de la table (la mise à jour peut concerner une ou plusieurs colonnes). La syntaxe de cette requête est la suivante : UPDATE nom_table SET col1=arg1 [, col2=arg2, …, coln=argn] [WHERE condition(s)] Ici, la mise à jour concerne la tablenom_tableet plus particulièrement les lignes de cette table qui satisfont la condition de la clause WHERE. Seules les colonnes de la clause SET sont modifiées par cette requête. Un argumentargipeut être un littéral (constante), une expression, une fonction ou encore une sousrequête (le résultat d’une sousrequête). Il est à noter que la clause WHERE est facultative, si elle est omise la mise à jour concerne alors toute les lignes de la table. Il est possible aussi de mettre à jour plusieurs colonnes d’une table à partir d’une seule sous requête, la syntaxe correspondante est la suivante : UPDATE nom_table SET (col1,…,coln)=(SELECT arg1,…,argn FROM table) [WHERE condition(s)] REQ 86 Mettez à jour la colonne COMM dans la table EMP. Chaque valeur NULL doit être remplacée par zéro ?
UPDATE EMP SET COMM=0 WHERE COMM IS NULL; REQ 87
Mettez à jour le salaire et le job des SALESMAN, ils ont eu une augmentation de 10% et leur job est maintenant dit SALESPERSON ?
UPDATE EMP SET SAL=SAL*1.1, JOB=’SALESPERSON’ WHERE JOB=’SALESMAN’ ;
Le langage SQL version Oracle– Document 1.1 Feedbacks àanis.bach@isg.rnu.tn
Chapitre 8 : Le Langage de Manipulation de Données 4 REQ 88 Affectez pour chaque employé du département 10 et 20 le salaire minimum de son département ? UPDATE EMP A SET SAL=(SELECT MIN(SAL) FROM EMP B  WHEREB.DEPTNO=A.DEPTNO) WHERE A.DEPTNO IN (10,20); 8.3Suppression de données – DELETE L’élimination de données se fait par lignes via la requête DELETE. La syntaxe de cette requête est la suivante : DELETE FROM nom_table [WHERE condition(s)] La clause WHERE est facultative, elle est utilisée pour spécifier quelles lignes veuton éliminer. Si la clause WHERE est omise, alors toutes les lignes de la table sont supprimées. REQ 89 Supprimez toutes lignes de la table SALGRADE ? DELETE FROM SALGRADE; REQ 90 Supprimez les employés du département 30 ? DELETE FROM EMP WHERE DEPTNO=30;
Le langage SQL version Oracle– Document 1.1 Feedbacks àanis.bach@isg.rnu.tn
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents