...if (!$dateTimeString) { $dateTimeString = time(); } $numeric = ''; $add_space = false; for($i=0;$i

MySQL支持所有标准SQL数值数据类型。这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。

BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。

作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。类型字节最小值最大值

(带符号的/无符号的)(带符号的/无符号的)

TINYINT1-128127

0255

SMALLINT2-3276832767

065535

MEDIUMINT3-83886088388607

016777215

INT4-21474836482147483647

04294967295

BIGINT8-92233720368547758089223372036854775807

018446744073709551615

MySQL还支持选择在该类型关键字后面的括号内指定整数值的显示宽度(例如,INT(4))。该可选显示宽度规定用于显示宽度小于指定的列宽度的值时从左侧填满宽度。

显示宽度并不限制可以在列内保存的值的范围,也不限制超过列的指定宽度的值的显示。

当结合可选扩展属性ZEROFILL使用时, 默认补充的空格用零代替。例如,对于声明为INT(5) ZEROFILL的列,值4检索为00004。请注意如果在整数列保存超过显示宽度的一个值,当MySQL为复杂联接生成临时表时会遇到问题,因为在这些情况下MySQL相信数据适合原列宽度。

所有整数类型可以有一个可选(非标准)属性UNSIGNED。当你想要在列内只允许非负数和该列需要较大的上限数值范围时可以使用无符号值。

浮点和定点类型也可以为UNSIGNED。同数类型,该属性防止负值保存到列中。然而,与整数类型不同的是,列值的上范围保持不变。

如果为一个数值列指定ZEROFILL,MySQL自动为该列添加UNSIGNED属性。

对于浮点列类型,在MySQL中单精度值使用4个字节,双精度值使用8个字节。

FLOAT类型用于表示近似数值数据类型。SQL标准允许在关键字FLOAT后面的括号内选择用位指定精度(但不能为指数范围)。MySQL还支持可选的只用于确定存储大小的精度规定。0到23的精度对应FLOAT列的4字节单精度。24到53的精度对应DOUBLE列的8字节双精度。

MySQL允许使用非标准语法:FLOAT(M,D)或REAL(M,D)或DOUBLE PRECISION(M,D)。这里,“(M,D)”表示该值一共显示M位整数,其中D位位于小数点后面。例如,定义为FLOAT(7,4)的一个列可以显示为-999.9999。MySQL保存值时进行四舍五入,因此如果在FLOAT(7,4)列内插入999.00009,近似结果是999.0001。

MySQL将DOUBLE视为DOUBLE PRECISION(非标准扩展)的同义词。MySQL还将REAL视为DOUBLE PRECISION(非标准扩展)的同义词,除非SQL服务器模式包括REAL_AS_FLOAT选项。

为了保证最大可能的可移植性,需要使用近似数值数据值存储的代码应使用FLOAT或DOUBLE PRECISION,不规定精度或位数。

DECIMAL和NUMERIC类型在MySQL中视为相同的类型。它们用于保存必须为确切精度的值,例如货币数据。当声明该类型的列时,可以(并且通常要)指定精度和标度;例如:salary DECIMAL(5,2)

在该例子中,5是精度,2是标度。精度表示保存值的主要位数,标度表示小数点后面可以保存的位数。

在MySQL 5.1中以二进制格式保存DECIMAL和NUMERIC值。

标准SQL要求salary列能够用5位整数位和两位小数保存任何值。因此,在这种情况下可以保存在salary列的值的范围是从-999.99到999.99。

在标准SQL中,语法DECIMAL(M)等价于DECIMAL(M,0)。同样,语法DECIMAL等价于DECIMAL(M,0),可以通过计算确定M的值。在MySQL 5.1中支持DECIMAL和NUMERIC数据类型的变量形式。M默认值是10。

DECIMAL或NUMERIC的最大位数是65,但具体的DECIMAL或NUMERIC列的实际范围受具体列的精度或标度约束。如果此类列分配的值小数点后面的位数超过指定的标度允许的范围,值被转换为该标度。(具体操作与操作系统有关,但一般结果均被截取到允许的位数)。

BIT数据类型可用来保存位字段值。BIT(M)类型允许存储M位值。M范围为1到64。

要指定位值,可以使用b'value'符。value是一个用0和1编写的二进制值。例如,b'111'和b'100000000'分别表示7和128。

如果为BIT(M)列分配的值的长度小于M位,在值的左边用0填充。例如,为BIT(6)列分配一个值b'101',其效果与分配b'000101'相同。

当要在一个数值列内保存一个超出该列允许范围的值时,MySQL的操作取决于此时有效的SQL模式。如果模式未设置,MySQL将值裁剪到范围的相应端点,并保存裁减好的值。但是,如果模式设置为traditional(“严格模式”),超出范围的值将被拒绝并提示错误,并且根据SQL标准插入会失败。

如果INT列是UNSIGNED,列范围的大小相同,但其端点会变为到0和4294967295。如果你试图保存-9999999999和9999999999,以非严格模式保存到列中的值是0和4294967296。

如果在浮点或定点列中分配的值超过指定(或默认)精度和标度规定的范围,MySQL以非严格模式保存表示范围相应端点的值。

当MySQL没有工作在严格模式时,对于ALTER TABLE、LOAD DATA INFILE、UPDATE和多行INSERT语句,由于裁剪发生的转换将报告为警告。当MySQL工作在严格模式时,这些语句将失败,并且部分或全部值不会插入或更改,取决于是否表为事务表和其它因素。

以上就是MySQL基础教程1 —— 数据类型之数值类型的内容,更多相关内容请关注点凡PHP技术博客(www.df5d.com)!

...if (!$dateTimeString) { $dateTimeString = time(); } $numeric = ''; $add_space = false; for($i=0;$i

is_numeric:检测是否为数字字符串,可为负数和小数 ctype_digit:检测字符串中的字符是否都是数字,负数和小数会检测不通过 注意,参数一定要是字符串,如果不是字符串,则会返回0/FASLE 下面是测试例子: ...

...是ture,不适用范围:不适用于检测可为0的参数。 is_numeric();——只适用于检测数字,但假如参数名不存在,会出错,因此不适合于第一层检测。 综合示例: 复制代码 代码如...

...int类型的数字的时候return 1,否则return 0is_numeric:是数字/数字字符串(要是纯的数字字符串,有字符就返回false),return 1example:is_numeric(1234);//trueis_nu...

...ts,name,'.$id.',id',

'mobile' => 'required|numeric|min:10|max:10',

'dist_name' => 'req

...TH , c.COLUMN_DEFAULT , c.IS_NULLABLE , c.NUMERIC_PRECISION , c.NUMERIC_SCALEFROM [INFORMATION_SCHEMA].[COLUMNS] cWH

is_numeric:检测是否为数字字符串,可为负数和小数 ctype_digit:检测字符串中的字符是否都是数字,负数和小数会检测不通过 注意,参数一定要是字符串,如果不是字符串,则会返回0/FASLE 下面是测试例子: ...

declare @tmpt table(a int,b numeric(20,3),c numeric(20,3)) insert into @tmpt EXECUTE cbdbfxt 2005,5,'670,' select * from @tmpt drop table #tmpt create

...是ture,不适用范围:不适用于检测可为0的参数。 is_numeric();——只适用于检测数字,但假如参数名不存在,会出错,因此不适合于第一层检测。 综合示例: 复制代码 代码如下:

...是ture,不适用范围:不适用于检测可为0的参数。 is_numeric();——只适用于检测数字,但假如参数名不存在,会出错,因此不适合于第一层检测。 综合示例: 复制代码 代码如下:

numeric scale mysql_MySQL基础教程1 — 数据类型之数值类型 - numeric相关推荐

  1. 后端返回number类型数据_Javascript基础教程之数据类型 (数值 Number)

    javascript中想限定一个数的数值,无需限定它是整数还是浮点数型 var num1 = 80 ; var num2 = 55.51; var num3 = -34; var num4 = 9e5 ...

  2. 预定义类型未定义或导入_LimeSurvey基础教程(二)——问题类型

    在上一讲中,我们主要介绍了LimeSurvey的历史.功能.结构以及使用场景,其中就提到"20种以上题型,可自由运用".从某种意义上来说,调查就是由一系列的问题(类型)所组成,所以 ...

  3. Python基础教程之数据类型

    之前我们已经介绍了变量.变量的创建和赋值,以及变量的命名规则等等.今天我们继续来介绍Python的数据类型:数字类型.布尔型和字符串类型. 我们用之前的例子来进一步讲解: name,age,weigh ...

  4. python将数值进行关联_小疯谈python:(三)数据类型之数值类型

    在上一篇文章中,我简单介绍了python中的语法元素,通过了解基本的数据元素,我们可以阅读一些简单的python代码,但是这还远远不够,要想了解复杂的代码,我们还要深入学习.今天,我将开始为各位小伙伴 ...

  5. mysql有numeric类型吗_mysql数值类型 - numeric

    本文介绍php出现Warning: A non-numeric value encountered问题,用实例分析出现这种错误的原因,并提供避免及解决问题的方法. <?phperror_repo ...

  6. pythontuple数据类型_Python基础教程2d–数据类型-tuple(元组)

    1定义 tuple(元组)也是一种顺序结构的数据类型,定义一个空元组的方法用英文小括号: 变量名=() t = () 定义一个包含了多个元素的元组在小括号中用逗号分隔开各个元素: 源码print('\ ...

  7. 02.Python基础_标准数据类型_数值型_字符串

    文章目录 1.标准数据类型 1.1 数据类型 1.1.1 整数型int 1.1.2 浮点型float 1.2 数字类型的转换 1.2.1浮点转整数型 1.2.2 整数型转化为浮点型 1.2.3 数值型 ...

  8. orm设置bool型 python_python基础教程之基本内置数据类型介绍

    Python基本内置数据类型有哪些 一些基本数据类型,比如:整型(数字).字符串.元组.列表.字典和布尔类型. 随着学习进度的加深,大家还会接触到更多更有趣的数据类型,python初学者入门时先了解这 ...

  9. 倍福TwinCAT(贝福Beckhoff)基础教程2.1 TwinCAT常见类型简介

    常见数据类型可以参考EXCEL表格的内容,在准备值中输入非法数据,然后回车会有错误提示(例如BYTE数据输入256) 右击可以切换二进制或十进制显示,wData5可以被挨个采集每个位上的数据,也可以使 ...

最新文章

  1. idea java jni 调试_IntelliJ IDEA平台下JNI编程(一)—HelloWorld篇
  2. 【BZOJ】1649: [Usaco2006 Dec]Cow Roller Coaster(dp)
  3. ExtJs2.0学习系列(11)--Ext.XTemplate
  4. 数据结构之内部排序算法总结笔记
  5. Ubuntu 19.10 将于本月结束生命周期
  6. kettle转换JavaScript获取命令行参数
  7. 使用ScheduledExecutorService实现Timer
  8. yyyy-MM-dd HH:mm:ss和yyyy-MM-dd hh:mm:ss的区别
  9. 浅谈算法和数据结构: 三 合并排序
  10. 我的Android进阶之旅------gt;Android【设置】-【语言和输入法】-【语言】列表中找到相应语言所对应的列表项...
  11. 台式机装苹果系统_关于最近折腾黑苹果的一些心得分享
  12. 倚天鸿蒙系统,倚天屠龙记强化系统详解
  13. 香港科大研发出Germagic杀菌涂层,可杀灭新冠病毒
  14. 12-Gateway新一代网关
  15. 腾讯云服务器配置jre、jdk、tomcat
  16. 分布式系统中CAP原理
  17. ESP8266/ESP32 网络温控器监控 Web服务器-基于温度控制输出
  18. SpringBoot 事务管理
  19. 没有经验该如何转行做产品经理?
  20. 强大、优秀的文件管理软件评测:图片管理、书籍管理、文献管理

热门文章

  1. LA 4986 hdu3756 Dome of Circus 三分答案
  2. 阿里巴巴并购万网可行性分析
  3. 异常篇 之 记录一次因“MIUI 优化”引发的无奈。。。
  4. VUE类似微信朋友圈查看图片组件
  5. Sereja and Swaps
  6. 地球币earthcoin表情包征图大赛正式筹备准备中
  7. IBM J9 Java 虚拟机正式开源;PyPI 官方库被发现混入了名字相似的恶意模块
  8. Visual C++ 2008入门经典 Ivor Horton
  9. PHP基于微信小程序的医院预约挂号系统 uniapp 小程序
  10. 朱丹老师课程学习笔记:8、职场晋升-没人带怎么办?这样搜资料的小白也能变大神