Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Cluster
– ensemble de catalogues accessibles à une session
24/03/06 © Robert Godin. Tous droits réservés. 7 24/03/06 © Robert Godin. Tous droits réservés. 8
Forme simple
Syntaxe de spécificationDeColonne
24/03/06 © Robert Godin. Tous droits réservés. 13 24/03/06 © Robert Godin. Tous droits réservés. 14
INFORMATION_SCHEMA
SCHEMATA
– les SCHEMA créés par CURRENT_USER
DOMAINS
– les DOMAIN accessibles par CURRENT_USER ou PUBLIC
TABLES
– les noms des tables accessibles par CURRENT_USER ou PUBLIC
VIEWS
– les vues accessibles par CURRENT_USER ou PUBLIC
COLUMNS
– les colonnes des TABLE accessibles par CURRENT_USER ou PUBLIC
TABLE_CONSTRAINTS
– contraintes des TABLE créées par CURRENT_USER
CHECK_CONSTRAINTS
– contraintes CHECK des TABLE créées par CURRENT_USER
ASSERTIONS
– ASSERTION créées par CURRENT_USER
TABLE_PRIVILEGES
– privilèges accordés par CURRENT_USER, à CURRENT_USER, ou à PUBLIC
Syntaxe du selectSQL
...
Multi-ensemble !
Sélectionner les Commandes du mois de juin de Sélectionner les Commandes du Client dont le
l'année 2000 noClient est 10 ou 40 ou 80
24/03/06 © Robert Godin. Tous droits réservés. 27 24/03/06 © Robert Godin. Tous droits réservés. 28
Sélectionner les Clients dont le nomClient Sélectionner les Articles dont la description
contient le mot Le n'est pas une valeur nulle
24/03/06 © Robert Godin. Tous droits réservés. 29 24/03/06 © Robert Godin. Tous droits réservés. 30
Laboratoire
Créer le schéma de la BD
Client × Commande
PleinDeFoin :
SchemaVentesPleinDeFoin.sql
Exercices 1 a), b) , c) , n), o)
24/03/06 © Robert Godin. Tous droits réservés. 31 24/03/06 © Robert Godin. Tous droits réservés. 32
Client Commande
24/03/06 © Robert Godin. Tous droits réservés. 33 24/03/06 © Robert Godin. Tous droits réservés. 34
24/03/06 © Robert Godin. Tous droits réservés. 35 24/03/06 © Robert Godin. Tous droits réservés. 36
24/03/06 © Robert Godin. Tous droits réservés. 37 24/03/06 © Robert Godin. Tous droits réservés. 38
incluant les informations sur les Clients qui n’ont pas placé de Commande
Client = Commande
Oracle
– « + » après colonne pour inclure la valeur NULL
Laboratoire
Exercices 1 g) i) j)
24/03/06 © Robert Godin. Tous droits réservés. 39 24/03/06 © Robert Godin. Tous droits réservés. 40
6.2.12 Expressions
6.2.12 Expressions (suite)
générales sur les colonnes
La liste des noArticle avec le prixUnitaire avant Produire le détail de chacun des Articles commandés la
Commande #1 incluant le prix total avant et après la taxe de
et après inclusion de la taxe de 15% 15% pour chacun des Articles commandés
24/03/06 © Robert Godin. Tous droits réservés. 41 24/03/06 © Robert Godin. Tous droits réservés. 42
24/03/06 © Robert Godin. Tous droits réservés. 43 24/03/06 © Robert Godin. Tous droits réservés. 44
24/03/06 © Robert Godin. Tous droits réservés. 45 24/03/06 © Robert Godin. Tous droits réservés. 46
24/03/06 © Robert Godin. Tous droits réservés. 47 24/03/06 © Robert Godin. Tous droits réservés. 48
24/03/06 © Robert Godin. Tous droits réservés. 49 24/03/06 © Robert Godin. Tous droits réservés. 50
24/03/06 © Robert Godin. Tous droits réservés. 51 24/03/06 © Robert Godin. Tous droits réservés. 52
24/03/06 © Robert Godin. Tous droits réservés. 53 24/03/06 © Robert Godin. Tous droits réservés. 54
Laboratoire
Exercices 1 q) s) t) v)
24/03/06 © Robert Godin. Tous droits réservés. 55 24/03/06 © Robert Godin. Tous droits réservés. 56
Les Clients qui ont passé au moins une Commande Chercher les LigneCommandes pour lesquelles
au moins une Livraison a été effectuée
24/03/06 © Robert Godin. Tous droits réservés. 57 24/03/06 © Robert Godin. Tous droits réservés. 58
24/03/06 © Robert Godin. Tous droits réservés. 59 24/03/06 © Robert Godin. Tous droits réservés. 60
24/03/06 © Robert Godin. Tous droits réservés. 61 24/03/06 © Robert Godin. Tous droits réservés. 62
24/03/06 © Robert Godin. Tous droits réservés. 63 24/03/06 © Robert Godin. Tous droits réservés. 64
Laboratoire
Exercices 2 a) b)
Lab
Exercices 1 e) f) j) k) p) u)
m)
24/03/06 © Robert Godin. Tous droits réservés. 65 24/03/06 © Robert Godin. Tous droits réservés. 66
Insert
Delete
Update
24/03/06 © Robert Godin. Tous droits réservés. 67 24/03/06 © Robert Godin. Tous droits réservés. 68
24/03/06 © Robert Godin. Tous droits réservés. 69 24/03/06 © Robert Godin. Tous droits réservés. 70
24/03/06 © Robert Godin. Tous droits réservés. 71 24/03/06 © Robert Godin. Tous droits réservés. 72
Laboratoire
Commande LDD provoque un COMMIT
Exercices 1 x) y) z)
24/03/06 © Robert Godin. Tous droits réservés. 73 24/03/06 © Robert Godin. Tous droits réservés. 74
privilège :
objet :
24/03/06 © Robert Godin. Tous droits réservés. 77 24/03/06 © Robert Godin. Tous droits réservés. 78
Commandes LDD
– propriétaire du schéma
Création d ’une VIEW sur T
– SELECT sur T
FOREIGN KEY sur T
– privilège REFERENCES sur T
ROLE
– ensemble de privilèges
– SQL3, Oracle
24/03/06 © Robert Godin. Tous droits réservés. 79 24/03/06 © Robert Godin. Tous droits réservés. 80
24/03/06 © Robert Godin. Tous droits réservés. 81 24/03/06 © Robert Godin. Tous droits réservés. 82
Sémantique incohérente...
24/03/06 © Robert Godin. Tous droits réservés. 85 24/03/06 © Robert Godin. Tous droits réservés. 86
24/03/06 © Robert Godin. Tous droits réservés. 87 24/03/06 © Robert Godin. Tous droits réservés. 88
24/03/06 © Robert Godin. Tous droits réservés. 89 24/03/06 © Robert Godin. Tous droits réservés. 90
Voir Volume II
24/03/06 © Robert Godin. Tous droits réservés. 91 24/03/06 © Robert Godin. Tous droits réservés. 92
SQL3 : SQL/CLI
24/03/06 © Robert Godin. Tous droits réservés. 93 24/03/06 © Robert Godin. Tous droits réservés. 94
24/03/06 © Robert Godin. Tous droits réservés. 95 24/03/06 © Robert Godin. Tous droits réservés. 96
24/03/06 © Robert Godin. Tous droits réservés. 97 24/03/06 © Robert Godin. Tous droits réservés. 98
24/03/06 © Robert Godin. Tous droits réservés. 99 24/03/06 © Robert Godin. Tous droits réservés. 100
24/03/06 © Robert Godin. Tous droits réservés. 101 24/03/06 © Robert Godin. Tous droits réservés. 102
24/03/06 © Robert Godin. Tous droits réservés. 103 24/03/06 © Robert Godin. Tous droits réservés. 104
6.6.3.1 Architecture
6.6.3 JDBC
pour les pilotes JDBC
API standard pour JAVA
Ensemble de classes
Besoin d ’installer un pilote JDBC dans
l ’environnement JAVA
24/03/06 © Robert Godin. Tous droits réservés. 105 24/03/06 © Robert Godin. Tous droits réservés. 106
d'une connection
Charger les pilotes JDBC d ’ Oracle
– N.B. La librairie des pilotes Oracle doit être accessible à la machine virtuelle
Java. Voir http://www.info.uqam.ca/~godin/livres.html
– Avec JDK 1.1 (problème avec bloc statique) utiliser :
DriverManager.registerDriver (new oracle.jdbc.driver.OracleDriver());
Établir une connexion avec le pilote OCI8 pour un serveur Oracle local
– OCI8 est un pilote de type 2
24/03/06 © Robert Godin. Tous droits réservés. 107 24/03/06 © Robert Godin. Tous droits réservés. 108
Pour un rollback :
24/03/06 © Robert Godin. Tous droits réservés. 109 24/03/06 © Robert Godin. Tous droits réservés. 110
24/03/06 © Robert Godin. Tous droits réservés. 111 24/03/06 © Robert Godin. Tous droits réservés. 112
Compilation au prepareStatement
Chercher le nomClient et
Considérations client/serveur
noTéléphone d ’un Client
Coût important de communication Eviter :
Limiter le nombre d ’appels au serveur de BD
Solutions
– combiner plusieurs opérations SQL en une
si possible
– combiner plusieurs opérations dans une procédure/fonction (stored)
exécutée au niveau serveur
extension procédurale (SQL/PSM, Oracle PL/SQL)
support d ’un langage hôte (JAVA, C , C++, COBOL,…) Utiliser plutôt :
JDBC 2.0
– Statement peut contenir un lot d ’énoncés (batch update)
unEnoncé.addBatch(), unEnoncé.executeBatch()
24/03/06 © Robert Godin. Tous droits réservés. 115 24/03/06 © Robert Godin. Tous droits réservés. 116