MANIPULATION DES DONNEES : mise à jour des n-uplets
Manipulation des données instructiondescription INSERTinsertion de n-uplets DELETEsuppression de n-uplet(s) TRUNCATEsuppression tous les n-uplets UPDATEmise à jour de n-uplet(s)
INSERT INSER INTO table [ ( attribut [, attribut…] ) ] { VALUES (expr [, expr…] ) | subquery } exemples : insert into personne values (1, 'Jöelle', 'botaniste', 22761) insert into planning values (15, to_date( '15-oct-01', 'dd-mon-rr' ), 240, null ) insert into personne (id, formation, nom) values (cpt.nextval, 'ingénieur, 'Christian')
[ ( attribut [, attribut…] ) ] contient des noms d'attributs de la table si un attribut de la rel. est omis dans la liste, il prend la valeur par défaut, null sinon si aucun nom d'attribut donné : la clause VALUES ou la sous requête doit fournir une valeur pour chaque attribut de la table suivant l'ordre du schéma
VALUES (expr [, expr…] ) spécifie un n-uplet de valeurs à insérer dans la table sous requête : instruction SELECT qui renvoie les n-uplets à insérer. correspondance en nombre et type des attributs et expressions
DELETE DELETE [ FROM ] table [ WHERE condition] suppression des n-uplets qui satisfont la cd cd omise : supp. de tous les n-uplets ex : delete personne where nom='Jöelle'
TRUNCATE TRUNCATE TABLE table suppression de tous les n-uplets libération espace mémoire allouée à la table opération irréversible ex : truncate table personne
UPDATE UPDATE table SET { ( attribut [,attribut …] ) = ( subquery ) | attribut = expr | attribut = ( subquery ) } [ WHERE condition ] m.à.j des attributs cités des n-uplets qui vérifient la cd ou tous les n-uplets (cd omise) itération séparateur : virgule
UPDATE : exemple update personne set salaire=salaire+150 where formation = 'ingénieur' update projet set cout=1.2, debut='15-MAR-02' where id=3 update projet set ( cout, debut )= ( 1.2, '15-MAR-02' ) where id=3
UPDATE : exemple update personne set (formation, salaire) = ( select formation, salaire from personne where id = 78) where id = 15