Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
mysql [2015/01/05 14:01] luc |
mysql [2018/10/13 20:32] (Version actuelle) |
||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
Avant de commencer le vif du sujet, il faut connaître quel type de données on peut stocker | Avant de commencer le vif du sujet, il faut connaître quel type de données on peut stocker | ||
- | === Numérique | + | == Numérique == |
^ NOM ^ Taille | ^ NOM ^ Taille | ||
| TINYINT | | TINYINT | ||
Ligne 20: | Ligne 20: | ||
FLOAT, DOUBLE REAL : valeur approchée stockée sous forme scientifique | FLOAT, DOUBLE REAL : valeur approchée stockée sous forme scientifique | ||
- | === Alphanumérique | + | == Alphanumérique == |
^ NOM ^ DESCRIPTION | ^ NOM ^ DESCRIPTION | ||
| VARCHAR(25) | | VARCHAR(25) | ||
Ligne 27: | Ligne 27: | ||
| ENUM | permet de prendre une valeur parmi celles prédéfinies (par exemple ' | | ENUM | permet de prendre une valeur parmi celles prédéfinies (par exemple ' | ||
- | === Temporel | + | == Temporel == |
^ NOM ^ DESCRIPTION | ^ NOM ^ DESCRIPTION | ||
| DATE | permet de stocker une date, plusieurs formats possibles (par défaut : aaaa-mm-jj ) | | | DATE | permet de stocker une date, plusieurs formats possibles (par défaut : aaaa-mm-jj ) | | ||
Ligne 44: | Ligne 44: | ||
==== Gérer les BASES de données du serveur ==== | ==== Gérer les BASES de données du serveur ==== | ||
<code mysql> | <code mysql> | ||
+ | SHOW DATABASES; | ||
CREATE DATABASE nom [CHARACTER SET ' | CREATE DATABASE nom [CHARACTER SET ' | ||
DROP DATABASE nom ; -- permet de supprimer une base de données | DROP DATABASE nom ; -- permet de supprimer une base de données | ||
Ligne 49: | Ligne 50: | ||
</ | </ | ||
- | '' | + | == SAUVEGARDE |
+ | outil console : | ||
+ | <code bash> | ||
==== Gérer les TABLES d'une base ==== | ==== Gérer les TABLES d'une base ==== | ||
+ | == créer == | ||
<code mysql> | <code mysql> | ||
CREATE TABLE nom ( -- permet la création d'une table qui s' | CREATE TABLE nom ( -- permet la création d'une table qui s' | ||
Ligne 60: | Ligne 64: | ||
[ENGINE=moteur] ; -- MYISAM, INNODB | [ENGINE=moteur] ; -- MYISAM, INNODB | ||
</ | </ | ||
+ | |||
+ | == Visualiser la structure == | ||
<code mysql> | <code mysql> | ||
DESCRIBE table ; -- permet de d' | DESCRIBE table ; -- permet de d' | ||
- | DROP TABLE nom_table ; -- permet de supprimer une table, irréversible... | ||
</ | </ | ||
+ | == Modifier la structure == | ||
<code mysql> | <code mysql> | ||
ALTER TABLE nom_table -- permet de modifier une table, plusieurs fonctions sont disponibles : | ALTER TABLE nom_table -- permet de modifier une table, plusieurs fonctions sont disponibles : | ||
Ligne 74: | Ligne 80: | ||
</ | </ | ||
- | -- INDEX -- | + | == Supprimer == |
- | ils peuvent être créés directement à la création | + | <code mysql> |
+ | DROP TABLE nom_table ; -- permet | ||
+ | </ | ||
- | ALTER TABLE nom-table méthode 1 pour créer un index | + | == Gérer les INDEX d'une table == |
- | ADD INDEX [nom index](col, | + | ils peuvent être créés directement à la création de la table ou par modification de celle ci : |
- | ADD UNIQUE un index avec contrainte d' | + | <code mysql> |
- | ADD FULLTEXT MyISAM seulement, sur les colonnes de texte; caractères... | + | ALTER TABLE nom-table |
+ | ADD INDEX [nom index](col, | ||
+ | ADD UNIQUE | ||
+ | ADD FULLTEXT | ||
- | CREATE [UNIQUE/ | + | CREATE [UNIQUE/ |
ON nom_table (col,..) | ON nom_table (col,..) | ||
- | ALTER TABLLE | + | ALTER TABLE nom_table |
DROP INDEX nom_index | DROP INDEX nom_index | ||
+ | </ | ||
- | ------------------------ | ||
- | - AGIR SUR LES DONNEES - | ||
- | ------------------------ | ||
- | -- INSERTION DE DONNEES -- | ||
- | INSERT INTO table (col1, col2) requete pour l' | ||
- | VALUES (valeur1, | ||
- | INSERT requete | + | ==== AGIR SUR LES DONNEES ==== |
- | INTO table (col1, | + | |
+ | == Ajouter des DONNEES == | ||
+ | <code mysql> | ||
+ | INSERT | ||
+ | VALUES (valeur1, | ||
+ | |||
+ | INSERT -- requête | ||
+ | INTO table (col1, | ||
VALUES (valeur, valeur) | VALUES (valeur, valeur) | ||
ON DUPLICATE KEY UPDATE col=valeur, .. | ON DUPLICATE KEY UPDATE col=valeur, .. | ||
- | SOURCE fichier.sql; | + | SOURCE fichier.sql; |
- | LOAD DATA LOCAL INFILE ' | + | LOAD DATA LOCAL INFILE ' |
INTO TABLE nom_table | INTO TABLE nom_table | ||
FIELDS TERMINATED BY ';' | FIELDS TERMINATED BY ';' | ||
Ligne 108: | Ligne 121: | ||
IGNORE 1 LINES | IGNORE 1 LINES | ||
(col1, | (col1, | ||
+ | </ | ||
- | -- SELECTION DE DONNEES | + | == Récupérer des DONNEES |
- | SELECT ' | + | <code mysql> |
- | SELECT col1, Col2 FROM nom_table ; renvoi | + | SELECT ' |
- | SELECT * FROM nom_table ; renvoi | + | SELECT col1, Col2 FROM nom_table ; -- renvoie |
- | SELECT colonne renvoi | + | SELECT * FROM nom_table ; -- renvoie |
+ | SELECT colonne -- renvoie | ||
FROM table | FROM table | ||
WHERE col=... AND/OR ... | WHERE col=... AND/OR ... | ||
Ligne 121: | Ligne 136: | ||
IS NOT NULL | IS NOT NULL | ||
- | SELECT col FROM table WHERE .. ORDER BY .. permet de trier les données avant de les afficher | + | SELECT col FROM table WHERE .. ORDER BY .. -- permet de trier les données avant de les afficher |
- | ORDER BY col DESC/ASC permet de définir l' | + | ORDER BY col DESC/ASC -- |
- | ORDER BY col1 , col2 trier selon col1, puis col2 | + | ORDER BY col1 , col2 -- |
- | SELECT DISTINCT col FROM table permet de ne pas afficher de doublon | + | SELECT DISTINCT col FROM table -- permet de ne pas afficher de doublon |
- | SELECT col FROM table LIMIT n OFFSET o limite le nombre de ligne affichée, éventuellement avec un offset | + | SELECT col FROM table LIMIT n OFFSET o -- limite le nombre de ligne affichée, éventuellement avec un offset |
+ | </ | ||
- | -- SUPPRESSION DE DONNEES | + | == Supprimer des DONNEES |
- | DELETE FROM table WHERE critères ; supprime les lignes de la table pour lesquels le critère est vrai | + | <code mysql> |
+ | DELETE FROM table WHERE critères ; -- supprime les lignes de la table pour lesquels le critère est vrai | ||
+ | </ | ||
- | -- MODIFICATION DE DONNES -- | + | == Modifier des DONNEES == |
- | UPDATE table permet de modifier toutes les lignes pour lesquelles le critère est vrai, la modification porte sur les arguments spécifiés | + | <code mysql> |
+ | UPDATE table -- | ||
SET col1=valeur, | SET col1=valeur, | ||
WHERE critère | WHERE critère | ||
+ | </ | ||
- | -- SAUVEGARDE D'UNE BASE -- | ||
- | outil console : | ||
- | mysqldump -u user -ppassword -B base > file |