1- phpMyAdmin 3ème partie : Manipulation des données Le langage SQL 2- Gérer les tables 3- Gérer les données
1- phpMyAdmin Le langage SQL
Présentation PhpMyAdmin est un logiciel (≠ programme) écrit en PHP qui permet l'administration d'un SGBD en mode graphique. Le langage PHP sert à interpréter les évènements qui surviennent sur la page et à les répercuter dans ou depuis la base de données concernée. 1- phpMyAdmin
Le langage SQL Présentation PhpMyAdmin est un logiciel (≠ programme) écrit en PHP qui permet l'administration d'un SGBD en mode graphique. Le langage PHP sert à interpréter les évènements qui surviennent sur la page et à les répercuter dans ou depuis la base de données concernée. 1- phpMyAdmin Gestion des bases de données Interclassement : choix du type de caractères (encodage) Liste des bases de données dont 3 bases systèmes : information_schema, mysql et test. Accueil général
Gestion des tables Suppression Modification Création Liste des tables de la base de données qlio. Accueil base de données
2- Gérer les tables Le langage SQL
Préparation En principe, le MLD vous donne Les tables pour chaque table : Les champs La clé primaire (identifiant) La (les) clé(s) étrangères C'est tout. 2- Gérer les tables
Le langage SQL Préparation Analyse SI vous demande en amont de préciser le type de chaque colonne et la taille maximale que peut atteindre une valeur. Ce sont effectivement des informations qui sont nécessaires, mais pas forcément lors de l'étape conceptuelle car restrictives. 2- Gérer les tables
Le langage SQL Préparation En outre, il conviendra de compléter l'ensemble par quelques spécificités optionnelles : incrémentation, valeur nulles acceptées, options de tri (interclassement), etc Gérer les tables
Le langage SQL Préparation Ce qui nous conduit à envisager un tableau de la forme suivante : 2- Gérer les tables
Le langage SQL Quelques types de données - rappel INT (nombre entier) : de TINYINT à BIGINT en fonction de la grandeur de valeur maximale admise. FLOAT, DOUBLE, REAL : nombre décimaux. TEXT ou CHAR ou VARCHAR : textes DATE TIME DATETIME (date & heure) BLOB : stockage de fichier dans la base de données sous forme binaire. 2- Gérer les tables
Le langage SQL Autres informations selon les champs : préciser si le champ admet les valeurs nulles. valeur par défaut (sinon NULL) interclassement (tri) nombre numérique n'admet que des valeurs positives (unsigned) doublons interdits (unique) etc Gérer les tables
Le langage SQL Exercices : 1- Créer un tableau (openoffice calc par exemple) pour la table Aliments composée de 2 colonnes id_aliment et nom_aliment 2- Créer cette table dans la base d'essai. Mettez vos initiales en préfixe de cette nouvelle table. 3- Exportez cette table. 2- Gérer les tables
Le langage SQL Syntaxe SQL CREATE TABLE IF NOT EXISTS `aliment` ( `id_aliment` int(10) NOT NULL auto_increment, `nom_aliment` varchar(50) collate latin1_general_ci NOT NULL, PRIMARY KEY (`id_aliment`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ; Nous obtenons quelque chose comme ça : dont nous ne conservons que la partie foncée. 2- Gérer les tables
Le langage SQL Syntaxe SQL CREATE TABLE aliment ( id_aliment int(10) NOT NULL auto_increment, nom_aliment varchar(50) NOT NULL, PRIMARY KEY (id_aliment) ); Voilà la syntaxe minimale d'après le tableau de référence : à l'intérieur 2 colonnes séparées et une clé primaire, séparés par une virgule. 2- Gérer les tables
Le langage SQL PhpMyAdmin Être positionné sur la base de données : cliquer sur « qliodigne » Cocher les tables à supprimer. Cliquer sur « pour la sélection » Sélectionner « supprimer » Il y a plein d'autres solutions pour atteindre le même résultat. 2- Gérer les tables
Le langage SQL SQL En console, taper : DROP TABLE nom_de_la_table Simplissime. 2- Gérer les tables
Le langage SQL PhpMyAdmin Il suffit « d'ouvrir » une table et d'opérer les modifications, à l'instar de la création. On peut : ajouter/supprimer des champs modifier leurs type, taille, options. Nous n'aborderons pas l'étude des modifications en langage SQL, qui, sans être complexes, sont fastidieuses et du domaine de la spécialisation. 2- Gérer les tables
3- Gérer les données Le langage SQL
PhpMyAdmin Se positionner sur la table concernée. Cliquer sur « insérer ». 3- Gérer les données
Le langage SQL 3- Gérer les données
Le langage SQL Exercice : 1- Énumérer les aliments contenus dans la table « mange ». 2- Se positionner sur la table aliments, cliquer sur insérer 3- Ajouter le nombre de lignes vierges nécessaires. 4- Compléter avec la liste puis exécuter. 3- Gérer les données
Le langage SQL Remarque : Il est inutile et même préférable de ne pas remplir le champ « id_aliment », ce dernier s'incrémentant automatiquement. 3- Gérer les données
Le langage SQL SQL : insertion d'une ligne Syntaxe 1 : INSERT INTO nom_de_table VALUES (value_1, value_2,..., value_n); Syntaxe 2 : INSERT INTO nom_de_table SET colonne_1 = value_1, colonne_2 = value_2,...; 3- Gérer les données
Le langage SQL SQL Syntaxe 1 : INSERT INTO nom_de_table VALUES (value_1, value_2,..., value_n); Syntaxe 2 : INSERT INTO nom_de_table SET colonne_1 = value_1, colonne_2 = value_2,...; Différences : la syntaxe 1 nécessite de fournir une valeur pour chaque colonne. La syntaxe 2 permet une saisie partielle et de n'insérer des valeurs que pour les colonnes spécifiées. 3- Gérer les données
Le langage SQL SQL : insertion de plusieurs lignes Seule la syntaxe 1 convient : INSERT INTO nom_de_table VALUES (value_1, value_2,..., value_n),.... (value_1, value_2,..., value_n); 3- Gérer les données
Le langage SQL SQL : insertion de plusieurs lignes Application : 1- Énumérer les valeurs de la colonne aliment de la table mange, classement alphabétique. 2- Remplir avec ces valeurs la colonne nom_aliment de la table aliments 3- Gérer les données
Le langage SQL phpMyAdmin Il suffit de modifier les valeurs 3- Gérer les données
Le langage SQL SQL : mise à jour (update) Syntaxe : UPDATE nom_de_table SET colonne_1 = value_1, colonne_2 = value_2,..., colonne_n = value_n WHERE colonne_x = value_x → préciser la (les) ligne(s) répondant à ce(s) critère(s) ; 3- Gérer les données
Le langage SQL SQL : mise à jour (update) NB : Sans clause WHERE, la valeur remplace toutes les valeurs de la colonne. 3- Gérer les données
Le langage SQL SQL : Suppression (delete) Syntaxe : DELETE FROM nom_de_table WHERE.... → préciser la (les) ligne(s) répondant à ce(s) critère(s) ; 3- Gérer les données
Le langage SQL SQL : suppression (delete) NB : Sans clause WHERE, la commande DELETE supprime TOUTES LES LIGNES de la table. Seule différence dans ce cas avec le bouton « Vider » de phpMyAdmin (TRUNCATE), l'incrémentation n'est pas réinitialisée. 3- Gérer les données
4- Quelques commandes utiles Le langage SQL
SQL : Dupliquer une table : Il n'existe pas de commande spécifique, pourtant, c'est très simple : CREATE TABLE nouvelle_table AS SELECT * FROM ancienne_table; N'est-ce pas ? 4- Quelques commandes utiles
Le langage SQL SQL : dupliquer une colonne En deux temps : 1- Ajouter une colonne (plus complexe, utiliser phpMyAdmin peut simplifier) ALTER TABLE nom_table ADD nom_colonne type_colonne(taille_max_colonne) option(s); 4- Quelques commandes utiles
Le langage SQL SQL : dupliquer une colonne En deux temps : 2- Copier le contenu de la colonne existante vers la nouvelle colonne UPDATE nom_table SET nouvelle_colonne = colonne_à_copier; 4- Quelques commandes utiles