Maison  >  Article  >  base de données  >  Introduction détaillée aux commandes courantes de base de MySQL

Introduction détaillée aux commandes courantes de base de MySQL

WBOY
WBOYavant
2021-12-23 18:37:142791parcourir

Cet article vous présente un résumé des commandes de base de MySQL En plus de la façon de se connecter à la base de données et de modifier le mot de passe, il existe également quelques commandes couramment utilisées. J'espère qu'elles vous seront utiles.

Introduction détaillée aux commandes courantes de base de MySQL

1. Connectez-vous à MySQL

format : mysql -h adresse de l'hôte -u nom d'utilisateur -p mot de passe de l'utilisateur

1. Connectez-vous à MySQ sur cette machine :

Ouvrez d'abord la fenêtre cmd, entrez mysql -uroot -p, puis entrez dans la console MySQL avec un espace. MySQL est : mysql>.
mysql -uroot -p /*如果刚安装好MySQL,root是没有密码的*/

2. Connectez-vous à MySQL sur l'hôte distant :

En supposant que l'hôte distant est le L'IP est : 192.168.206.100, le nom d'utilisateur est root, le mot de passe est 12345678.
mysql> mysql -h192.168.206.100 -uroot -p12345678; /*u与root可以不加空格*/

3. Quitter la commande MySQL : quitter ou quitter (Entrée) :

mysql> exit/quit;

2. MySQL - Changer le mot de passe

Format : mysqladmin - u nom d'utilisateur -p ancien mot de passe mot de passe nouveau mot de passe

1 Lorsque le mot de passe root est vide, définissez le mot de passe root :

mysql> mysqladmin -uroot newpassword;   -- 因为开始时root没有密码,所以-p旧密码 可以省略

2. Utilisez la commande sqladmin pour changer le mot de passe . :

mysql> mysqladmin -uroot -p123456 password 12345678;

3. Utilisez la commande set password pour changer le mot de passe :

mysql> set password for 用户名@localhost = password('新密码');

4.

      ①关闭正在运行的MySQL服务。
      ②打开DOS窗口,转到mysql\bin目录。
      ③输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
      ④再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),输入mysql回车,如果成功,将出现MySQL提示符 >。
      ⑤连接权限数据库: use mysql;
      ⑥改密码:update user set password=password("新密码") where user="root";(别忘了最后加分号) 。
      ⑦刷新权限(必须步骤):flush privileges; 。
      ⑧退出mysql  quit;
mysqld --skip-grant-tables   
mysql> use mysql;   --连接权限数据库
mysql> update user set password=password("新密码") where user="root";   -- 改密码
mysql> flush privileges;    -- 刷新权限
mysql> quit;    -- 退出mysql

三、MySQL--常用命令

1、创建数据库(Create)

mysql> create database db_name;  -- 创建数据库
mysql> show databases;           -- 显示所有的数据库
mysql> drop database db_name;    -- 删除数据库
mysql> use db_name;              -- 选择数据库
mysql> create table tb_name (字段名 varchar(20), 字段名 char(1));   -- 创建数据表模板
mysql> show tables;              -- 显示数据表
mysql> desc tb_name;            -- 显示表结构
mysql> drop table tb_name;      -- 删除表

    例如:

/*创建学生表*/
create table Student(
     Sno char(10) primary key,
     Sname char(20) unique,
     Ssex char(2),
     Sage smallint,
     Sdept char(20)
);

2、插入数据(Insert)

     insert into 语句用于向表格中插入新的行:
/*第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:*/
mysql> insert into tb_name values (value1,value2,value3,...);
/*第二种形式需要指定列名及被插入的值:*/
mysql> insert into tb_name (column1,column2,column3,...) values (value1,value2,value3,...);

     例如:

/*插入数据*/

mysql> insert into Student values ( 20180001,张三,男,20,CS);

mysql> insert into Student values ( 20180002,李四,男,19,CS);

mysql> insert into Student (Sno,Sname,Ssex,Sage,Sdept) values ( 20180003,王五,男,18,MA);

mysql> insert into Student (Sno,Sname,Ssex,Sage,Sdept) values ( 20180004,赵六,男,20,IS);

3、查询数据(Select)

En plus d'afficher des informations sur les tables et les vues de la base de données, l'instruction select peut également afficher les informations système SQL Server, copier et créer des tables de données. Sa fonction de requête est puissante et c'est l'instruction âme du langage SQL et l'instruction la plus fréquemment utilisée en SQL.
Instruction de sélection de base :
Une instruction de sélection de base peut être décomposée en trois parties : quelles données rechercher (select), où les rechercher ( from), quelles sont les conditions de recherche (). Le format général de l'instruction 句 SELECT est le suivant :

