Partie I
SQL de base
198
© Éditions Eyrolles
Vous pouvez notez que MySQL utilise :
q
NUMERIC_PRECISION pour renseigner la taille des numériques pour chaque colonne.
q
NUMERIC_SCALE pour renseigner la précision des numériques.
Extraction des colonnes date-heure
La requête suivante extrait toutes les colonnes de type date-heure de la table Installer.
SELECT COLUMN_NAME,DATA_TYPE,COLUMN_DEFAULT
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'bdsoutou' AND TABLE_NAME='Installer'
AND CHARACTER_MAXIMUM_LENGTH IS NULL
AND
);
+-------------+-----------+-------------------+
| COLUMN_NAME | DATA_TYPE | COLUMN_DEFAULT
|
+-------------+-----------+-------------------+
| dateIns
| timestamp | CURRENT_TIMESTAMP |
| delai
| time
| NULL
|
+-------------+-----------+-------------------+
Citons, pour en terminer avec cette vue, les colonnes :
q
CHARACTER_SET_NAME et COLLATION_NAME qui renseignent sur le jeu de caractères
pour chaque colonne de la table.
q
COLUMN_COMMENT qui renseigne sur les éventuels commentaires sur chaque colonne.
Recherche des contraintes d’une table
La vue TABLE_CONSTRAINTS décrit la nature des contraintes. La requête suivante détaille
les contraintes contenues dans la table Installer de la base bdsoutou.
SELECT
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE TABLE_SCHEMA = 'bdsoutou' AND TABLE_NAME='Installer';
+-------------------+----------------------------+-----------------+
| CONSTRAINT_SCHEMA | CONSTRAINT_NAME
| CONSTRAINT_TYPE |
+-------------------+----------------------------+-----------------+
| bdsoutou
| PRIMARY
| PRIMARY KEY
|
| bdsoutou
| un_installation
| UNIQUE
|
| bdsoutou
| fk_Installer_nLog_Logiciel | FOREIGN KEY
|
| bdsoutou
| fk_Installer_nPoste_Poste | FOREIGN KEY
|
+-------------------+----------------------------+-----------------+
MySQL utilise :
q
CONSTRAINT_SCHEMA pour indiquer la base de données qui contient la contrainte (qui
peut être située dans une autre base de données que la table elle-même).
DATA_TYPE IN ('timestamp','time','date'
CONSTRAINT_SCHEMA,CONSTRAINT_NAME,CONSTRAINT_TYPE
Précédent

- 220/418

Suivant