数据库常用字段设计扫盲

一、varchar

varchar(<b>N</b>)
<b>N</b>指的是字符的长度

长度 是当前字符集的<b>字符</b>长度,而不是字节长度!

varchar(5)能存储5个字符,不管是数字,字母,还是汉字.

id  content
1   12345
2   中国人民银
MySQL中char,varchar与text类型的选用:

知道固定长度的用char,比如MD5串固定是32位.
经常变化的字段用varchar.
超过255字符的只能用varchar或者text,不能用char.
能用varchar的地方不用text.

二、int

int(<b>N</b>)
<b>N</b>指的是字符的填充位数

以下是每个整数类型的存储和范围(来自mysql手册)
类型      字节      最小值                     最大值
                       (带符号的/无符号的)       (带符号的/无符号的)
TINYINT    1         -128                     127

                         0                       255

SMALLINT      2          -32768                 32767

                         0                         65535

MEDIUMINT    3       -8388608                 8388607

                         0                       16777215

INT        4         -2147483648              2147483647

                         0                       4294967295

BIGINT      8        -9223372036854775808    9223372036854775807

                        0                        18446744073709551615

mysql手册中这个长度/值用"M"来表示的.
细心的朋友应该有注意到过mysql手册上有这么一句话:
<b>M指示最大显示宽度。最大有效显示宽度是255。显示宽度与存储大小或类型包含的值的范围无关;</b>

怎么理解?

我设置成int(1), 也一样能存10,100,1000

如果number字段,int(5),<b>属性=UNSIGNED ZEROFILL</b>(无符号,用0来填充位数)
设置这个属性后我往表时插入数据,系统会自动把number字段M不够5位的在左侧用0来填充; 效果如下:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 什么是数据库? 数据库是存储数据的集合的单独的应用程序。每个数据库具有一个或多个不同的API,用于创建,访问,管理...
    chen_000阅读 9,483评论 0 19
  • MySQL数据库对象与应用 2.1-MySQL数据类型 库建立好之后基本不动,和我们接触最频繁的是表. 建表就是声...
    极客圈阅读 6,523评论 0 8
  • 一、什么是数据库:(数据库软件) 1).什么是"数据库": 从字面上理解就是一个"存储数据的仓库",它本身是一个软...
    七点的太阳丶夕阳阅读 3,704评论 0 2
  • 此时 夜已深了 听着一档节目 叫一个人听 想着远方的你 安好
    不想写还被别人占用阅读 1,468评论 0 0
  • 激情(伯乐)→精深练习1万小时(伯乐)→天才 教育 关键词: 芬兰现象: 早教光盘不会使孩子变聪明,反而会使他们变...
    画小像的一路阅读 1,769评论 0 0

友情链接更多精彩内容