库的操作
创建数据库
create database [if not exists] db_name [create_specification],[create_specification]...
[default] character set charset_name
[default] collate collation_name
说明:
- 红色的表示关键字
- []是可选项,我们后面基本都不写
- character set:指定数据库存储采用的字符集
- collate :指定数据库字符集的校验规则:所谓的校对规则,指的是取的时候我们如何识别一个二进制序列
示例
我们设定它的存储是按照utf8设置的
create database test charset=utf8;
我们设置它是按照utf8进行存储和校验的
create database db2 charset=utf8 collate utf8_general_ci;
查看数据使用的存储于校验
show variables like 'character_set_database';//查看存储
show variables like 'collation_database';//查看校验
查看数据库支持的字符集
show charset;
查看数据库支持的校验规则
show collation;
校验规则测试
在utf8_test里面的操作
utf8不区分大小写,select后面是筛选条件
在utf8_bin里面
不同的校验规则会给我们不同的搜索结果
删除数据库
本质上就是在数据库中把对应的目录给删除掉了
drop database db_name;
删除之后
- 数据库内部看不到对应的数据库
- 对应的数据库文件夹被删除,级联被删除,里面的数据表全部被删除
所以不要随意的删除数据库
数据库也可以直接用linux命令进行删除
查看数据库
show databases;
查看创建数据库的详情
show create database utf8_bin_test;
查看访问数据库的人的信息
可以查看几个人访问,在使用哪个数据库
修改数据库
alter database db_name [alter_spacification [,alter_spacification]…]
- 对数据库的修改主要是修改数据库的字符集,校验规则
例如:将数据库的字符集改成gdk
数据库最好不要修改,一改影响太大了
表的操作
创建表
语法;
create table table_name(
field1 datatype comment 'xxx',
field2 datatype,
field3 datatype
)
说明
- field表示列名
- datatype表示列的类型
- character set字符集,如果没有指定字符集,就以所在的数据库的字符集为准
- collate校验规则,如果没有指定校验规则,则以所在的数据库的校验规则为准
- comment就是做一个filed的注释
样例
查看表结构
修改表
创建好了之后不要轻易修改表结构,如字段名称,字段大小,字段类型,表的字符集类型,表的引擎等等,我们还有需求,添加字段,删除字段,这个时候,我们就需要取修改表
add,modify drop(增加,修改,删除)
示例1:
增加一个字段add,新加的结构为null,默认新增加的字段会在最后一列
可以设置它在某个字段的后面,但是我们不建议这样操作
删除一列 drop
修改一列: modify
修改表名
alter table users rename to emplyee
也建议轻易不要去修改
修改表中的列名
删除表
drop table table_name;
插入数据
insert into stu (id, name, password, birthday) values(1,'a','12','2022-01-02'),(2,'s','123','1999-03-04');