Partie I
SQL de base
46
© Éditions Eyrolles
+--------+------+--------+------------+-------+
| numAff | comp | immat | dateAff
| nbPax |
+--------+------+--------+------------+-------+
|
1 | AF
| F-WTSS | 2005-05-13 |
85 |
|
2 | SING | F-GAFU | 2005-02-05 |
155 |
|
3 | AF
| F-WTSS | 2005-09-11 |
90 |
|
4 | AF
| F-GLFS | 2005-09-11 |
75 |
|
100 | SING | F-NEW | 2005-11-01 |
77 |
+--------+------+--------+------------+-------+
Utilisation en tant que clé étrangère
Créons deux séquences qui vont permettre de donner leur valeur aux clés primaires des deux
tables illustrées à la figure suivante (les affrètements commencent à 1, les passagers à 100).
Servons-nous aussi de la séquence de la table Affreter pour indiquer le dernier vol de
chaque passager. La section Intégrité référentielle détaille les mécanismes relatifs aux clés
étrangères.
Le script SQL de définition et de manipulation des données est indiqué ci-après. La valeur de
départ d’une séquence peut être définie à la fin de l’ordre CREATE TABLE. Notez également
l’utilisation de la fonction LAST_INSERT_ID dans les insertions pour récupérer la valeur de
la clé primaire.
Figure 2-5 Séquence appliquée à une clé étrangère
Affreter
numAff
comp
immat
dateAff
nbPax
1
AF
F-WTSS 13-05-2005
85
2
SING
F-GAFU 05-02-2005
155
3
AF
F-WTSS 15-05-2005
82
AUTO_INCREMENT
LAST_INSERT_ID() ⇒ 3
Passager
numPax
nom
siege
dernie rVol
100
Payrissat
7A
2
101
Castaings
2E
3
AUTO_INCREMENT
LAST_INSERT_ID() ⇒ 101
SQL de base
46
© Éditions Eyrolles
+--------+------+--------+------------+-------+
| numAff | comp | immat | dateAff
| nbPax |
+--------+------+--------+------------+-------+
|
1 | AF
| F-WTSS | 2005-05-13 |
85 |
|
2 | SING | F-GAFU | 2005-02-05 |
155 |
|
3 | AF
| F-WTSS | 2005-09-11 |
90 |
|
4 | AF
| F-GLFS | 2005-09-11 |
75 |
|
100 | SING | F-NEW | 2005-11-01 |
77 |
+--------+------+--------+------------+-------+
Utilisation en tant que clé étrangère
Créons deux séquences qui vont permettre de donner leur valeur aux clés primaires des deux
tables illustrées à la figure suivante (les affrètements commencent à 1, les passagers à 100).
Servons-nous aussi de la séquence de la table Affreter pour indiquer le dernier vol de
chaque passager. La section Intégrité référentielle détaille les mécanismes relatifs aux clés
étrangères.
Le script SQL de définition et de manipulation des données est indiqué ci-après. La valeur de
départ d’une séquence peut être définie à la fin de l’ordre CREATE TABLE. Notez également
l’utilisation de la fonction LAST_INSERT_ID dans les insertions pour récupérer la valeur de
la clé primaire.
Figure 2-5 Séquence appliquée à une clé étrangère
Affreter
numAff
comp
immat
dateAff
nbPax
1
AF
F-WTSS 13-05-2005
85
2
SING
F-GAFU 05-02-2005
155
3
AF
F-WTSS 15-05-2005
82
AUTO_INCREMENT
LAST_INSERT_ID() ⇒ 3
Passager
numPax
nom
siege
dernie rVol
100
Payrissat
7A
2
101
Castaings
2E
3
AUTO_INCREMENT
LAST_INSERT_ID() ⇒ 101