Sélectionnez & lt; liste d'expressions de liste cible & gt;
[dans le nouveau nom de la table]
à partir du nom de la table ou du nom de la vue
[où & lt; & gt;]
[
[ regrouper par ]
                                                                                                     [ASC|DESC]]

(1) Interroge la colonne spécifiée

1. Toutes les colonnes de la table de requête

Lorsque le signe * est utilisé à la position de la colonne spécifiée dans l'instruction select, cela signifie toutes les colonnes de la table de requête.
Modèle : sélectionnez * parmi tb_name ;

2. Interrogez les colonnes spécifiées dans le tableau

Lors de l'interrogation de plusieurs colonnes, les noms de colonnes doivent être séparés par des virgules.
Modèle
 : leSelect tb_name. & lt; champ de caractère & gt; & lt; champ de caractère & gt; ... de tb_name ; 3. Spécifiez les titres de colonnes dans les résultats de la requête

En spécifiant les titres de colonnes (également appelés alias de colonnes), les résultats de sortie peuvent être plus faciles à comprendre.

Lors de la spécification d'un titre de colonne, vous pouvez utiliser la clause AS après le nom de la colonne ; vous pouvez également utiliser l'alias de colonne =

Le format de la clause AS est : nom de colonne ou expression de calcul [AS] en-tête de colonne

sélectionnez
Titre de colonne AS 1, & & lt; champ de caractère & gt;
AS titre de la colonne 2,
& lt; champ de caractère & gt;
AS titre de la colonne 3                                                                                                                                                                    Quand, non seulement vous pouvez utiliser directement la valeur d'origine de la colonne. En conséquence, la valeur obtenue après le calcul de la valeur de la colonne peut également être utilisée comme résultat de la requête, c'est-à-dire que la clause select peut interroger la valeur de l'expression, et l'expression peut être composée de noms de colonnes, de constantes et d'opérateurs arithmétiques.                                                                                                                                                                                                           Avec la colonne calculée du résultat de la requête affichant « aucun nom de colonne », vous devez généralement ajouter une colonne titre à la colonne calculée.中 Parmi eux : Les opérateurs qui peuvent être utilisés dans l'expression incluent : plus+, soustraction-, multiplier*, diviser/ et % restant

Modèle sélectionnez ,, titre de la colonne = * n de tb_name ;

(2) Sélectionnez les lignes : Sélectionnez certaines ou toutes les lignes du tableau comme résultat de la requête

Format : sélectionnez [toutes distinctes] [haut n [pourcentage]] & lt; liste d'expressions de la liste cible & gt; du nom de la table

1 , Pour la base de données de relations, chaque ligne de la table doit être différente (c'est-à-dire non. répéter). Toutefois, si vous sélectionnez uniquement certaines colonnes lors de l'interrogation d'une table, des lignes en double peuvent apparaître dans les résultats de la requête.语 Utilisez le mot-clé distinct dans l'instruction select pour éliminer les répétitions concentrées sur les résultats. Character field>,...] from tb_name;

                                                                                                                                                                                                                                 
                  Utilisez l'option supérieure pour limiter le nombre de lignes renvoyées dans le résultat de la requête, c'est-à-dire que le nombre d'enregistrements spécifié est renvoyé.
Où : n est un entier positif, indiquant que les n premières lignes de l'ensemble de résultats de la requête sont renvoyées ; si le mot-clé percent est inclus, cela signifie que les n % premières lignes de l'ensemble de résultats sont renvoyées.
                                                                                                                                                                                                                            Modèle  : sélectionnez les n premiers de tb_name ; /*Interrogez les n premières données*/ Modèle : ​​
sélectionnez les n premiers pour cent de tb_name
/*Interrogez le données du premier n% tb_name*/

足 (3) Lignes de requête qui remplissent les conditions : utilisez la clause Where pour implémenter la requête conditionnelle

Grâce à la clause Where, les classes doivent suivre la clause FROM.

                                                                                                                                                                                              Les opérateurs ou expressions suivants peuvent être utilisés dans :                                      <=,<,=,>,>=,!=,< ;>,!                                                                                                                                                                                                                                                              les opérateurs de correspondance floue aiment, pas comme S Le vide l'opérateur de valeur est nul, n'est pas nul
opérateur logique et, ou, pas
1. Utilisez l'opérateur comparatif :
modèle  :  :
select * from tb _nom
= n ;

定 2. plage spécifiée :

Il existe deux mots-clés pour la plage spécifiée : Entre ... et et non entre ... et ... et.


                                               ' ' ' ' ' ' ' ' ' ' ‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐ ‐ Quoi suit le mot-clé est la limite inférieure de la plage (c'est-à-dire la valeur faible), et après et les mots-clés sont la limite supérieure de la plage (c'est-à-dire la valeur élevée)

pour trouver des lignes avec une plage spécifiée (ou non) spécifiée dans (ou non).
3. Utilisez l'énumération :

