MySQL操作语句(快速办公)

MySQL操作语句


目录

前言

一、DDL语句(数据库定义语言)

1.数据库的操作
2.数据库表的操作
3.数据库表的修改与删除(字段)
4.删除数据库表
5.复制数据库表结构

二、DML语句(数据库操作语言)

1.添加数据
2.修改数据
3.删除数据

三、DQL语句(数据库查询语言)

1.基本查询
2.条件查询
3.聚合函数
4.分组查询
5.排序查询
6.分页查询

四、DCL语句(数据库控制语言)

1.管理用户
2.权限控制

MySQL详细笔记请转至此处

前言

SQL 语句很多很记起来很麻烦,此篇文章对SQL语句进行了分类,以后写数据库的时,可以边写边参考此文章,再也不用担心忘记SQL语句了

mysql服务的启动与停止

//启动
net start mysql【版本号】
//停止
net stop mysql[版本号]

如何操作mysql

1.客户端自带的直接连接即可
2.在命令行输入
mysql [-h ip地址] [-P 端口号] -u 用户名 -p
密码
3.使用图形界面操作

一、DDL语句(Data Definition Language)

DDL语句:数据定义语言,用来定义数据库对象(数据库,表字段)

1.数据库的操作

Ⅰ.创建数据库SQL语句:
语句: CREATE DATABASE   [IF NOT EXISTS]   数据库名称   [[DEFAULT]CHARACTER set charset_name]  [[DEFAULT] COLLATE collation_name];

说名:database_name : 创建的数据库名。
IF NOT EXISTS : 在创建数据库前加上 一个判断,只有该数据库目前尚不存 在时才执行CREATE DATABASE操作。

(1) 如果指定CHARACTER SET charset_name和COLLATE collation_name,那么采用字符集charset_name和校对规则collation_name。

(2) 如果指定了CHARACTER SET charset_name而没有指定COLLATE collation_name,那么采用CHARACTER SET charset_name和COLLATE collation_name的默认校对规则。

(3) 如果CHARACTER SET charset_name和COLLATE collation_name都没有指定,那么采用服务器字符集和校对规则。


Ⅱ.查看数据库
显示所有数据库语句:
SHOW DATABASES;
显示数据库的创建语句:
SHOW CREATE DATABASE database_name;
查看当前数据库
SELECT DATABASE();
Ⅲ.选择数据库
USE database_name;
Ⅳ.删除数据库
DORP DATABASE dabatase_name;
Ⅴ.修改数据库
若想修改数据库的编码,可以使用ALTER DATABASE语句实现,具体语法格式如下。

ALTER DATABASE database_name[ DEFAULT] CHARACTER
SET character_name COLLATE collation_name;

这里database_name是要修改的数据库名;
character_name是修改的字符集的名称;
collation_name是修改的校对规则。
字符集的名称、校对规则与新建数椐库时的字符集和校对规则相同,这里就不再说明了。

2.数据表的操作

Ⅰ、查看当前数据库所有表:
SHOW TABLES;
Ⅱ.查看表结构:
DESC table_name ;
Ⅲ.查看当前表结构的创建语句:
SHOW CREATE TABLE table_name;
Ⅲ.数据库表的创建:

CREATE TABLE   [IF NOT EXISTS]   table_name(

字段1 字段1类型 [COMMET 字段1注释],
col_name2 data_type2 [COMMET 字段2注释],
·
·
·
col_name n data_type n)[COMMET 表注释];

SQL语句可以多行一起写,创建时前面的写完加逗号,最后一句不加逗号。写分号表示语句结束。


3.数据表的修改与删除

1)修改表名:
ALTER TABLE old_table_name RENAME new_table_name;
2)增加字段
ALTER TABLE 表名 ADD 字段名 类型(长度)[COMMENT 注释] [约束];

举例:在reader中添加一个字段reader_address;
ALTER TABLE student ADD reader_address end IARCHAR(100);

3)修改数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);
4)修改字段的名和字段类型:
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型(长度) [COMMENT 注释] [约束];
5)修改字段的顺序
ALTER TABLE 表名 MODIFY 字段名1 数据类型(长度) FIRST|AFTER 字段名2 >将字段名1 提前|后置 字段名2
6)删除表中的字段:
ALTER TABLE 表名 DROP 字段名;

4.删除数据库表

1)删除表
DROP TABLE [IF EXISTS] 表名;
2)删除制定表,并重新创建该表
>删除表中所有结构,生成一张空表

TRUNCATE TABLE 表名;


5.复制数据库表结构

复制表结构:
CREATE TABLE table_name1 LIKE db_name table_name2;

