logo article ou rubrique
SQL

par lagrenouille

* MySQL est un système de gestion de bases de données relationnelles (SGBDR).
* Ce système client-serveur, serveur sql qui contient des clients pour y accéder, des outils
d’administration et une interface de programmation.
* Comme d’autres logiciels sous linux, il n’est pas totalement libre et dans certaines conditions (utilisation commerciales) il faudra une licence.
Mysql n’a aucune fonction de serveur web, mais il est possible de faire des requêtes à partir d’une page web, avec perl, ou php plus utilisé pour éditer des formulaires.
 
* MariaDB est un remplacement de MySQL
Tous les APIs (Application Programming Interface ) clients, les protocoles et les structures sont identiques.
Le paquet mysql-client fonctionne aussi avec le serveur MariaDB.
* Ce système a été créé sous la forme d’un dérivé logiciel (fork) de MySQL par les développeurs ayant joué un rôle essentiel dans la création de la base d’origine ;
ils ont conçu MariaDB en 2009 en réaction à l’acquisition de MySQL par Oracle Corp...
 

 
MySQL est utillisé avec cette syntaxe pour désigner un système de gestion de base de données
mysql signifie le programme du client.

Par défaut, MySQL stocke chaque requête en écriture dans des fichiers appelés binlogs.
 

  • J’ouvre mysql pour créer et donner les droits mysql à un user non root
     

     

  • Créer une bdd (exemple biblio)
     

     

* Je peux ne connecter à ma base pour y travailler de deux façons

 

* drop si je veux effacer la base
MariaDB [biblio]>{ DROP DATABASE IF EXISTS biblio;}
Query OK, 0 rows affected (0.02 sec)
En SQL, la commande DROP DATABASE permet de supprimer totalement une base de données et tout ce qu’elle contient. Cette commande est à utiliser avec beaucoup d’attention car elle permet de supprimer tout ce qui est inclus dans une base:

* À chaque connexion à MySQL (ou à chaque fois que l'on veut utiliser une base de données différente de celle sélectionnée précédemment), il faut préciser avec quelle base on va travailler, avec USE nom_base.

 
* Création de la table livres avec 6 colonnes dans la bdd biblio

isbn titre auteur edition date_edition exemplaire

 
* Exemple d’une saisie d’un livre dans la table livres

* Voir ce que l’on à saisie

 
* Pour obtenir seulement la liste des livres dont l’éditeur est NRF, il faut effectuer la requête suivante :

* Pour effacer une ligne dans ma table, exemple la ligne 1063
delete from livres where id = 1063  ;
ou
* pour effacer les lignes entre 1095 et 1098
delete from livres where id>1095 and id<1098 ;


* Pour effacer toutes les tables qui ont le même suffixe (exemple de tables spip)
DROP TABLE LIKE '%spip_%'  


* Pour rajouter un champ dans une table de la bdd
ALTER TABLE non_table ADD COLUMN nom_colonne Description  NOT NULL ;

* les descriptions, voir varchar, int, text, bigint, datetime ....etc...

* Modifier un champ de ma table
ALTER TABLE nom-table
MODIFY 'id_livre' int(11) NOT NULL ............etc

* Pour voir toutes les tables de ma bdd (affichage complet des champs)
SELECT * FROM INFORMATION_SCHEMA.TABLES;
* Plus simplifié avec juste le nom des tables
show tables;

* Pour afficher toutes les colonnes de ma table
describe nom_table ;

 

  • Comment injecter un fichier csv dans ma table livres,
     

     

  • Vous remarquerez, à juste titre que tout n’est pas bien, car j’ai des warnings
    Je cherche
    pourquoi 1031 affected alors que j’ai 1449 lignes, pourquoi 0 Skipped
    et Warnings : 1753.
     
    * Pour éditer que les éditions NRF, c’est *
     

     

  • Mettons que je veuille mettre mes livres dans un article de mon site
     
    * j’importerai la table livres dans ma bdd du site.sous le nom de table spip_livres

* je fais un fichier livres.html dans mon fichier squelettes/modeles
(le créer si nécessaire et vérifier les droits)

 
* appeler la bdd dans l’article comme ceci

 

* ce qui peut être sympa pour un petit site de gestion de vos bibliothèques

VOIR ICI -https://chezlagrenouille.fr/spip.php?article153




Haut de page
Systéme: Gnu_Linux_Debian