05 数据类型-列类型-创建表的列类型

数据类型是指在创建表的时候为表中字段指定数据类型,只有数据符合类型要求才能存储起来

使用数据类型的原则是:够用就行,尽量使用取值范围小的,而不用大的,这样可以更多的节省存储空间

数值类型

常用类型:

tinyint:小整数值
int:大整数值
double:双精度

image

浮点型float单精度:只能保证大概7为左右的精度:如果数值在7位以内,基本可以保证数值的精度,但是如果超过了7位,那么是不准确的
浮点型double双精度:可以保证15为左右的精度

日期类型

常用类型:

date:日期类型,格式是:YYYY-MM-DD
datettime:时间类型,格式是:YYYY-MM-DD HH:ii:SS
timestamp:时间戳类型

image

-- 设置默认时间
create table news(
  pub_time TIMESTAMP default CURRENT_TIMESTAMP COMMENT '发布时间'
);

字符串类型

常用类型:

char:定长字符串,指定长度后,系统一定会分配指定长度的空间用于存储数据

varchar:变长字符串,指定长度后,系统会根据实际存储的数据来计算长度,分配合适的长度

text:普通的长文本数据--使用较多,如果数据超过255个字符,一定选择text类型存储数据

enum:枚举类型,enum(数值1,数值2,数值3...)

set集合:可以将多个数据选项同时保存的数据集合,类似 enum,但是enum就像单选,set集合就像多选
set集合的本质是将指定的项按照对应的二进制位来进行控制,1表示该选项被选中 0表示该选项没有选中
存储语法:set('值1','值2','值3'...)

-- set集合
create table my_set(
hobby set('足球','篮球','羽毛球','跑步','跳高','读书','看报','睡觉','打游戏','逛街','吃饭') COMMENT '兴趣爱好'

sex enum('男','女','保密') default '保密'
);

// 插入数据,值只能是 set集合中的值,多个值使用 , 隔开即可
INSERT into my_set VALUES('篮球,足球');

tinytext:短文本字符串
blob:存储二进制文件(图片、文件等),但是一般也不会使用blob来存储文件本身,一般是使用一个链接来指向对应的文件本身

image

posted @ 2024-04-03 16:38  songxia777  阅读(5)  评论(0编辑  收藏  举报