MYSQL基础命令总结

MySql常用命令总结

查询:show tables;

查询表结构:desc 表名;

修改表名:alter table 表名 rename to 新的表名;

修改表的字符集:alter table 表名 character set 字符集名称;

添加一列:alter table 表名 add 列名 数据类型;

修改列名称 类型
alter table 表名 change 列名 新列名 新数据类型;
alter table 表名 modify 列名 新数据类型;

删除列:alter table 表名 drop 列名;

删除:drop table 表名;
	  drop table if exists 表名;
	  

DML增删改表中数据

添加数据:insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);

删除数据:delete from 表名[where 条件]

修改数据:update 表名 set 列名1=值1,列名2=值2,...[where 条件]

DQL查询表中的记录

select * from 表名;
语法:
select
	字段列表
from
	表名列表
where
	条件列表
group by
	分组字段
having
	分组之后的条件
order by
	排序
limit 
	分页限定




去除重复:
	distinct
起别名:as
排序查询:
	order by 排序字段1 排序方式1,排序字段2 排序方式2...


聚合函数:将一列数据作为一个整体,进行纵向的计算
	1,count:计算个数
	2.max
	3.min
	4.sum
	5.avg
分组查询
	group by 分组字段;
分页查询
	limit 开始的索引,每页查询的条数;

唯一约束

唯一约束:unique, 值不能重复
1.创建表时,添加唯一约束
	create table stu (
		id int,
		phone_number varchar(20) unique
);
2.删除唯一约束
alter table stu drop index phone_number;
3.创建表后,添加唯一约束
alter table stu modify phone_number varchar(20) unique;

主键约束

1.在创建表时,添加主键约束,并且完成主键自增长
create table stu(
	id int primary key auto_increment,
	name varchar(20)
);
2.删除自动增长
alter table stu modify id id int;
3.添加自动增长
alter table stu modify id int auto_increment;

外键约束

1.创建表时,添加外键
	create table 表名(
		...
		外键列
		constraint 外键名称 foreign key(外键列名称) refrences 主表名称(主表列名称)
);
2.删除外键
alter table 表名 drop foreign key 外键名称;
3.创建表之后,添加外键
alter table 表名 add constraint 外键名称 foreign key(外键字段名称) references 主表名称(主表列名称);

子查询不同情况

1.子查询的结果是单行单列的:
	*子查询可以做为条件,使用运算符去判断。运算符:> >= < <= =
	*查询员工工资小于平均工资的人
	select  * from emp where emp.salary < (select avg(salary) from emp);

2.子查询的结果是多行单列的:
	*子查询可以作为条件,使用运算符in来判断
	--查询'财务部'和‘市场部’所有员工的信息
	select id from emp dept where name='财务部' or name = '市场部';
	select * from emp where dept_id = 3 or dept_id = 2;
	--子查询
	select * from emp where dept_id in(select id from emp dept where name='财务部' or name = '市场部');
3.子查询的结果是多行多列的:
*子查询可以作为一章虚拟表参与查询
--查询员工入职日期是2011-11-11之后的员工信息和部门信息
--子查询
select * from dept t1,(select * from emp where emp.'join_date' > '2011-11-11') t2
where t1.id = t2.dept_id;
--普通内连接
select * from emp t1,dept t2 where t1.'dept_id' = t2.'id' and t1.'join_date' > '2011-11-11'

mysql数据库中事务默认自动提交

事务提交的两种方式:
	自动提交:
		mysql就是自动提交的;
		一条DML(增删改)语句会自动提交一次事务。
	手动提交:
		Oracle数据库默认手动提交事务
		需要先开启事务,再提交。
	修改事务的默认提交方式:
		查看事务的提交方式:select @@autocommit;--1 代表自动提交 0代表手动提交
		修改默认提交方式:set @@autocommit = 0;

DCL管理用户

创建用户:create user '用户名'@'主机名' indentified by '密码';
create user 'xiaoming'@'localhost' indentified by '123';

删除用户:drop uesr '用户名'@'主机名';
drop user 'xiaoming'@'localhost'

修改用户密码:
	update user set password = password('新密码') where user = '用户名';
	set password for '用户名'@'主机名' = password('新密码');

查询用户:
1.user mysql;
select * from user;
mysql中忘记root用户的密码?
1.打开cmd(管理员权限) net stop mysql 停止myssql服务
2.使用无验证方式启动mysql:mysqld --skip-grant-tables
3.打开新的cmd窗口,直接mysql命令,敲回车。就可以登录成功。
4.use mysql;
5.update user set password = password('新密码') where user = 'root';
6.关闭两个窗口
7.打开任务管理器,手动结束mysqld.exe的进程
8.启动mysql服务cmd中输入 net start mysql
9.使用新密码登录
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值