Commande DESCRIBE{DESCRIBE | DESC} nomTable {nomAttribut } Permet d’obtenir la description d’une table ou d’un nom d’attribut dans une table.. Commande LOCK TABLES LOCK TABLES nomTable,
Trang 1Commande DESCRIBE
{DESCRIBE | DESC} nomTable {nomAttribut }
Permet d’obtenir la description d’une table ou d’un nom d’attribut dans une table
Ce dernier peut contenir les caractères « % » et « _ » avec la même interprétation que dans la commande LIKE
Commande LOCK TABLES
LOCK TABLES nomTable, [AS alias ]
{READ | [LOW_PRIORITY] WRITE}
[, nomTable READ | [LOW_PRIORITY] WRITE ]
La commande LOCK permet d’effectuer manuellement les verrouillages, normale-ment automatiques dans un système transactionnel On peut placer des verrous en lecture ou en écriture et avec différents niveaux de priorité Pour un non spécialiste des problèmes de concurrence d’accès, l’utilisation de cette commande est peu recommandée car elle a pour effet de bloquer d’autres utilisateurs
Commande UNLOCK TABLES
UNLOCK TABLES
Relâche tous les verrous détenus pour la session courante
Commande SET
SET [OPTION] sqlOption = valeur,
Permet de donner une valeur à l’un des paramètres suivant pour la session cou-rante
• CHARACTER SET nomCS | DEFAULT Définit le jeu de caractères utilisé pour
interpréter les chaînes de caractères
• PASSWORD [FOR utilisateur ] = PASSWORD()(’motDePasse’).
Permet de changer un mot de passe pour un utilisateur On peut également utiliser la commande GRANT : voir page 448
• SQL_AUTO_IS_NULL = 0 | 1 Si le paramètre est à 1, on peut obtenir la dernière ligne insérée dans une table avec un attribut AUTO_INCREMENT avec
la clause
WHERE auto_increment_column IS NULL
Trang 2• SQL_BIG_TABLES = 0 | 1 Un paramètre booléen qui, s’il est à 1, indique que les tables temporaires doivent être stockées sur disque
• SQL_BIG_SELECTS = 0 | 1 Si le paramètre est à 0, MySQL interrompra les jointures qui manipulent plus de max_join_size lignes, ce dernier étant
un paramètre du serveur
• SQL_LOW_PRIORITY_UPDATES = 0 | 1 Si le paramètre vaut 1, les mises
à jour sur une table attendent qu’il n’y ait plus d’utilisateurs effectuant des lectures
• SQL_SELECT_LIMIT = value | DEFAULT Permet de fixer une limite au
nombre de lignes ramenées par un SELECT
• SQL_LOG_OFF = 0 | 1 Si le paramètre vaut 1, un utilisateur avec le droit
process n’engendre pas de mise à jour du fichier log standard.
• SQL_LOG_UPDATE = 0 | 1 Si le paramètre vaut 1, un utilisateur avec le
droit process n’engendre pas de mise à jour du fichier log des mises à jour.
• TIMESTAMP = valeur | DEFAULT Modifie la valeur du timestamp.
• LAST_INSERT_ID = valeur Définit la valeur retournée par le prochain
appel à LAST_INSERT_ID()
• INSERT_ID = valeur Définit la valeur à utiliser lors de la prochaine
inser-tion d’un attribut AUTO_INCREMENT
Commande GRANT
GRANT privil` ege [(listeAttributs )]
[,privil` ege [(listeAttributs )] ]
ON {nomTable | * | *.* | nomBase.*}
TO nomUtilisateur [IDENTIFIED BY ’motDePasse’]
[, nomUtilisateur [IDENTIFIED BY ’motDePasse’] ]
[WITH GRANT OPTION]
Définit et modifie les droits d’accès des utilisateurs Voir page 448
Commande REVOKE
REVOKE privil` ege [(listeAttributs )]
[,privil` ege [(listeAttributs )] ]
ON {nomTable | * | *.* | nomBase.*}
FROM nomUtilisateur [, nomUtilisateur ]
Retire des droits à un ou plusieurs utilisateur(s) Voir page 448
Trang 3Commande CREATE INDEX
CREATE [UNIQUE] INDEX nomIndex
ON nomTable (nomAttribut [(taille )], )
Création d’un index Voir page 204
Commande DROP INDEX
DROP INDEX nomIndex ON nomTable
Suppression d’un index
B.3 FONCTIONS MySQL
Les fonctions suivantes peuvent être utilisées dans des requêtes SQL Pour la plupart, elles constituent un ajout de MySQL à la norme SQL ANSI
ABS (nombre )
Renvoie la valeur absolue de nombre
ACOS (nombre )
Renvoie le cosinus inverse de nombre, exprimé en radians
ASCII (car )
Renvoie le code ASCII du caractère car
ASIN (nombre )
Renvoie le sinus inverse de nombre, exprimé en radians
ATAN (number )
Renvoie la tangente inverse de nombre, exprimée en radians.
ATAN2 (x, y )
Renvoie la tangente inverse du point x,y.
CHAR (code1, [code2, ] )
Renvoie une chaîne obtenue par conversion de chaque code ASCII vers le caractère correspondant
Trang 4CONCAT (cha^ ıne1, [cha^ ıne2, ] )
Renvoie la concaténation de tous les arguments
CONV (nombre, base1, base2 )
Renvoie la conversion de nombre de base1 en base2 La base est un chiffre entre
2 et 36
BIN (d´ ecimal )
Renvoie la valeur binaire d’un nombre décimal
BIT_COUNT (nombre )
Renvoie le nombre de bits à 1 dans la représentation binaire de nombre.
CEILING (nombre )
Renvoie le plus petit entier supérieur ou égal à nombre.
COS (radians )
Renvoie le cosinus de radians.
COT (radians )
Renvoie la cotangente de radians.
CURDATE ()
Renvoie la date courante au format AAAAMMJJ ou AAAA-MM-JJ selon que le contexte est numérique ou alphanumérique Forme équivalente : CURRENT_DATE()
CURTIME ()
Renvoie l’heure courante au format HHMMSS ou HH:MM:SS selon que le contexte est numérique ou alphanumérique Forme équivalente : CURRENT_TIME()
DATABASE ()
Renvoie le nom de la base de données courante
DATE_ADD (date, INTERVAL dur´ ee p´ eriode )
Ajoute un nombre dur´ ee de p´ eriode à date Par exemple DATE_ADD
("2000-12-01", INTERVAL 3 MONTH) renvoie "2001-03-01" Les valeurs
autorisées pour p´ eriode sont SECOND, MINUTE, HOUR, DAY, MONTH et YEAR Forme
équivalente : ADDDATE()
Trang 5DATE_FORMAT (date, format )
Formate une date d’après un format spécifié avec les options suivantes :
• %a Nom court du jour (en anglais : « Mon », « Tue », etc.).
• %b Nom court du mois (en anglais : « Jan », « Feb », etc.).
• %D Jour du mois avec suffixe (en anglais : « 1st », « 2nd », etc.).
• %d Jour du mois.
• %H Heure, sur 24 heures, et avec deux chiffres.
• %h Heure, sur 12 heures.
• %i Minutes.
• %j Jour de l’année.
• %k Heure, sur 24 heures, et avec un ou deux chiffres.
• %l Heure, sur 12 heures, et avec un ou deux chiffres.
• %M Nom du mois (en anglais).
• %m Numéro du mois.
• %p AM ou PM.
• %r Heure complète (HH::MM::SS), sur 12 heures, avec AM ou PM.
• %S Secondes, sur deux chiffres.
• %s Secondes, sur un ou deux chiffres.
• %T Heure complète (HH::MM::SS), sur 24 heures.
• %U Numéro de la semaine (N.B : la semaine commence le dimanche).
• %W Nom du jour (en anglais).
• %w Numéro du jour de la semaine (NB : la semaine commence le dimanche,
jour 0)
• %Y Année sur quatre chiffres.
• %y Année sur deux chiffres.
• %% Pour écrire « % ».
Les quelques fonctions qui suivent fournissent des raccourcis pour des formatages
de date courants
DATE_SUB (date,INTERVAL dur´ ee p´ eriode )
Soustrait une duréee à une date Voir DATE_ADD() pour les valeurs des paramètres
DAYNAME (date )
Nom du jour (en anglais)
DAYOFMONTH (date )
Numéro du jour dans le mois