mysql-数据库表的设计

mysql的数据类型

String:
char:长度固定,固定空间大小,可以有默认值
varchar:长度不固定,存储效率没有char那么高,可以有默认值,存储的时候还有会单独的空间存储制定长度的大小(1-8000)
text:不能有默认值,一般指量比较大的,(凡是遇到text类型的一定要与主表分离出来)

char和varchar的区别:
1)char长度固定,适用于存储固定的值,如MD5嘛,char比varchar的存储效率更高
2)varchar长度不固定,存储效率没有char高,再存储后还会开辟一个单独的存储空间

报错;ERRData too long for column 创建的时候超出长度
int类型:
bigint:8个字节
int:4个字节
smallint:2个字节
tinyint:1个字节

float:4个字节
double:8个字节
decimal(m,d):m加2个字节(一般用于精度较高的项目,不容易丢失精度)

报错:ERR Out of rang value

在用户量特别巨大的时候,可以设置数据类型 unsigned取反,这样就不会有负数而且范围也会扩大

时间类型:
时间类型没什么好说的,有些公司也用String类型的在使用,所以这里之说几个简单的额

	1)date:0000-00-00
	2)time:00:00:00
	3)datetime:0000-00-00 00:00:00
	4)timestamo:0000-00-00 00:00:00

不推荐存在数据库中的数据类型

二进制类型:比如多媒体的图片,音频,视频这些
超大文本类型text,longtext

推荐存的地址是信息存在某一个文件中

不推荐数据默认为null:对于数据库来说,null会有一个特殊的字符来替代nulll,特别是使用索引的时候,也会作为一个头标记存在数据库,还会影响sql查询,影响误差,如果硬要使用null,建议自己使用一个特殊的字符来替代

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值