文章目录
- 一、操作数据库
- 1. 创建
- 2. 删除
- 3. 使用
- 4. 查询
- 5.修改
- 二、数据库字段类型
- 1.数值
- 2.字符串
- 3.日期
- 4.NULL
- 三、数据库字段属性
- 1.Unsigned
- 2.zerofill
- 3.自增(auto_increment)
- 4.非空(not null)
- 5.默认(default)
一、操作数据库
1. 创建
create database `数据库名`;
-- 避免已存在同一命名的数据库导致执行语句时错误
create database if not exists `数据库名`;
/*
` 是 MySQL 的转义符,这个符号是对数据库名、表名、字段名的特殊处理。
避免和 mysql 的本身的关键字冲突。
*/
create database `数据库名` character set 字符集名(例:utf8)
2. 删除
drop database `数据库名`;
drop database if exists `数据库名`;
3. 使用
use `数据库名`;
show database(); -- 显示当前使用的数据库名称
4. 查询
show databases; -- 查询所有数据库名称
show create database `数据库名称`; -- 查询数据库的创建语句
5.修改
alter database `数据库名` character set 字符集名; -- 修改数据库字符集
二、数据库字段类型
1.数值
tinyint -- 1个字节
smallint -- 2个字节
mediumint -- 3个字节
int -- 4个字节(常用的int数据类型)
bigint -- 8个字节(相当于java中的long)
float -- 4个字节(单精度浮点数)
double -- 8个字节(双精度浮点数)
decimal -- 常用于存储金融数值时,字符串形式的浮点数
2.字符串
char -- 长度固定,例:char(M),不足M个字节,剩余用空格补充;最大存储255个字符
varchar /* 0~65532字节,长度可变,例:varchar(M),每个值只占本身大小的字节,
最后加上记录其长度的字节;
注意:MySQL5.0版本以上,指的是能存放M个字符 */
tinytext -- 微型文本,最大 2^8-1 个字节
text -- 最大 2^16-1 个字节
3.日期
date -- 日期格式:YYYY-MM-DD
time -- 时间格式:HH:mm:ss
datetime -- 时间格式:YYYY-MM-DD HH:mm:ss
timestamp -- 时间戳,1970年1月1日到现在时间的毫秒值
4.NULL
null -- 空值,注意:不要使用NULL进行运算
三、数据库字段属性
1.Unsigned
- 声明该列不能为负数
2.zerofill
- 0填充,位数不足时,使用0来填充,例如:int(4),插入数据11,则结果为0011
3.自增(auto_increment)
- 自增,通常为在上一条记录的基础上自动+1
- 常用于唯一的主键上,且必须是整数类型,通常与primary key连用
- 可以自定义主键自增的初始值和步长
- 只能给被定义为key(unique key,primary key)的字段使用
4.非空(not null)
- 如果设置非空,则不给该列赋值,就会报错
- 如果没有设置,默认为null
5.默认(default)
- 设置默认的值,如果没有插入数据,则使用默认值
- 例如,sex字段设置默认为男,未插入该列的值,则最终结果显示为男