说明 : 如果是复制其他数据库的表结构,在table_name2前加上数据库的名称;
例 : 将数据库db_library中的reader表结构复制到 当前数据库,命名为表结构 t_readerr;
CREATE TABLE t_reader LIKE db_library.reader;

二、DML语句(Data Manipulation Language)

DML语句: 数据操作语言,用来对数据表中的数据进行增删改

1.添加数据

1)给指定字段添加数据
INSERT INTO 表名 (字段名1,字段名2,…) VALUES (值1,值2);
2)给全部字段添加数据

INSERT 表名 VALUES (值1,值2…);

3)批量段添加数据

INSERT 表名 (字段名1,字段名2,…) VALUES (值1,值2…), (值1,值2…),…;

INSERT INTO 表名 VALUES (值1,值2,…), (值1,值2,…), (值1,值2,…),

tip:

  • 插入数据时,指定的字段顺序需要与值的顺序是一一对应的。
  • 字符串和日期型数据应该包含在引号中。
  • 插入的数据大小,应该在字段的规定范围内。

2.修改数据

UPDATE 表名 SET 字段名1 = 值1,字段名2=值2,…[WHERE 条件];

tip:修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据

3.删除数据

DELETE FROM 表名 [WHARE 条件]

tip:

  • DELETE语句的条件可有可无,若无,则会删除整张表的所有数据。
  • DELETE语句不能删除某一个字段的值(可以使用update改为none)。

三、DQL语句(Data Query Language)

DQL语句:数据查询语言,用来查询数据库中的记录

SELECT

  字段列表

FROM

  表名列表

WHARE

  条件列表

GROUP BY

  分组字段列表

HAVING

  分组后条件列表

ORDER BY

  排序字段列表

LIMIT

  分页参数

1.基本查询

1)查询多个字段

SELETC 字段1,字段2,字段3… FORM 表名;
SELECT * FROM 表名;

2)设置别名

SELECT 字段 [[AS] 别名1],字段2[[AS] 别名2] … FROM 表名;

3)去除重复记录
SELECT DISTNCT 字段列表 FROM 表名

2.条件查询

1)语法
SELECT 字段列表 FROM 表名 WHARE 条件列表
2)条件

MySQL操作语句(快速办公)_第1张图片
MySQL操作语句(快速办公)_第2张图片

3.聚合函数

1)介绍

将一列数据作为一个整体,进行纵向计算。

2)常见聚合函数

MySQL操作语句(快速办公)_第3张图片

3)语法

SELECT 聚合函数(字段列表) FROM 表名;

4.分组查询

1) 语法

SELETC 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件];

2) where和havin的区别

执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。
判断条件不同:where不能对聚合函数进行判断,而having可以。

tip:
  • 执行顺序:where>聚合函数>having
  • 分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义.

5.排序查询

1)语法

SELECT 字段列表 FROM 表名 ORDER BY 字段1 排序方式1,字段2 排序方式2;

2)排序方式

ASC:升序(默认值)
DESC: 降序

  升序可省略

注意:如果是多字段排序,当第一个字段值相同时,才会根据第二个字段进行排序。

6.分页查询

1)语法

SELECT 字段列表 FROM LIMIT 起始索引,查询记录数;

注意
  • 起始索引从0开始,起始索引=(查询页码-1)*每页显示的记录数。
  • 分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT。(不同的数据库不同的方法)
  • 如果查询的是第一页,起始索引可以省略,直接简写为LIMIT10。

四、DCL语句(Data Control Language)

DCL语句:用来管理数据库用户、控制数据库的访问权限。

1.管理用户

1)查询用户

USE mysql;
SELCET*FROM user;

2)创建用户

CREAT USER '用户名‘@‘主机名’ IDENTIFIED WITH BY ‘密码’;

3)修改用户密码

ALTER USER '用户名‘@‘主机名’ IDENTIFIED mysql_nativate_password BY ‘密码’;

4)删除用户

DROP USER ‘用户名’@‘主机名’;

注意:

  • 主机名可以使用%通配(任意主机可连接)
  • 这类SQL开发人员操作的比较少,主要是DBA(Database Administrator 数据库管理员)使用。

MySQL操作语句(快速办公)_第4张图片

2.权限控制

MySQL操作语句(快速办公)_第5张图片
具体说明请查询官方文档

1)查询权限

SHOE GRANTS FOR ‘用户名’@‘主机名’;

2)授予权限

GRANT 权限列表 ON 数据库名.表名 TO ‘用户名’@‘主机名’;

3)撤销权限

REVOKE 权限列表 ON 数据库名.表名 FROM ‘用户名’@‘主机名’;

注意:

  • 多个权限之间,使用逗号分隔
  • 授权时,数据库名和表可以使用 * 进行通配代表所有。

你可能感兴趣的:(MySQL,新手教程,mysql,数据库,sql)