MySQL dispose de nombreux outils de gestion visuelle, tels que "mysql-workbench" et "sequel-pro-". Maintenant, j'écris des articles sur les opérations de commande du terminal MySQL parce que je souhaite renforcer ma compréhension de MySQL. Ce sera toujours plus approfondi que d'utiliser des méthodes graphiques, car je préfère écrire du code. En même temps, j'écris ces articles pour servir de référence à tout le monde. J'espère qu'ils pourront également aider et améliorer tout le monde. C'est pourquoi je souhaite écrire des articles sur le fonctionnement du terminal de MySQL.
Remarque : les commandes de base de données MySQL ne sont pas sensibles à la casse. Mais dans le terminal MAC, si vous souhaitez utiliser l'onglet pour terminer automatiquement la commande, vous devez alors utiliser des lettres majuscules, afin que le terminal MAC termine la commande pour vous, sinon il n'y aura pas de réponse si vous appuyez N fois sur l'onglet.
1.1 créer Créer une base de données
create database firstDB;
1.2 afficher toutes les bases de données
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | firstDB | | mysql | | performance_schema | +--------------------+ 4 rows in set (0.00 sec)
1.3 modifier la base de données
La commande alter modifie l'encodage de la base de données :
La base de données créée par défaut ne prend pas en charge les caractères chinois par défaut. Si nous en avons besoin pour prendre en charge les caractères chinois, définissez son encodage au format utf8 : <. 🎜>
mysql> ALTER DATABASE testDB CHARACTER SET UTF8; Query OK, 1 row affected (0.00 sec)
1.4 utiliser utiliser la base de données
mysql> use firstDB; Database changed
1.5 Afficher la base de données actuellement utilisée
mysql> select database(); +------------+ | database() | +------------+ | firstdb | +------------+ 1 row in set (0.00 sec)
1.6 supprimer la base de données
mysql> drop database firstDB; Query OK, 0 rows affected (0.00 sec)
mysql> create database testDB; Query OK, 1 row affected (0.00 sec)
Après la création, pensez à utiliser le utilisez la commande pour entrer (utiliser) la base de données, sinon les opérations ultérieures échoueront.
2.1 créer Créer un tableau
mysql> create table PEOPLE ( -> ID int AUTO_INCREMENT PRIMARY KEY, -> NAME varchar(20) not null, -> AGE int not null, -> BIRTHDAY datetime); Query OK, 0 rows affected (0.01 sec)
2.2 afficher le tableau d'affichage
Afficher toutes les tables de données de la base de données actuelle
mysql> show tables; +------------------+ | Tables_in_testdb | +------------------+ | PEOPLE | +------------------+ 1 row in set (0.00 sec)
2.3 desc View Structure de la table
mysql> desc PEOPLE -> ; +----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+----------------+ | ID | int(11) | NO | PRI | NULL | auto_increment | | NAME | varchar(20) | NO | | NULL | | | AGE | int(11) | NO | | NULL | | | BIRTHDAY | datetime | YES | | NULL | | +----------+-------------+------+-----+---------+----------------+ 4 rows in set (0.01 sec)
2.4 alter Modifier la structure de la table (ajouter, supprimer, modifier)
Le tableau créé par défaut ne prend pas en charge les caractères chinois, l'encodage du tableau doit donc être défini sur utf8 :
mysql> ALTER TABLE KEYCHAIN CONVERT TO CHARACTER SET UTF8; Query OK, 1 row affected (0.02 sec) Records: 1 Duplicates: 0 Warnings: 0
2.4.1 insert ajoute des colonnes (champs) au tableau
mysql> alter table PEOPLE add star BOOL; Query OK, 0 rows affected (0.02 sec) Records: 0 Duplicates: 0 Warnings: 0
Astuce : Dans MySQL , le type Boolean sera automatiquement converti en type tinyint(1).
mysql> desc PEOPLE; +----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+----------------+ | ID | int(11) | NO | PRI | NULL | auto_increment | | NAME | varchar(20) | NO | | NULL | | | AGE | int(11) | NO | | NULL | | | BIRTHDAY | datetime | YES | | NULL | | | star | tinyint(1) | YES | | NULL | | +----------+-------------+------+-----+---------+----------------+ 5 rows in set (0.00 sec)
Maintenant, vous devriez crois-moi déjà ?
2.4.2 modifier les champs de la table (colonne)
mysql> alter table PEOPLE MODIFY star int; Query OK, 0 rows affected (0.01 sec) Records: 0 Duplicates: 0 Warnings: 0
nous Utilisez à nouveau desc pour afficher la structure de la table PEOPLE :
mysql> desc PEOPLE; +----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+----------------+ | ID | int(11) | NO | PRI | NULL | auto_increment | | NAME | varchar(20) | NO | | NULL | | | AGE | int(11) | NO | | NULL | | | BIRTHDAY | datetime | YES | | NULL | | | star | int(11) | YES | | NULL | | +----------+-------------+------+-----+---------+----------------+ 5 rows in set (0.00 sec)
2.4.3 supprimer supprimer le champ (colonne) de la table
mysql> alter table PEOPLE DROP column star; Query OK, 0 rows affected (0.02 sec) Records: 0 Duplicates: 0 Warnings: 0
Après la suppression, affichez à nouveau la structure de la table PEOPLE :
mysql> desc PEOPLE; +----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------+-------------+------+-----+---------+----------------+ | ID | int(11) | NO | PRI | NULL | auto_increment | | NAME | varchar(20) | NO | | NULL | | | AGE | int(11) | NO | | NULL | | | BIRTHDAY | datetime | YES | | NULL | | +----------+-------------+------+-----+---------+----------------+ 4 rows in set (0.00 sec)
Le champ a été supprimé avec succès. Nous ne pouvons plus voir le champ étoile.
2.4.4 renommer renommer le nom de la table
mysql> RENAME TABLE PEOPLE TO NEW_PEOPLE; Query OK, 0 rows affected (0.00 sec)
2.5 create Créer une nouvelle table en utilisant les données existantes
mysql> create table newTable select * from PEOPLE; Query OK, 0 rows affected (0.01 sec) Records: 0 Duplicates: 0 Warnings: 0
Vérifions les tables qui existent actuellement dans la base de données :
mysql> show tables; +------------------+ | Tables_in_testdb | +------------------+ | PEOPLE | | newTable | +------------------+ 2 rows in set (0.00 sec)
3. Opération et gestion des données
3.1 Ajouter des données (augmenter)
La table PEOPLE n'a actuellement aucune donnée. C'est une table de données vide. Ajoutons maintenant quelques données.
insérer dans la commande pour ajouter des données :mysql> insert into PEOPLE VALUES (null, 'Anny', 22, '1992-05-22'); Query OK, 1 row affected (0.00 sec)
Utilisez la commande select pour afficher le tableau (cela sera introduit plus tard), nous regardons maintenant les données dans la table de données PEOPLE :
mysql> select * from PEOPLE; +----+------+-----+---------------------+ | ID | NAME | AGE | BIRTHDAY | +----+------+-----+---------------------+ | 1 | Anny | 22 | 1992-05-22 00:00:00 | +----+------+-----+---------------------+ 1 row in set (0.00 sec)
La table de données a maintenant un morceau de données.
mysql> select * from PEOPLE; +----+--------+-----+---------------------+ | ID | NAME | AGE | BIRTHDAY | +----+--------+-----+---------------------+ | 1 | Anny | 22 | 1992-05-22 00:00:00 | | 2 | Garvey | 23 | 1991-05-22 00:00:00 | | 3 | Lisa | 25 | 1989-05-22 00:00:00 | | 4 | Nick | 24 | 1990-05-22 00:00:00 | | 5 | Rick | 24 | 1991-05-22 00:00:00 | +----+--------+-----+---------------------+ 5 rows in set (0.00 sec)
3.2 Supprimer data (delete )
commande delete pour supprimer des données :
mysql> delete from PEOPLE where name = 'Lisa'; Query OK, 1 row affected (0.01 sec)
Interroger la table PEOPLE encore une fois :
mysql> select * from PEOPLE; +----+--------+-----+---------------------+ | ID | NAME | AGE | BIRTHDAY | +----+--------+-----+---------------------+ | 1 | Anny | 22 | 1992-05-22 00:00:00 | | 2 | Garvey | 23 | 1991-05-22 00:00:00 | | 4 | Nick | 24 | 1990-05-22 00:00:00 | | 5 | Rick | 24 | 1991-05-22 00:00:00 | +----+--------+-----+---------------------+ 4 rows in set (0.00 sec)
La donnée nommée "Lisa" n'est plus visible.
3.3 Modifier les données (changer)
commande update pour modifier les données :
mysql> update PEOPLE set name='Calvin' where name = 'Garvey'; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0
Interroger le contenu de la table PEOPLE :
mysql> select * from PEOPLE; +----+--------+-----+---------------------+ | ID | NAME | AGE | BIRTHDAY | +----+--------+-----+---------------------+ | 1 | Anny | 22 | 1992-05-22 00:00:00 | | 2 | Calvin | 23 | 1991-05-22 00:00:00 | | 4 | Nick | 24 | 1990-05-22 00:00:00 | | 5 | Rick | 24 | 1991-05-22 00:00:00 | +----+--------+-----+---------------------+ 4 rows in set (0.00 sec)
L'enregistrement nommé "Garvey" a été modifié en "Calvin"".
3.4 Interroger les données (vérifier)
commande select pour interroger les données Le plus simple est d'interroger toutes les données de la table, qui est la commande que nous avons utilisée initialement :
mysql> select * from PEOPLE; +----+--------+-----+---------------------+ | ID | NAME | AGE | BIRTHDAY | +----+--------+-----+---------------------+ | 1 | Anny | 22 | 1992-05-22 00:00:00 | | 2 | Calvin | 23 | 1991-05-22 00:00:00 | | 4 | Nick | 24 | 1990-05-22 00:00:00 | | 5 | Rick | 24 | 1991-05-22 00:00:00 | +----+--------+-----+---------------------+ 4 rows in set (0.00 sec)
Format : sélectionnez * dans
mysql> select NAME, AGE, BIRTHDAY from PEOPLE; +--------+-----+---------------------+ | NAME | AGE | BIRTHDAY | +--------+-----+---------------------+ | Anny | 22 | 1992-05-22 00:00:00 | | Calvin | 23 | 1991-05-22 00:00:00 | | Nick | 24 | 1990-05-22 00:00:00 | | Rick | 24 | 1991-05-22 00:00:00 | +--------+-----+---------------------+ 4 rows in set (0.00 sec)
Format : sélectionnez
La commande select query a également de nombreuses utilisations avancées, telles que la recherche de données uniques (distinctes), le tri des données par conditions (order by), l'affichage des données en fonction des conditions de requête (où), etc. Ceux-ci seront mis en évidence dans le prochain article. Veuillez continuer à prêter attention à mon blog. Merci.
Ce qui précède est le contenu du guide d'utilisation de la base de données de gestion des terminaux MySQL. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !