本文主要介绍MySQL的字段。

首先,字段类型分为以下几大类:数值型、日期时间型、字符串型、复合类型

先插入一个换算:1字节(byte)(B)=8bit(位)(b)   1M=1024B  1G=1024M  1T=1024G

数值型:

整形:

注意事项:

以INT为例,int(11) 后面的这个数字近表示最大显示长度,并不是指最大存储数值。其他类似


浮点型:

注意事项:

1、双进度占用存储资源是单精度的一倍。一般对精度要求高才用double。否则为了节约资源。我们都用float来代替小数。

2、金钱相关不适用以上两种,使用 decimal 。这个字段长度在现在市面上运行版本(5.+) 值,

如DECIMAL(5,2) :- 9 9 9 . 9 9,9999.99  占用 7个字节。

所占字节长度:DECIMAL(M, D) 为  M+2个字节


字符型:

注意事项:

1、char(5),varchar(5) 都能存储5个字符,单varchar要比char多占用一个字节,多出来一位存储字符串长度

2、char会根据定义长度分配空间,并剔除末尾空格

3、更新操作,字符串变长,varchar空间占用会变多,MyISAM将行拆开不同片段处理,而InnoDB分裂页使行可以存在业内,容易产生碎片,而char定长,不容易产生碎片

4、字符串长短差异较大时使用varchar 如果长度差不多或者相同char

5、varchar能存储255字符,超长的字符串需使用text;

6、查询速度  char>varchar>text

7、char(10),varchar(10)等括号内的数字在MySQL5.0.3后表示字符数,而不是字节数

8、varchar、text在MySQL5.0.3以后占用内存空间最大都是65535字节,

9、varchar、char 可以设置默认值,text没有默认值


时间日期格式

1、timestamp超出范围的值无法设置。

2、实际工作中我基本上不用以上字段,基本上会使用时间戳,存储int字段中。整体下来int性能相对较好一些(实际与存储引擎等均有关系,具体可创建表录入百万数据设置不同字段类型查询比较,我测试int整体下来相对好一点,仅个人意见)。


表设计注意事项:

1、表名、字段名尽量简明释义,注意添加注释

2、尽可能的设置自增主键

3、实现具体逻辑是尽量不要使用存储过程

4、字段类型为枚举或者布尔值是尽量使用tinyint

5、尽量将索引字段值设置为非空,null 会导致索引失效

6、能用到整形尽量用整形,能用短字符尽量用短字符,能用char尽量用char

7、text尽量不要使用

8、IP信息需要存储时尽量转成整形存int

其他信息后续如果想起来再继续补充

MySQL字段类型及使用相关推荐

  1. php数据库字段类型,mysql 字段类型说明

    mysql 字段类型说明 更新时间:2007年04月27日 00:00:00   作者: MySQL支持大量的列类型,它可以被分为3类:数字类型.日期和时间类型以及字符串(字符)类型.本节首先给出可用 ...

  2. 原 hibernate与mysql字段类型对应关系

    原 hibernate与mysql字段类型对应关系 发表于8个月前(2015-04-17 08:56)   阅读(1102) | 评论(0) 2人收藏此文章, 我要收藏 赞0 1月16日厦门 OSC ...

  3. MySQL字段类型解析

    前言: 要了解一个数据库,我们必须了解其支持的数据类型.MySQL 支持大量的字段类型,其中常用的也有很多.前面文章我们也讲过 int 及 varchar 类型的用法,但一直没有全面讲过字段类型,本篇 ...

  4. MySQL字段类型详解

    MySQL字段类型详解 2009-01-05 09:25 来源:泡菜博客 0个评论 分享文章 A- A+ 百度权重查询 词库网 网站监控 服务器监控 SEO监控 Swift编程语言教程 MySQL支持 ...

  5. MySQL 字段类型解析

    MySQL字段类型 MySQL支持多种类型,大致可以分为三类:数值.日期/时间和字符串(字符)类型. 数值类型 字符串 char和varchar: 1.char(n) 若存入字符数小于n,则以空格补于 ...

  6. MySQL字段类型与Java中类型的对应

    MySQL字段类型与Java中类型的对应 在设计数据的时候,需要与Java里的类型进行匹配,我自己在设计过程中参考的内容如下 编号 类型名称 显示长度 数据库类型 Java类型 备注/描述 0 VAR ...

  7. MySQL字段类型汇总及用法(超详细)

    /********************************FileName: MySQL字段类型汇总及用法*Author: weibo*Version: v1.0*Date: 2016.5.1 ...

  8. MySQL字段类型对应Java字段

    前言 MySQL Connector/J 对于 MySql 数据类型和 Java 数据类型之间的转换是很灵活的: 一般来讲,任何 MySql 数据类型都可以被转换为一个 java.lang.Strin ...

  9. 详解mysql字段类型int(4) int(10)等区别

    一.mysql字段类型大致可以分为:数值.日期/时间.字符串 数值类型:tinyint,smallint,mediumint,int/integer,bigint,float,double,decim ...

  10. MySql 字段类型对应 Java 实体类型

    前言 MySQL Connector/J 对于 MySql 数据类型和 Java 数据类型之间的转换是很灵活的: 一般来讲,任何 MySql 数据类型都可以被转换为一个 java.lang.Strin ...

最新文章

  1. 以太坊solidity编程常见错误(不定期更新)
  2. selenium中应用问题解决
  3. 通过Dapr实现一个简单的基于.net的微服务电商系统(四)——一步一步教你如何撸Dapr之订阅发布...
  4. rocketmq存储结构_阿里专家分享内部绝密RocketMQ核心原理与最佳实践笔记
  5. 服务器虚拟化的主备,云服务器可以主备切换
  6. 20155229 2016-2007-2 《Java程序设计》第一周学习总结
  7. python虚拟环境配置文件_uwsgi 配置 python virtualenv 虚拟环境目录 ( ini 配置)
  8. [转载] Python正则表达式(含正则表达式速查表)
  9. enumerate取下标
  10. caffe matlab 重启,Matlab caffe 具体使用方法
  11. openwrt的源码下载及其编译 (一)
  12. 【Photoshop】证件照换底色
  13. HJ82 将真分数分解为埃及分数(需要知道求埃及数的数学方法)
  14. 1u服务器支持的显卡体积,1u服务器加独立显卡(1u服务器装显卡)
  15. Linux CentOS 系统实战笔记-基础篇
  16. 结构体所占字节数的计算
  17. pcie 对rc操作的ops
  18. Python 解压rar类型文件
  19. python怎么制作游戏存档功能,如何在Python中创建目录的zip存档?
  20. 【爬虫实战】斗鱼直播(你想看的都有呀!)

热门文章

  1. ad域控查看ldap端口命令_工作笔记(一)LDAP和AD介绍以及使用LDAP操作AD域
  2. 19显示文字的区位码
  3. 大国品牌的幕后英雄们
  4. h5页面添加APP下载引导页实现APP下载
  5. Selenium4+Pytest+Allure+PO自动化测试框架最新设计
  6. docker live-restore
  7. 制药企业计算机系统urs,制药设备urs.pdf
  8. APP用户协议和隐私政策怎么写?
  9. 【51码儿】【Linux学习笔记】第1章 安装、登录CentOS7
  10. QoE是什么?QoE对视频流供应商的重要性