mysql数据库设计字符类型及长度
2024-09-07 06:01:39
1.数字类型
小数的我就不聊了,因为有小数点的一般都是用字符串保存。关于整数,有几种可以选TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT,分别占1、2、4、8字节。如果无符号,则其最大为255、65535、16777215、4294967295和18446744073709551615。一般年龄呀身高呀用tinyint就足够了,应该合理使用,保证字节不会被浪费。
然后我说一下长度,就是int(多少),其实mysql保存int的时候一般默认为11,这个我们设不设置都没什么关系,因为这只是显示的长度,
如
int(10)显示结果为0000000010
int(3)显示结果为010
字节都是占4个字节,所以在设计时可以直接int就行不用设置长度。
2.varchar和char的区别
首先说一下这2个的长度,varchar占的字节就是其用的长度+1,char占的字节就是其长度,因为varchar的长度是可变的,两者的最大长度是255(utf-8中文字符占3个字节)。
char占的字节是固定不变的,设定多少长度就是多少字节,varchar是根据其使用的长度+1,之所以还+1是为了保存其使用了的长度,一般在使用到固定长度的字段时,如手机号
码,电话号码一般都用char,当字段不固定是可以用varchar。
3.时间日期
mysql有5种表示时间值的日期和时间类型,分别为YEAR,DATE,TIME,TIMESTAMP,DATETIME。所占字节分别为1、3、3、4、8。一般我是使用datetime,直接date("Y-m-d H:i:s")进行保存,时间戳的话就用int保存就行。
最新文章
- Html之 IFrame使用,注意几点
- array_intersect() php筛选两个数组共有的元素
- 浅谈实现placeholder效果的几种方案
- QT中使用 slot 传递 opencv 中得Mat对象以及 使用多线程集成开源代码。
- 基于微软EnterpriseLib的框架(一)
- 使用Bugfree不应有的坏习惯
- 远程仓库版本回退方法 good
- D3D 练习小框架
- 轻松学会多线程(四)——synchronized同步keyword知多少
- Hibernate3 第二天
- 线性表的顺序存储结构的实现及其应用(C/C++实现)
- 结对编程总结 -- 赵雄君 &; 冯小纯
- 使用Crowd集成Confluence与JIRA
- [MySQL]增加约束键
- xpath与nodejs解析xml
- 【紫书】uva489 Hangman Judge 做了很久Orz
- 如何比sketch和axure更方便地给原型做交互?
- 微软Power BI 每月功能更新系列——8月Power BI 新功能学习
- Ruby 面向对象知识详解
- V4L2驱动内核文档翻译(一)