Découvrez MySQL Connectez-vous ou inscrivez-vous gratuitement pour bénéficier d
Découvrez MySQL Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours ! Avant de pouvoir joyeusement jouer avec des données, il vous faut connaître quelques concepts de base. À la fin de ce chapitre, vous devriez : savoir ce qu'est un SGBD, un SGBDR, une base de données, et comment y sont représentées les données ; en connaître un peu plus sur MySQL et ses concurrents ; savoir ce qu'est le langage SQL et à quoi il sert. Concepts de base Base de données Une base de données informatique est un ensemble de données qui ont été stockées sur un support informatique, organisées et structurées de manière à pouvoir facilement consulter et modifier leur contenu. Prenons l'exemple d'un site web avec un système de news et de membres. On va utiliser une base de données MySQL pour stocker toutes les données du site : les news (avec la date de publication, le titre, le contenu, éventuellement l'auteur…) et les membres (leurs noms, leurs e-mails…). Tout ceci va constituer notre base de données pour le site. Mais il ne suffit pas que la base de données existe. Il faut aussi pouvoir la gérer et interagir avec cette base. Il faut pouvoir envoyer des messages à MySQL (messages que l'on appellera "requêtes") afin de pouvoir ajouter des news, modifier des informations sur les membres, supprimer, et tout simplement afficher des éléments de la base. Une base de données seule ne suffit donc pas, il est nécessaire d'avoir également : un système permettant de gérer cette base ; un langage pour transmettre des instructions à la base de données (par l'intermédiaire du système de gestion). SGBD Un Système de Gestion de Base de Données (SGBD) est un logiciel (ou un ensemble de logiciels) permettant de manipuler les données d'une base de données. Manipuler, c'est-à-dire sélectionner et afficher des informations tirées de cette base, modifier des données, en ajouter ou en supprimer (ce groupe de quatre opérations étant souvent appelé "CRUD", pour Create, Read, Update, Delete). MySQL est un système de gestion de bases de données. Le paradigme client-serveur La plupart des SGBD sont basés sur un modèle client-serveur. C'est-à-dire que la base de données se trouve sur un serveur qui ne sert qu'à ça, et pour interagir avec cette base de données, il faut utiliser un logiciel "client" qui va interroger le serveur et transmettre la réponse que le serveur lui aura donnée. Le serveur peut être installé sur une machine différente du client ; c'est souvent le cas lorsque les bases de données sont importantes. Ce n'est cependant pas obligatoire, ne sautez pas sur votre petit frère pour lui emprunter son ordinateur. Dans ce tutoriel, nous installerons les logiciels serveur et client sur un seul et même ordinateur. Par conséquent, lorsque vous installez un SGBD basé sur ce modèle (c'est le cas de MySQL), vous installez en réalité deux choses (au moins) : le serveur et le client. Chaque requête (insertion/modification/lecture de données) est faite par l'intermédiaire du client. Jamais vous ne discuterez directement avec le serveur (d'ailleurs, il ne comprendrait rien à ce que vous diriez). Vous avez donc besoin d'un langage pour discuter avec le client, pour lui donner les requêtes que vous souhaitez effectuer. Dans le cas de MySQL, ce langage est le SQL. SGBDR Le R de SGBDR signifie "relationnel". Un SGBDR est un SGBD qui implémente la théorie relationnelle. MySQL implémente la théorie relationnelle ; c'est donc un SGBDR. La théorie relationnelle dépasse le cadre de ce tutoriel, mais ne vous inquiétez pas, il n'est pas nécessaire de la maîtriser pour être capable d'utiliser convenablement un SGBDR. Il vous suffit de savoir que, dans un SGBDR, les données sont contenues dans ce que l'on appelle des relations, qui sont représentées sous forme de tables. Une relation est composée de deux parties, l'en-tête et le corps. L'en-tête est lui- même composé de plusieurs attributs. Par exemple, pour la relation "Client", on peut avoir un en-tête avec quatre attributs : numéro, prénom, nom et e-mail. Quant au corps, il s'agit d'un ensemble de lignes (ou n-uplets) composées d'autant d'éléments qu'il y a d'attributs dans le corps. Voici donc quatre lignes pour la relation "Client" : Numéro Prénom Nom Email 1 Jean Dupont jdupont@email.com 2 Marie Malherbe mama@email.com 3 Nicolas Jacques Jacques.nicolas@email.com 4 Hadrien Piroux happi@email.com Différentes opérations peuvent alors être appliquées à ces relations, ce qui permet d'en tirer des informations. Parmi les opérations les plus utilisées, on peut citer (soit AA et BB deux relations) : la sélection (ou restriction) : obtenir les lignes de AA répondant à certains critères ; la projection : obtenir une partie des attributs des lignes de AA ; l'union - A∪BA∪B : obtenir tout ce qui se trouve dans la relation AA ou dans la relation BB ; l'intersection - A∩BA∩B : obtenir tout ce qui se trouve à la fois dans la relation AA et dans la relation BB ; la différence - A−BA−B : obtenir ce qui se trouve dans la relation AA , mais pas dans la relation BB ; la jointure - A⋈BA⋈B : obtenir l'ensemble des lignes provenant de la liaison de la relation AA et de la relation BB à l'aide d'une information commune. Un petit exemple pour illustrer la jointure : si l'on veut stocker des informations sur les clients d'une société, ainsi que les commandes passées par ces clients, on utilisera deux relations, client et commande, la relation commande étant liée à la relation client par une référence au client ayant passé commande. Un petit schéma clarifiera tout cela ! Schéma d'une BDD relationnelle Le client numéro 3, M. Nicolas Jacques, a donc passé une commande de trois tubes de colle, tandis que Mme Marie Malherbe (cliente numéro 2) a passé deux commandes, pour du papier et des ciseaux. Le langage SQL Le SQL (Structured Query Language) est un langage informatique qui permet d'interagir avec des bases de données relationnelles. C'est le langage pour base de données le plus répandu, et c'est bien sûr celui utilisé par MySQL. C'est donc le langage que nous allons utiliser pour dire au client MySQL d'effectuer des opérations sur la base de données stockée sur le serveur MySQL. Il a été créé dans les années 1970 et c'est devenu standard en 1986 (pour la norme ANSI ; 1987 en ce qui concerne la norme ISO). Il est encore régulièrement amélioré. Présentation succincte de MySQL... MySQL est donc un Système de Gestion de Bases de Données Relationnelles qui utilise le langage SQL. C'est un des SGBDR les plus utilisés. Sa popularité est due en grande partie au fait qu'il s'agit d'un logiciel open source, ce qui signifie que son code source est librement disponible et que quiconque en ressent l'envie et/ou le besoin peut modifier MySQL pour l'améliorer ou l'adapter à ses besoins. Une version gratuite de MySQL est par conséquent disponible. À noter qu'une version commerciale payante existe également. Le logo de MySQL est un dauphin, nommé Sakila à la suite du concours Name the dolphin ("Nommez le dauphin"). Un peu d'histoire David Axmark, fondateur de MySQL Le développement de MySQL commence en 1994 par David Axmark et Michael Widenius. En 1995, la société MySQL AB est fondée par ces deux développeurs, et Allan Larsson. C'est la même année que sort la première version officielle de MySQL. En 2008, MySQL AB est rachetée par la société Sun Microsystems, qui est elle- même rachetée par Oracle Corporation en 2010. On craint alors la fin de la gratuité de MySQL, étant donné qu'Oracle Corporation édite un des grands concurrents de MySQL : Oracle Database, qui est payant (et très cher). Oracle promit cependant de continuer à développer MySQL et de conserver la double licence GPL (libre) et commerciale jusqu'en 2015 au moins. À ce jour, les deux licences existent toujours. Mise en garde MySQL est très utilisé, surtout par les débutants. Vous pourrez faire de nombreuses choses avec ce logiciel, et il convient tout à fait pour découvrir la gestion de bases de données. Sachez cependant que MySQL est loin d'être parfait. En effet, il ne suit pas toujours la norme officielle. Certaines syntaxes peuvent donc être propres à MySQL et ne pas fonctionner sous d'autres SGBDR. J'essaierai de le signaler lorsque le cas se présentera, mais soyez conscient de ce problème. Par ailleurs, il n'implémente pas certaines fonctionnalités avancées qui pourraient vous être utiles pour un projet un tant soit peu ambitieux. Enfin, il est très permissif, et acceptera donc des requêtes qui généreraient une erreur sous d'autres SGBDR. ... et de ses concurrents Il existe des dizaines de SGBDR, chacun ayant ses avantages et ses inconvénients. Je présente ici succinctement quatre d'entre eux, parmi les plus connus. Je m'excuse tout de suite auprès des fans (et même simples utilisateurs) des nombreux SGBDR que j'ai omis de présenter. Oracle Database Oracle, édité par Oracle Corporation (qui, je le rappelle, édite également MySQL) est un uploads/Litterature/ decouvrez-mysql.pdf
Documents similaires










-
24
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jul 29, 2021
- Catégorie Literature / Litté...
- Langue French
- Taille du fichier 1.8622MB