La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 CSI 2532 Lab3 6 Février 2012 Programmation avancée SQL.

Présentations similaires


Présentation au sujet: "1 CSI 2532 Lab3 6 Février 2012 Programmation avancée SQL."— Transcription de la présentation:

1 1 CSI 2532 Lab3 6 Février 2012 Programmation avancée SQL

2 2 Sommaire Détruire et changer les relations DROP TABLE ALTER TABLE SELECT Exercice: Insérer des données Supprimer des tuples Requêtes à une table Request à plusieurs tables

3 Changement dans les tables La commande DROP TABLE permet de supprimer une table. Usage: DROP TABLE TableName La commande ALTER TABLE permet de modifier la structure dune table de la DB. Ajouter une colonne Supprimer une colonne Changer un nom de colonne Changer les types de données dune colonne Changer ou supprimer une contrainte Renommer une table 3

4 Suite de Altering.. Ajouter une colonne à une table existante. ALTER TABLE TableName ADD COLUMN ColumnName ColumnType; On peut également ajouter une colonne ayant une contrainte. ALTER TABLE TableName ADD COLUMN ColumnName ColumnType CHECK ( Constraint ); 4

5 Votre tâche! Ouvrez le query tool. En utilisant la commande ALTER TABLE : 1.Ajouter une colonne country à la table Artist. (type VARCHAR(20)) 2.Ajouter une colonne rating à la table Customer avec une contrainte indiquant que la valeur du rating doit être entre 1 et 10 (BETWEEN 1 AND 10) 5

6 Requêtes SELECT Le SELECT est la commande de base du SQL destinée à extraire des données. Voici certaines clauses additionnelles: GROUP BY: Définition d'un groupe (sous ensemble). Pour grouper les données. HAVING: Filtre portant sur les résultats (conditions de regroupement des lignes) ORDER BY: Tri des données du résultat SELECT [ DISTINCT ] select-list FROM from-list WHERE qualification GROUP BY grouping-list HAVING group-qualification 6

7 Vos tâches! Insérer dautres tuples à votre DB. Supprimer une ligne dune table 7

8 Insertions Insérer ces lignes à la table Artist: ('Leonardo','Florence','Renaissance','04-15-1452','Italy') ('Michelangelo','Arezzo','Renaissance','03-06-1475','Italy') ('Josefa','Seville','Baroque','09-09-1630','Spain') ('Hans Hofmann','Weisenburg','Modern','02-17- 1966','Germany') ('John','San Francisco','Modern','02-17-1920','USA') Insérer ces lignes à la table ArtWork ('Waves', 2000, null, 4000.00, 'John') ('Three Musicians', 1921,'Modern',11000.00,'Picasso') Insérer ces lignes à la table Customer (1,'Emre','Preston',20000.00,5) (2,'Saeid',null,40000.00,6) Insérer ces lignes à la table LikeArtist (1,'Picasso') (2,'Picasso') and (2,Leonardo') 8

9 Suppresion de lignes: DELETE FROM TableName WHERE Condition Supprimez lartiste Smith. Notez les erreurs dûes aux contraintes de la table ArtWork. 9

10 Écrivez les reqûetes suivantes: a)Listez les noms et les lieux de naissance de tous les artistes. b)Listez le titre et le prix de toutes les oeuvres faits après 1600. c)Listez le titre et le type de tous les oeuvres (Artworks) faits par Picasso ou faits en 2000. d)Listez tous les noms et lieux de naissance de tous les artistes qui sont nés entre 1880 et 1930. e)Listez les noms et le pays de naissance de tous les artistess qui ont un style: Modern, Baroque or Renaissance. (HINT: Use the IN keyword). f)Listez tous les détails des ArtWorks, ordonnés par titre. 10

11 Écrivez les reqûetes suivantes: Des reqûêtes qui utilisent plus quune table: 1.Listez les noms et les customer ids de tous les clients qui aiment Picasso. 2.Listez les noms de tous les clients qui aiment des artistes ayant un style Renaissance et qui ont un montant dargent supérieur à 30000. 11

12 Références ALTER TABLE: http://www.postgresql.org/docs/8.3/interactive/dd l-alter.html http://www.postgresql.org/docs/8.3/interactive/dd l-alter.html Note: some of features are not supported in the version (7.4) we are using. Constraints (check, primary key, foreign key): http://www.postgresql.org/docs/8.3/interactive/dd l-constraints.html http://www.postgresql.org/docs/8.3/interactive/dd l-constraints.html Date/Time Functions and Operators http://www.postgresql.org/docs/8.3/interactive/fu nctions-datetime.html http://www.postgresql.org/docs/8.3/interactive/fu nctions-datetime.html


Télécharger ppt "1 CSI 2532 Lab3 6 Février 2012 Programmation avancée SQL."

Présentations similaires


Annonces Google