mysql 常见指令

一.控制台连接数据库

mysql -u root -p root

二.DDL(Data Definition Language)数据定义语言

1.创建数据库

create database 库名;
create database if not exists 库名;
create database 库名 character set 字符集;

​ 2.显示所有数据库

show database;

3.显示创建数据库的定义信息

show create database 库名;

​ 4.修改数据库的定义格式

alter database 库名 default character set 字符集;

​ 5.删除数据库

drop database 库名;

​ 6.查看正在使用的数据库

select database();

​ 7.使用/切换数据库

use 库名;

​ 8.创建表格式

create table 表名(字段名1 字段类型1,....);

​ 9.快速创建一个和表结构相同的表

create table 旧表名 like 新表名;

10.查看使用的数据库中所有的表

show tables;

​ 11.查看表结构

desc 表名;

​ 12.查看创建表的SQL语句

show create table 表名;

​ 13.删除表

drop table 表名;
drop table if exists 表名;

14.修改表名

rename table 表名 to 新表名;

15.添加表列

alter table 表名 add 列名1 类型1,add 列名2 类型2;

​ 16.修改列类型

alter table 表名 modify 列名 新类型;

​ 17.修改列名

alter table 表名 change 旧列名 新列名 类型;

​ 18.删除列

alter table 表名 drop 列名;

三.DML(Data Manipulation Language)数据操作语言

​ 1.插入记录

insert into 表名(列名1,....) values(值1,.....);
-- 插入全部的列的值
insert into 表名(值1,....,值n);  

​ 2.更新表记录

-- 不带条件(慎用)
update 表名 set 列名1 = 新值1, 列名2 = 新值2,...; 
-- 带条件
update 表名 set 列名1 = 新值1, 列名2 = 新值2,... where 列名1 = 值1 and 列名n = 值n and ... ; 

​ 3.删除表记录

-- 不带条件(慎用)
delete from 表名;
-- 带条件
delete from 表名 where 列名1 = 值1 and 列名n = 值 n ... ;
-- 删除表的所有记录
truncate table 表名;

三.DQL(Data Query Language)数据查询语言

​ 1.查询表中的所有数据

select * from 表名;

​ 2.查询指定列添加别名

-- as 可去掉
select 别别名.列名1 as 列别名1,... from 表名 as 表别名;

​ 3.消除重复值

select distinct * from 表名;

​ 4.查询结果某列数据运算

-- 某列值和固定值运算
select 列名1 + 固定值 as 列别名1,.... from 表名;
-- 列值和列值运算
select 列名1 + 列名2 as 列别名1,... from 表名;

​ 5.查询结果排序

-- ASC:升序 DESC:降序
select * from 表名 order by 列名1 desc;
-- 组合排序,先按照第一个排序,第一个相同,再按照第二个排序
select * from 表名 order by 列名1 desc,列名2 asc;

​ 6.聚合函数

-- Count(列名):统计指定的列记录数,记录为NULL的不统计
-- Sum(列名):统计指定列的数值和
-- MAX(列名):计算指定列的最大值
-- MIN(列名):计算指定列的最小值
-- AVG(列名):计算指定列的平均值
select count(列名1) as 列别名 from 表名;

​ 7.分组查询

-- where 是在分组前对数据进行过滤
-- where 后面不可以使用聚合函数
-- having 是在分组之后进行过滤,只能在分组后面使用
-- having 后面可以使用聚合函数
select * from 表名 where 列名 = 值 group by 分组字段 having 列名 = 值;

​ 8.限制查询的条数

-- 跳过多少条,显示几条
-- 从offect + 1行开始,总共显示length 行
select * from 表名 limit offset,length;

四.DCL(Data Control Language) 数据控制语言

1.查看用户

-- 查询用户
select * from user;

2.创建用户

-- 登录地址 'host'标识本地
-- '192.168,%' 通配符,标识任意的
create user '用户名'@'允许其登录的地址' identified by '密码';

​ 3.修改密码

-- 修改自己的密码
set password = password('新密码');
-- 修改他人的密码(必须有权限)
set password for '用户名'@'允许其登录的地址' = password('新密码');

​ 4.删除用户

drop user '用户名'@'允许其登录的地址';

5.查看用户权限

--  查看自己
show grants;
-- 查看他人
show grants for '用户名'@'允许其登录的地址';

​ 6.增加用户权限

-- 权限名 select,updata,delete 等等,ALL/all privileges 代码所有权限
-- *.* 代表数据库中的所有权限
-- 库名.* 代表数据库中的所有对象
-- identified by '密码' 用于给一个用户再此时修改密码,不写就修改密码
-- 不存在该用户就创建改用户,密码必须写

grant 权限名1,权限名2,... on 数据库名.对象 to '用户名'@'允许其登录的地址' identfied by '密码'; 

​ 7.删除权限

-- 权限名,数据库名,对象名最用同上
revoke 权限名1,权限名2,... on 数据库名.对象名 from '用户名'@'允许其登录的地址';
发布了22 篇原创文章 · 获赞 5 · 访问量 1063

猜你喜欢

转载自blog.csdn.net/lighter613/article/details/102931815