Mysql 基础命令

常用的基础命令

use mysql
-- 更改密码
update user set password = password('密码') where user = 'root'

-- 创建表
create table table_name (key1 int primary key,)

-- 查看表结构
desc table

-- 创建表语句
show create table table_name


-- 修改表名称
alter table table_name rename new_table_name;

-- 修改字段名
alter table  table_name change ke1 oldData newkey newData

-- 修改数据类型
alter table table_name modify key newData

-- 添加在哪个字段之后
alter table table_name add newKey newData after oldKey

-- 删除字段
alter table table_name drop key

-- 修改字段的排列位置
alter table table_name modify  key Data after oldKey

-- 添加值
insert into table_name values (values1, values2...)

-- 查询语句
select * from table_name

-- 更新语句
update table_name set key=values where ...

-- 删除某一条语句
delete from table_name where ...

-- 删除库、表
drop database|table databaseName|table_name

-- 删除表中内容 , 不删除表结构
truncate table_name / delete from table_name

-- 带in关键字查询
select * from table_name where  key  in (values1, values2...)
select * from table_name where  key not in (values1, values2...)

-- between and 在之间
select * from table_name where key between 3 and 5;

-- not between and 不在某个区间之内
select * from table_name where key not between values1 and values2;

-- 判断字段是否为空 is null
select * from table_name where key is null;

-- 判断字段名是否不为空  is not null
select * from table_name where key is not null;

-- 去重 distinct
select distinct key from table_name

-- 模糊查询 like % -> 匹配任意多个字符  _ -> 匹配任意一个字符
-- 查询以欧开头的员工信息
select key  from table_name  where key like '匹配字符串';
select * from table_name where name like '欧%';

-- 带and、or的关键字查询
-- and -> 多个条件同时满足  or -> 多个条件满足一个即可

select * from table_name where 表达式1 and|or 表达式2;

-- 聚合函数
count(*|key)  -- 统计函数
sum(key)  -- 求和函数
avg(key)  -- 平均值函数
max(key)  -- 最大值
min(key)  -- 最小值
select 聚合函数[, key1, key2 ...] from table_name

-- 排序 order by  asc -> 升序  desc -> 降序
select key from table_name order by key asc|desc

-- 分组 group by
select key from table_name group by key

-- 查询限制 limit n, m  n->从第n+1行开始查询, m-> 查询的行数
-- 从 第二行开始查, 显示3行
select  * from table_name limit 1, 3;


-- 表字段取别名 as
select key as key1 from table_name as tn;

-- 单表查询
select key from table_name where 条件表达式 group by key having 聚合函数 order by key desc|asc limit n, m;


-- 关键字的优先级 (从高到低)
from -> where -> group by -> select -> distinct -> order by -> limit

-- 主键约束
primary key -- 主键约束
foreign key -- 外键
not null -- 非空
unique -- 唯一的
default -- 默认

-- 删除主键
alter tanle table_name drop primary key;

-- 修改主键约束
alter table table_name modify key data primary key

-- 删除唯一约束
alter table table_name drop index key;

-- 添加外键
alter table table_name add constraint FK_NAME foreign key (key) references 外表名(外表名的主键字段)

-- 内连接
select key from t1 join t2 on t1.key = t2.key;

-- 隐形内连接
select * from t1, t2 where t1.key = t2.key

-- 外连接 (左、右 连接)
select * from t1 left|right t2 where t1.key=t2.key

-- 数据库的被备份 与 还原 --> cmd 终端中使用
-- 数据库的备份 mysqldump 备份所有
mysqldump -uroot -pXXXX --all-databases > path(保存的文件路径)

-- 备份单个数据库
mysqldump -uroot -pxxxxx dbName > path

-- 数据库的还原
mysql -uroot -pxxxxx [dbname] < backup.sql(路径)

-- 指定数据库还原
mysql -uroot -p test < test.sql

-- 还原所有数据库
mysql -uroot -pxxxx < all.sql

-- mysql 用户
-- 1.使用grant all 创建用户, 常用
grant all privileges on database.table to 'username@hostname' identified by password

-- 2. 使用create user 创建用户
create  user ’username@hostname‘ identified by password

-- 删除普通用户
drop user 'username@hostname'

-- 使用delete语句删除用户
delete  from mysql.user where host='hostname' and user='username'

-- 权限管理
-- 1. 查看权限
show grants for 'username@hostname'

-- 2.授予权限
grant 权限列表 on dbname[.table_name] to 'username@hostname';

-- 撤销权限
revoke 权限列表 on dbname[.table_name] from 'username@hostname'

-- 授权别人远程登陆mysql
grant all privileges on *.* 'root@%' identified by 'root_password'

--刷新权限
flush privileges;

-- 事务 -> 四大特性: 原子性 唯一性 隔离性 持久性
-- 开启事务
start transaction

-- 设置为手动提交
set @@autocommit = 0

-- 提交事务
commit

-- 事务回滚
rollback
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值