Utilisez le mot-clé in pour spécifier un ensemble de valeurs. Toutes les valeurs possibles sont répertoriées dans l'ensemble lorsque la valeur de l'expression correspond à une valeur dans. l'ensemble, Lorsqu'un élément correspond, il renvoie vrai, sinon il renvoie faux.                                                                                                                                                                                                                                           .

4. Utilisez des caractères génériques pour les requêtes floues :


Vous pouvez utiliser la clause like pour effectuer des requêtes de correspondance floue sur des chaînes.句 Le format de la phrase Like : Sélectionnez * from tb_name où & lt; champ de caractères & gt; [pas] comme & lt; chaîne correspondante & gt;; La chaîne de correspondance contient généralement des caractères génériques % et _ (trait de soulignement). : Parmi eux : 代% : chaîne représentant n'importe quelle longueur (y compris 0)

5. Utilisez la requête de NULL

doit être déterminée par la valeur d'une expression Lorsqu'il s'agit d'un valeur null, utilisez le mot-clé is null. Lorsque not n'est pas utilisé, si la valeur de l'expression est nulle, true est renvoyé, sinon false est renvoyé lorsque not est utilisé, le résultat est exactement le contraire ;
                                                                                                                                                                                                    条 重 6. Requête multi-conditions : utiliser des opérateurs logiques

L'opérateur logique et (et : les deux conditions doivent être remplies) et ou (ou : l'une des conditions peut être remplie) peut être utilisé Rejoindre plusieurs requêtes conditions. et a une priorité plus élevée que ou, mais la priorité peut être modifiée si des parenthèses sont utilisées.

                                                                                                                                                                                             Modèles  :
sélectionner * à partir de tb_name oùe < ;Champ de caractère> = 'volumes' et (quatre) Trier les résultats de la requête

La clause order by peut être utilisée pour trier les résultats de la requête par ordre croissant (ASC) ou décroissant (DESC) en fonction de la valeur d'un ou plusieurs champs (ou de la valeur d'une expression). .

Format : order by {sort expression [ASC|DESC]}[,...n] ;

Où : l'expression de tri peut être soit un champ unique, soit une combinaison de champs et de fonctions, une expression composé de constantes, etc., ou d'un entier positif.
Modèle :
select * from tb_name order by
Fonctions d'agrégation
Lors de la récupération de tables, il est souvent nécessaire de calculer ou de compter les résultats. fonctions statistiques (également appelées fonctions d'ensemble ou fonctions d'agrégation) pour améliorer la fonction de récupération. Les fonctions statistiques sont utilisées pour calculer des données dans un tableau. Ces fonctions sont utilisées pour calculer un ensemble de données et renvoyer une valeur unique.数 Tableau des fonctions de statistiques communes nom de la fonction
fonction

Moyenne de recherche AVG

Compter pour enregistrer le nombre d'enregistrements, renvoyer un entier de type INT

MAX à la valeur maximale
min min Trouver la valeur minimale
                                                                                                                                                                     

1. SUM et AVG

Fonction : Trouvez la somme ou la moyenne de l'expression numérique spécifiée.
Modèle : sélectionnez avg() comme moyenne, somme() comme nombre total à partir de tb_name = 'chaîne de caractères';

2. Max et Min

Fonction : Recherchez la valeur maximale ou minimale de l'expression spécifiée.
Modèle :
sélectionnez max() comme valeur maximale, min() comme valeur minimale from tb_name;

        3. compte

Cette fonction a deux formats : count(*) et count([all]|[distinct] field name). Pour éviter les erreurs, count(*) est généralement utilisé pour interroger le nombre d'enregistrements à interroger. combien de valeurs un certain champ a, utilisez count(nom de champ distinct). C. (1) .count (*) :
Fonction : Le nombre total d'enregistrements statistiques.
Depuis le nombre d'enregistrements vides. E Modèle : leSelect count (& lt; champ de caractères & gt;) AS nombre total
from tb_name;
(6) Regroupement des résultats de la requête La table des résultats de la requête est regroupée par une certaine colonne ou plusieurs colonnes valeurs. Les valeurs de colonne avec des valeurs égales sont regroupées en un seul groupe et un résultat est calculé pour chaque groupe. Cette clause est souvent utilisée avec des fonctions statistiques pour effectuer des statistiques de groupe.
Le format est : champ groupe par groupe[,...n][ayant ]

G 使用1. Après avoir utilisé la clause group by

