命令行的使用
1.找到phpstudy安装的mysqlbin目录
2.phpstudy设置中文件位置mysql
3.进入mysql的bin目录下,按下shift键+右键,在此处打开命令行。
mysql
#进入mysql
mysql -u root -p
查看所有的数据库
show databases;
创建数据库
create database 数据库名;
添加后在可视化中刷新出现class数据库!
修改数据库的编码格式
alter database 数据库名 default character set 'utf8mb4';
在可视化中,右建数据点击数据库属性可查看设置的utf8mb4格式
选中数据库
use 数据库名
删除数据库
DROP database 数据库名
创建表
create table 表名(
字段名 类型(int,varchar,date)[not null][comment '注释信息'],
)
在表上右键刷新
查看所有的表
show tables;
查看表的字段信息
desc 表名;
修改表名
alter table news(表名) rename new(新表名);
***
删除表
drop table 表名;
记录的操作
增(insert
)
单条增加
insert into 表名 values(值1,值2);
insert into 表名 values(值1,值2);
多条增加
insert into 表名(字段1,字段2...) values (值1,值2);
insert into 表名 values(值1,值2),(值1,值2);
区别:
第一种写法是需要给哪些字段赋值,就写哪些字段
第二种写法默认是给所有字段赋值。
删(delete
)
// 删除表中所有记录
delete from 表名;
// 删除id为5的记录
delete from 表名 where 条件判断;
// 删除字段中包含某个字符的记录
delete from 表名 where 字段名 like '%字符%'
// 删除id为4的记录 delete from 表名 where id = 5;
// 删除字段中包含某个字符的记录
delete from 表名 where 字段名 like ‘%字符%’
改(update
)
update 表名 set 字段 = '新值' where 条件判断;
// 修改多条字段的值
update classinfo set 字段 = '新值',字段 = '新值' where id = 3;
// 修改id为5的new表中 class字段的值为六年级;
update new set class=‘六年级’ where id = 5;
// 修改多条字段的值
// 修改id为5的new表中 class字段的值为一本, name字段的值为王富贵
update new set name=‘王富贵’,class=‘一本’ where id = 5;
查(select
)
单表查询
// 查询所有字段,所有记录 * 表示所有字段,没有条件查询,表示查询所有记录
select * from 表名;
// 查询某些字段
select 字段1,字段2 from 表名;
// 查询所有字段
// 查询某些字段
条件查询
where
语句
// 等于查询
select*from new(表名) where id=1;
// 大于小于查询
select*from new where id > 2;
// 模糊查询(like
)
select*from new where name like '%王%';
and 与
左右两边的条件都符合的记录才会被匹配。
// 左右两边的条件都符合的记录才会被匹配。
select * from new where name like '%王%' and class like '%本%';
or
或
左右两边的条件只要符合一个,就会被匹配。
// 左右两边的条件只要符合一个,就会被匹配。
select * from classinfo where className like '%入门%' or teacher like '%贵%'
in
in前面的字段的值,只要和小括号中的任意一个相等,就会匹配。
// where子句中可以规定多个值,记录中的字段的值只要在多个值中就会匹配。
select * from classinfo where id in(1,2,3);
高级查询
// 查询记录的数量
select count(*) from 表名;
// 查询符合条件的记录的数量
select count(*) from 表名 where 条件判断;
// 查询符合条件的记录的和
select sum(字段) from 表名 where 条件判断;
// 最大值
select max(id) from new where id>2;
// 最小值
select min(id) from new where id>2;
// 分页 第一个参数表示:从哪开始查询,是一个下标。从0开始,第二个参数是查询多少条。
select * from new(表名) limit 0,2;
多表查询
// 多表查询
select * from 表1 as 别名1,表2 as 别名2 where 关联条件
select * from student s,classinfo c where s.id = 1 and s.classId = c.id;
// 左连接
select * from student s left join classinfo c on s.classId = c.id;
// 右连接
select * from student s right join classinfo c on s.classId = c.id;