这是我参与「第五届青训营 」伴学笔记创作活动的第 八 天
由于大项目中需要用到数据库,所以学习了一下数据库的知识
操作数据库
2.1、操作数据库
1、创建数据库
CREATE DATABASE [IF NOT EXISTS] 数据库名;
2、删除数据库
DROP DATABASE [if EXISTS] 数据库名;
3、使用数据库
--如果表名或者字段名是特殊字符,则需要带`` use 数据库名;
4、查看数据库
SHOW DATABASES;
2.2、数据库的列类型
数值
tinyint |十分小的数据 | 1个字节
smallint | 较小的数据 | 2个字节
mediumint | 中等大小的数据 | 3个字节
int | 标准的整数 | 4个字节
bigint | 较大的数据 | 8个字节
float | 浮点数 | 4个字节
double | 浮点数 | 8个字节
decimal | 字符串形式的浮点数,一般用于金融计算
字符串
char | 字符串固定大小 | 0~255
varchar | 0~65535
mediumint | 微型文本 | 2^8-1
text | 文本串 | 2^16-1
时间日期
| 数据类型 | 描述 | 格式 |
|---|---|---|
| date | 日期格式 | YYYY-MM-DD |
| time | 时间格式 | HH:mm:ss |
| datetime | 最常用的时间格式 | YYYY-MM-DD HH:mm:ss |
| timestamp | 时间戳,1970.1.1到现在的毫秒数 | |
| year | 年份表示 |
null
- 没有值,未知
- 不要使用NULL值进行计算
2.3、数据库的字段属性
UnSigned
无符号的 声明了该列不能为负数
ZEROFILL
0填充的 不足位数的用0来填充 , 如int(3),5则为005
Auto_InCrement
通常理解为自增,自动在上一条记录的基础上默认+1
通常用来设计唯一的主键,必须是整数类型
可定义起始值和步长
当前表设置步长(AUTO_INCREMENT=100) : 只影响当前表 SET @@auto_increment_increment=5 ; 影响所有使用自增的表(全局)
NULL 和 NOT NULL
默认为NULL , 即没有插入该列的数值 如果设置为NOT NULL , 则该列必须有值
DEFAULT
默认的 用于设置默认值 例如,性别字段,默认为"男" , 否则为 “女” ; 若无指定该列的值 , 则默认值为"男"的值