La liste SELECT ne peut inclure que : le champ de groupe et les fonctions statistiques spécifiés dans la clause group by. L'utilisation des clauses v a2.having
La clause HAVING doit être utilisée en conjonction avec la clause group by pour filtrer les résultats après le regroupement (les conditions de filtrage contiennent souvent des fonctions statistiques).
3. Les conditions qui ne contiennent pas de fonctions statistiques lors du regroupement de requêtes
utilisent généralement la clause WHERE ; les conditions qui contiennent des fonctions statistiques ne peuvent utiliser que la clause have.
Modèle : sélectionnez , comptez (*) comme en-tête de colonne
à partir de tb_name où ='chaîne' grouper par

4. Modifier les données (Mise à jour) L'instruction Update est utilisée pour modifier les données du tableau.
Format :

update tb_name set column name = nouvelle valeur où column name = une certaine valeur

Supprimer les données (Supprimer)

Supprimer une seule ligne
Format : supprimer de t b_name où le nom de la colonne = une certaine valeur ;
Tout supprimer                                                                                                                                         . Cela signifie que la structure, les attributs et les index de la table sont complets :
Format :
delete * from tb_name ou delete from tb_name
4. MySQL -- alter command alter add

La commande est utilisée pour ajouter des champs à la table. modifier ajouterFormat de commande : modifier la table

nom de la table ajouterchamp
type autre;
Par exemple, un champ passtest est ajouté à la table MyClass, de type int(4)
, avec une valeur par défaut de 0 :
mysql> alter table MyClass add passtest int(4) default '0';<h5 style="line-height:normal;font-family:Times;text-align:left;background-color:rgb(255,255,255);"><span class="s3" style="line-height:normal;font-family:'Songti SC';"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span class="s3" style="line-height:normal;"><span style="font-size:16px;color:#000000;"> 添加两个字段  </span></span></span></span></span></span></span></span></span></span></span></span></h5>
<pre class="brush:php;toolbar:false">mysql> alter table Person add age int,add address varchar(11);
 删除两个字段
mysql> alter table Person drop column age,drop column address;
 修改字段的注释
mysql> alter table `student` modify column `id` comment '学号';
 1) 加索引
      mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);

 mysql> alter table employee add index emp_name (name);
 2) 加主关键字的索引
      mysql> alter table 表名 add primary key (字段名);

mysql> alter table employee add primary key(id);
 3) 加唯一限制条件的索引
      mysql> alter table 表名 add unique 索引名 (字段名);

 mysql> alter table employee add unique emp_name2(cardnumber);
 4) 删除某个索引
      mysql> alter table 表名 drop index 索引名;

mysql>alter table employee drop index emp_name;
 5) 增加字段
mysql> ALTER TABLE table_name ADD field_name field_type;
 6) 修改原字段名称及类型
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
 7) 删除字段
MySQL ALTER TABLE table_name DROP field_name;

五、MySQL -- 应用

学生-课程数据库

 学生表:Student(Sno,Sname,Ssex,Sage,Sdept)
 课程表:Course(Cno,Cname,Cpno,Ccredit)
 学生选课表:SC(SnoCno,Grade)
 关系的主码加下划线表示。各个表中的数据示例如图所示:

Student表

学号

Sno

姓名

Sname

性别

Ssex

年龄

Sage

所在系

Sdept

20180001 张三 20 CS
20180002 李四 19 CS
20180003 王五 18 MA
20180004 赵六 20 IS
Course表

课程号

Cno

课程名

Cname

先修课

Cpno

学分

Ccredit

1 数据库 5 4
2 数学   2
3 信息系统 1 4
4 操作系统 6 3
5 数据结构 7 4
6 数据处理   2
7 PASCAL语言 6 4
SC表

学号

Sno

课程号

Cno

成绩

Grade

20180001

1 92
20180001 2 85
20180001 3 88
20180002 2 90
20180002 3 80

 建立一个“学生”表Student:

create table Student(
  Sno char(9) peimary key, /*列级完整性约束条件,Sno是主码*/
  Sname char(20) unique, /* Sname取唯一值*/
  Ssex char(2),
  Sage smallint,
  Sdept char(20)
);
 建立一个“课程”表Course:
create table Course(
  Sno char(4) primary key, /*列级完整性约束条件,Cname不能取空值*/
  Sname char(40) not null, /*Cpno的含义是先修课*/
  Cpno char(4)
  Ccredit smallint,
  foreign key (Cpnoo) references Course(Cno) /*表级完整性约束条件,Cpno是外码,被参照表是Course,被参照列是Cno*/
);
 建立学生选课表SC:
create table SC(
  Sno char(9),
  Cno char(4),
  Grade smallint,
  frimary key (Sno,Cno), /*主码由两个属性构成,必须作为表级完整性进行定义*/
  foreign key (Sno) references Student(Sno), /*表级完整性约束条件,Sno是外码,被参照表是Student*/
  foreign key (Cno) references Course(Cno)   /*表级完整性约束条件,Cno是外码,被参照表是Course */
);

推荐学习:mysql视频教程

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer