`

MySQL5.1列类型

    博客分类:
  • DB
阅读更多

官方文档:MySQL 5.1参考手册 :: 11. 列类型

 

MySQL列类型分为3大类:数值类型、日期和时间类型、字符串类型。

 

一、数值类型

如无特别说明 M 表示最大显示宽度。最大有效显示宽度是255 。显示宽度与存储大小或类型包含的值的范围无关。

定义 存储需求 数据范围 说明
无符号 有符号
BIT[(M )] ( M +7)/8B     位字段类型。M 表示每个值的位数,范围为从164; M 默认值为1
TINYINT[(M )] [UNSIGNED] [ZEROFILL] 1B 0 ~255 -128 ~127 很小的整数。
BOOLBOOLEAN       TINYINT(1) 的同义词。zero 值为false;非zero 值为true。
SMALLINT[(M )] [UNSIGNED] [ZEROFILL] 2B 0 ~65535 -32768 ~32767 小的整数。
MEDIUMINT[(M )] [UNSIGNED] [ZEROFILL] 3B 0 ~16777215 -8388608 ~8388607 中等大小的整数。
INT[(M )] [UNSIGNED] [ZEROFILL] 4B 0 ~4294967295 -2147483648 ~2147483647 普通大小的整数。
INTEGER[(M )] [UNSIGNED] [ZEROFILL]       INT 的同义词。
BIGINT[(M )] [UNSIGNED] [ZEROFILL] 8B 0 ~18446744073709551615 -9223372036854775808 ~9223372036854775807 大整数。
FLOAT[(M ,D )] [UNSIGNED] [ZEROFILL] 4B 1.175494351E-38 ~3.402823466E+38 -3.402823466E+38 ~-1.175494351E-380 ( 单精度) 浮点数。 M 是小数纵位数,D 是小数点后面的位数。如果M D 被省略,根据硬件允许的限制来保存值。单精度浮点数精确到大约7 位小数位。
DOUBLE[(M ,D )] [UNSIGNED] [ZEROFILL] 8B      
DOUBLE PRECISION[(M ,D )] [UNSIGNED] [ZEROFILL] , REAL[(M ,D )] [UNSIGNED] [ZEROFILL]       DOUBLE 的同义词。
FLOAT(p ) [UNSIGNED] [ZEROFILL] 如果0 <= p <= 244 B, 如果25 <= p <= 538 B     浮点数。p 表示精度(以位数表示),但MySQL 只使用该值来确定是否结果列的数据类型为FLOATDOUBLE 。如果p 为从024 ,数据类型变为没有M D 值的FLOAT 。如果p 为从2553 ,数据类型变为没有M D 值的DOUBLE 。结果列范围与本节前面描述的单精度FLOAT 或双精度DOUBLE 数据类型相同。
DECIMAL[(M [,D ])] [UNSIGNED] [ZEROFILL] 变长      
DEC[(M [,D ])] [UNSIGNED] [ZEROFILL] , NUMERIC[(M [,D ])] [UNSIGNED] [ZEROFILL] , FIXED[(M [,D ])] [UNSIGNED] [ZEROFILL]       DECIMAL 的同义词。

 

二、日期和时间类型

 

定义

存储需求

支持的范围

”值

说明
DATETIME 8B '1000-01-01 00:00:00' ~ '9999-12-31 23:59:59'

'0000-00-00 00:00:00'

同时包含日期和时间信息;

允许保存日/ 月和日是零的日期。

DATE 3B '1000-01-01' ~ '9999-12-31'

'0000-00-00'

仅日期值;

允许保存日/ 月和日是零的日期。

TIMESTAMP 4B 不能早于1970 或晚于2037

00000000000000

列类型的属性不固定,取决于MySQL 版本和服务器运行的SQL 模式。
TIME 3B '-838:59:59' ~ '838:59:59'

'00:00:00'

'HH:MM:SS' 格式检索和显示TIME 值。

无效TIME 值被转换为'00:00:00'。

YEAR 1B 1901 ~ 2155

0000

表示年。

单字节类型。

YYYY 格式检索和显示YEAR 值。

非法YEAR 值被转换为0000

 

1. 每个时间类型有一个有效值范围和一个“ ”值,当指定不合法的MySQL 不能表示的值时使用“ ”值。
    如果不想在日期中出现零,可以使用NO_ZERO_IN_DATE SQL 模式。
2. 如果试图插入一个不合法的日期,MySQL 将给出警告或错误。
3. 可以使用ALLOW_INVALID_DATES SQL 模式让MySQL 接受某些日期。
4. 允许将'0000-00-00' 保存为“伪日期”( 如果不使用NO_ZERO_DATE SQL 模式) ,这在某些情况下比使用NULL 值更方便( 并且数据和索引占用的空间更小)

 

5. 可以使用任何常见格式指定DATETIME DATE TIMESTAMP 值:

'YYYY-MM-DD HH:MM:SS''YY-MM-DD HH:MM:SS' 格式的字符串。

'YYYY-MM-DD''YY-MM-DD' 格式的字符串。

'YYYYMMDDHHMMSS''YYMMDDHHMMSS' 格式的没有间割符的字符串。

'YYYYMMDD''YYMMDD' 格式的没有间割符的字符串。

YYYYMMDDHHMMSSYYMMDDHHMMSS 格式的数字。

YYYYMMDDYYMMDD 格式的数字。

无效DATETIMEDATE 或者TIMESTAMP 值被转换为相应类型的“ ”值。

 

6. 可以用各种格式指定TIME 值:

'D HH:MM:SS.fraction' 格式的字符串。

'HHMMSS' 格式的没有间割符的字符串。

HHMMSS 格式的数值。

超出TIME 范围但合法的值被裁为范围最接近的端点。

 

三、字符串类型:

定义

存储需求

长度 存储(值) 说明

CHAR(M )

M 个字节,0 <= M <= 255

列长度固定为创建表时声明的长度。

长度可以为从0255 的任何值。

 

当保存CHAR 值时,在它们的右边填充空格以达到指定的长度。

声明的长度表示你想要保存的最大字符数。

当检索到CHAR 值时,尾部的空格被删除掉。

在存储或检索过程中不进行大小写转换。

VARCHAR(M )

L +1 个字节,其中L <= M 0 <= M <= 65535

列中的值为可变长字符串。

长度可以指定为065,535 之间的值。


值保存时不进行填充,只保存需要的字符数,另加一个字节来记录长度( 如果列声明的长度超过255 ,则使用两个字节)

声明的长度表示你想要保存的最大字符数。

BINARY(M )

M 个字节,0 <= M <= 255

长度是字节长度。

保存BINARY 值时,在它们右边填充值以达到指定长度。

存储二进制字符串。

插入值时在右侧添加0x00 on ,并且选择时不删除尾部的字节。

比较时所有字节很重要,包括ORDER BYDISTINCT 操作。

VARBINARY(M )

L +1 个字节,其中L <= M 0 <= M <= 255

长度是字节长度。

 

存储二进制字符串。

插入时不填充字符,选择时不裁剪字节。

比较时所有字节很重要,包括ORDER BYDISTINCT 操作。

BLOB

L +2 个字节,其中L < 216

4BLOB 类型:TINYBLOB BLOBMEDIUMBLOB LONGBLOB

它们只是可容纳值的最大长度不同。

二进制大对象,可以容纳可变数量的数据。 没有字符集,并且排序和比较基于列值字节的数值值。
TEXT

L +2 个字节,其中L < 216

4TEXT 类型:TINYTEXT TEXTMEDIUMTEXT LONGTEXT

这些对应4BLOB 类型,有相同的最大长度和存储需求。

非二进制字符串( 字符字符串) 有一个字符集,并且根据字符集的 校对规则对值进行排序和比较。

TINYBLOB , TINYTEXT

L +1 个字节,其中L < 28

     

MEDIUMBLOB , MEDIUMTEXT

L +3 个字节,其中L < 224

     

LONGBLOB , LONGTEXT

L +4 个字节,其中L < 232

     

ENUM('value1 ','value2 ',...)

12 个字节,取决于枚举值的个数( 最多65,535 个值)

  是一个字符串对象,其值来自表创建时在列规定中显式枚举的一列值。

枚举最多可以有65,535 个元素。

SET('value1 ','value2 ',...)

1234 或者8 个字节,取决于set 成员的数目( 最多64 个成员)

  是一个字符串对象,可以有零或多个值,其值来自表创建时规定的允许的一列值。 最多可以有64 个不同的成员。

 

其它数据库与MySQL的类型对应关系:

其它数据库类型

MySQL 类型

BOOL ,

TINYINT

BOOLEAN

TINYINT

CHAR VARYING(M )

VARCHAR(M )

DEC

DECIMAL

FIXED

DECIMAL

FLOAT4

FLOAT

FLOAT8

DOUBLE

INT1

TINYINT

INT2

SMALLINT

INT3

MEDIUMINT

INT4

INT

INT8

BIGINT

LONG VARBINARY

MEDIUMBLOB

LONG VARCHAR

MEDIUMTEXT

LONG

MEDIUMTEXT

MIDDLEINT

MEDIUMINT

NUMERIC

DECIMAL

分享到:
评论
1 楼 showzh 2013-12-03  

相关推荐

    部门绩效考核评价表excel.xls

    部门绩效考核评价表excel

    全面的公司行政费用统计表.xls

    全面的公司行政费用统计表

    视觉跟踪算法综述.pdf

    视觉跟踪算法综述.pdf

    CMD 命令行高级教程精选合编

    CMD 命令行高级教程精选合编

    apr-devel-1.4.8-7.el7.x64-86.rpm.tar.gz

    1、文件内容:apr-devel-1.4.8-7.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/apr-devel-1.4.8-7.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    10-4-生产主管绩效考核表(自动计算、等级评价).xlsx

    10-4-生产主管绩效考核表(自动计算、等级评价)

    深度学习python基础(第三节) 函数、列表

    深度学习python基础(第三节) 函数、列表

    岗位绩效考核评定表excel表格模板.xlsx

    岗位绩效考核评定表excel表格模板

    成品库仓管员绩效考核表.xls

    成品库仓管员绩效考核表

    环卫业务 基础知识培训(小步创想)PPT(133页).pptx

    一、智慧环卫管理平台的建设背景与目标 智慧环卫管理平台的建设源于对环卫管理全面升级的需求。当前,城管局已拥有139辆配备车载GPS系统、摄像头和油耗传感器的环卫车辆,但环卫人员尚未配备智能移动终端,公厕也缺乏信息化系统和智能终端设备。为了提升环卫作业效率、实现精细化管理并节省开支,智慧环卫管理平台应运而生。该平台旨在通过信息化技术和软硬件设备,如车载智能终端和环卫手机App,实时了解环卫人员、车辆的工作状态、信息和历史记录,使环卫作业管理透明化、精细化。同时,平台还期望通过数据模型搭建和数据研读,实现更合理的环卫动态资源配置,为环卫工作的科学、健康、持续发展提供决策支持。 二、智慧环卫管理平台的建设内容与功能 智慧环卫管理平台的建设内容包括运行机制体制建设、业务流程设计、智慧公厕系统建设、网络建设、主机和储存平台需求、平台运维管理体系、硬件标准规范体系以及考核评价体系等多个方面。其中,智慧公厕系统建设尤为关键,它能实时监控公厕运行状态,保障公厕的清洁和正常运行。平台建设还充分利用了现有的电子政务网络资源,并考虑了有线和无线网络的需求。在功能上,平台通过普查、整合等手段全面收集环卫车辆、企业、人员、设施、设备等数据,建立智慧环卫基础数据库。利用智能传感、卫星定位等技术实现环卫作业的在线监管和远程监控,实现对道路、公共场所等的作业状况和卫生状况的全面监管。此外,平台还建立了环卫作业网格化管理责任机制,实现从作业过程到结果的全面监管,科学评价区域、部门、单位和人员的作业效果。 三、智慧环卫管理平台的效益与风险规避 智慧环卫管理平台的建设将带来显著的环境、经济和管理效益。环境方面,它将有力推进环境卫生监管服务工作,改善环境卫生状况,为人民群众创造更加清洁、卫生的工作和生活环境。经济方面,通过智慧化监管,大大降低了传统管理手段的成本,提高了监管的准确性和效率。管理方面,平台能够追踪溯源市民反映的问题,如公厕异味、渣土车辆抛洒等,并找到相应的责任单位进行处置,防止类似事件再次发生。同时,平台还拥有强大的预警机制功能,能够在很多环卫问题尚未出现前进行处置。然而,平台建设也面临一定的风险,如部门协调、配合问题,建设单位选择风险以及不可预测的自然灾害等。为了规避这些风险,需要加强领导、统一思想,选择优秀的系统集成商承接项目建设,并做好计算机和应用系统的培训工作。同时,也要注意标准制定工作和相关法律法规的制定工作,以保证系统建设完成后能够真正为环卫管理工作带来便利。

    基于平衡计分卡绩效考核表(管理高层)模板.xls

    基于平衡计分卡绩效考核表(管理高层)模板

    网站运营各部门绩效考核表.xls

    网站运营各部门绩效考核表

    XX公司行政部绩效考核指标.xls

    XX公司行政部绩效考核指标

    基于齿向修形的抛物线锥齿轮仿真分析.pdf

    基于齿向修形的抛物线锥齿轮仿真分析.pdf

    三相半桥逆变器低电压穿越控制策略设计:两级式光伏并网系统电路原理与容量优化报告,两级式光伏并网系统及其低电压穿越控制策略设计,容量30kW 三相半桥逆变器,boost电路作前级 带低电压穿越,有一

    三相半桥逆变器低电压穿越控制策略设计:两级式光伏并网系统电路原理与容量优化报告,两级式光伏并网系统及其低电压穿越控制策略设计,容量30kW。 三相半桥逆变器,boost电路作前级。 带低电压穿越,有一万七千字的报告,没有水文字。 报告内容,电路原理,pi参数设计,bode和根轨迹分析,波形良好 ,关键词:两级式光伏并网系统;低电压穿越控制策略;30kW容量;三相半桥逆变器;boost电路;前级设计;低电压穿越功能;报告内容;电路原理;PI参数设计;Bode和根轨迹分析;波形良好。,基于30kW容量两级式光伏并网系统的控制策略设计:低电压穿越及高效逆变技术研究

    毕业设计文本预测项目python源码+托尔斯泰《战争与和平》文本分析数据集-最新出炉.zip

    毕业设计文本预测项目python源码+托尔斯泰《战争与和平》文本分析数据集-最新出炉 关于数据集 背景: 该数据集包含列夫·托尔斯泰的《战争与和平》的全文,这是一部于 1869 年出版的开创性文学作品。作为公共领域文本,它为对文学分析、自然语言处理和历史研究感兴趣的研究人员和爱好者提供了丰富的资源。这部小说以俄国拿破仑战争为背景,探讨了战争、和平和人类状况的主题。 内容: 数据集由一个纯文本文件组成,其中包含《战争与和平》的完整叙述。文本已进行预处理,以方便分析和建模,使其适用于各种应用,包括文本挖掘、情感分析和机器学习项目。该文件可通过以下链接访问:战争与和平文本数据集。

    18 -广告部经理绩效考核表1.xlsx

    18 -广告部经理绩效考核表1

    永磁同步电机电流内环PR控制Simulink仿真模型:转速电流双闭环矢量控制,波形完美带原理说明与文献参考,永磁同步电机电流内环PR控制Matlab simulink仿真模型,参数已设置好,可直接运行

    永磁同步电机电流内环PR控制Simulink仿真模型:转速电流双闭环矢量控制,波形完美带原理说明与文献参考,永磁同步电机电流内环PR控制Matlab simulink仿真模型,参数已设置好,可直接运行。 属于PMSM转速电流双闭环矢量控制系统模型。 电流内环采用PR控制器,不需要旋转坐标变,在静止坐标下进行矢量控制,转速外环采用PI控制器。 波形完美,包含原理说明文档和参考文献。 ,关键词:永磁同步电机;电流内环PR控制;Matlab simulink仿真模型;PMSM转速电流双闭环矢量控制系统;PR控制器;PI控制器;波形完美;原理说明文档;参考文献。,"基于PR控制的永磁同步电机电流内环仿真模型:静止坐标矢量控制与波形解析"

    基于主从博弈理论的共享储能与综合能源微网优化运行策略研究:Stackelberg均衡下的优化调度与运行框架,基于主从博弈理论的共享储能与综合能源微网优化运行研究 关键词:主从博弈 共享储能 综合能源微

    基于主从博弈理论的共享储能与综合能源微网优化运行策略研究:Stackelberg均衡下的优化调度与运行框架,基于主从博弈理论的共享储能与综合能源微网优化运行研究 关键词:主从博弈 共享储能 综合能源微网 优化调度 参考文档:《基于主从博弈理论的共享储能与综合能源微网优化运行研究》完全复现 仿真平台:MATLAB yalmip+cplex 主要内容:代码主要做的是基于主从博弈理论的共享储能与综合能源微网优化运行研究,首先介绍了系统运行框架,分析了系统内各利益体的功能。 其次,分别针对微网运营商、共享储能服务商以及用户聚合商建立优化运行模型。 进一步,分析了微网运营商与用户聚合商间的博弈关系,提出共享储能背景下微网运营商与用户聚合商间的 Stackelberg 博弈模型,并证明Stackelberg 均衡解的存在性与唯一性。 最后,在 MATLAB平台上进行算例仿真,通过 Yalmip 工具与 CPLEX 求解器进行建模与求解,利用启发式算法与求解器相结合的方法优化微网运营商与用户聚合商的策略。 结果表明,本文所提模型所提模型不仅能有效权衡微网运营商与用户聚合商的利益,也实现了用户聚合商

Global site tag (gtag.js) - Google Analytics