精华内容
下载资源
问答
  • 在MySQL的数据类型中,Tinyint取值范围是:带符号的范围是-128到127。无符号的范围是0到255(见官方《MySQL 5.1参考手册》http://dev.mysql.com/doc/refman/5.1/zh/column-types.html#numeric-types)。Tinyint...

    分享下mysql中TINYINT的取值范围,很基础的一些内容。 

    在MySQL的数据类型中,Tinyint的取值范围是:带符号的范围是-128到127。无符号的范围是0到255(见官方《MySQL 5.1参考手册》http://dev.mysql.com/doc/refman/5.1/zh/column-types.html#numeric-types)。

    Tinyint占用1字节的存储空间,即8位(bit)。那么Tinyint的取值范围怎么来的呢?
    先看无符号的情况。无符号的最小值即全部8位(bit)都为0,换算成十进制就是0,所以无符号的Tinyint的最小值为0.无符号的最大值即全部8bit都为1,11111111,换算成十进制就是255.这很好理解。
    有符号的Tinyint的取值范围是怎么来的呢?在计算机中,用最高位表示符号。0表示正,1表示负,剩下的表示数值。那么有符号的8bit的最小值就是
      1  1  1  1  1  1  1  1=-127
    表示负值
    最大值:
      0  1  1  1  1  1  1  1=+127
    表示正值
    怎么有符号的最小值是-127,而不是-128呢?这就是本文要说的关键地方了,在计算机中,表示负值是用补码
    为什么有符号的TINYINT的最小值是-128?虽然“-0”也是“0”,但根据正、反、补码体系,“-0”的补码和“+0”是不同的,这样就出现两个补码代表一个数值的情况。为了将补码与数字一一对应,所以人为规定“0”一律用“+0”代表。同时为了充分利用资源,就将原来本应该表示“-0”的补码规定为代表-128。

    mysql中int、bigint、smallint 和 tinyint的区别详细介绍

    最近使用mysql数据库的时候遇到了多种数字的类型,主要有int,bigint,smallint和tinyint。其中比较迷惑的是int和smallint的差别。今天就在网上仔细找了找,找到如下内容,留档做个总结:
    使用整数数据的精确数字数据类型。
    bigint
    从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。
    P.S. bigint已经有长度了,在mysql建表中的length,只是用于显示的位数 (脚本学堂 www.jbxue.com)
    int
    从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer。
    smallint
    从 -2^15 (-32,768) 到 2^15 – 1 (32,767) 的整型数据。存储大小为 2 个字节。
    tinyint
    从 0 到 255 的整型数据。存储大小为 1 字节。
    注释
    在支持整数值的地方支持 bigint 数据类型。但是,bigint 用于某些特殊的情况,当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。在 SQL Server 中,int 数据类型是主要的整数数据类型。
    在数据类型优先次序表中,bigint 位于 smallmoney 和 int 之间。
    只有当参数表达式是 bigint 数据类型时,函数才返回 bigint。SQL Server 不会自动将其它整数数据类型(tinyint、smallint 和 int)提升为 bigint。
    int(M) 在 integer 数据类型中,M 表示最大显示宽度。在 int(M) 中,M 的值跟 int(M) 所占多少存储空间并无任何关系。和数字位数也无关系 int(3)、int(4)、int(8) 在磁盘上都是占用 4 btyes 的存储空间。

    转载于:https://www.cnblogs.com/cfinder010/p/3913825.html

    展开全文
  • MYSQL中TINYINT取值范围

    万次阅读 2019-03-10 17:16:58
    在MySQL的数据类型中,Tinyint取值范围是:带符号的范围是-128到127。无符号的范围是0到255(见官方《MySQL 5.1参考手册》http://dev.mysql.com/doc/refman/5.1/zh/column-types.html#numeri...

    原文地址:https://blog.csdn.net/lysygyy/article/details/5983433

     

    在MySQL的数据类型中,Tinyint的取值范围是:带符号的范围是-128到127。无符号的范围是0到255(见官方《MySQL 5.1参考手册》http://dev.mysql.com/doc/refman/5.1/zh/column-types.html#numeric-types)。

     

    Tinyint占用1字节的存储空间,即8位(bit)。那么Tinyint的取值范围怎么来的呢?我们先看无符号的情况。无符号的最小值即全部8位(bit)都为0,换算成十进制就是0,所以无符号的Tinyint的最小值为0.无符号的最大值即全部8bit都为1,11111111,换算成十进制就是255.这很好理解。

     

    有符号的Tinyint的取值范围是怎么来的呢?在计算机中,用最高位表示符号。0表示正,1表示负,剩下的表示数值。那么有符号的8bit的最小值就是

     

      1  1  1  1  1  1  1  1=-127

    表示负值

    最大值:

      0  1  1  1  1  1  1  1=+127

    表示正值

     

    怎么有符号的最小值是-127,而不是-128呢?这就是本文要说的关键地方了,在计算机中,表示负值是用补码(正码、反码、补码的概念见http://indian.blog.163.com/blog/static/1088158200610942745817/

     

    为什么有符号的TINYINT的最小值是-128?虽然“-0”也是“0”,但根据正、反、补码体系,“-0”的补码和“+0”是不同的,这样就出现两个补码代表一个数值的情况。为了将补码与数字一一对应,所以人为规定“0”一律用“+0”代表。同时为了充分利用资源,就将原来本应该表示“-0”的补码规定为代表-128。

    展开全文
  • 在MySQL的数据类型中,Tinyint取值范围是:带符号的范围是-128到127。无符号的范围是0到255(见官方《MySQL 5.1参考手册》http://dev.mysql.com/doc/refman/5.1/zh/column-types.html#numeric-types)。 Tinyint...
  • SQL数据类型 bigint、int、mediumint、smallint、tinyint 取值范围: 1、tinyint,一位大小为 1 字节。 -27 (-128) 到 27 - 1 (127)的整型数据 无符号的范围:0 到 255 2、smallint,一位大小为 2 个字节 -215 (-32,...

    SQL数据类型 bigint、int、mediumint、smallint、tinyint 取值范围:

    1、tinyint,一位大小为 1 字节。

    -27 (-128) 到 27 - 1 (127)的整型数据
    无符号的范围:0 到 255

    2、smallint,一位大小为 2 个字节

    -215 (-32,768) 到 215 - 1 (32,767) 的整型数据
    无符号的范围:0 到 65535

    3、int,一位大小为 4 个字节

    -231 (-2,147,483,648) 到 231 - 1 (2,147,483,647) 的整型数据
    无符号的范围:0 到 4294967295

    4、bigint, 一位为 8 个字节

    -263 (-9223372036854775808) 到 263-1 (9223372036854775807) 的整型数据
    无符号范围: 0 到 18446744073709551615

    5、mediumint,一位大小为3个字节

    -8388608 到 8388607
    无符号的范围:0 到 16777215

    单位换算

    1KB = 1024B 字节 “Byte” 单位B
    1B = 8b 位 “bit” 单位b
    1个字母(数字和单词) = 1B = 8位

    符号

    有无符号,就是有无正负
    如果带符号,需要用1位表示符号(1表示负数,0表示正),剩下位表示数据。

    比如 tinyint,占1B(字节),也就是8b(位)
    有符号:-27 ~ 27-1 ==> -128 ~ 127 (1位表示正负,剩下7位表示数据)
    无符号:28-1 ==> 0 ~ 255 (8位都表示数据)

    展开全文
  • mysql中数据类型取值范围

    mysql整型bigint、int、mediumint、smallint 和 tinyint的语法介绍,如下

    • bigint: 8 个字节

      • 有符号bigint: -2^63 (-9223372036854775808) ~ 2^63 - 1 (9223372036854775807)
      • 无符号bigint unsigned: 0 ~ 2^64 - 1(18446744073709551615)
    • int: 4 个字节

      • 有符号int: -2^31 (-2147483648) ~ 2^31 - 1 (2147483647)
      • 无符号int unsigned: 0 ~ -2^32 - 1(4294967295)
      • int 的 SQL-92 同义词为 integer
    • mediumint: 3个字节

      • 有符号mediumint: -2^23 (-8388608) ~ 2^23 - 1 (8388607)
      • 无符号mediumint unsigned: 0 ~ 2^24 - 1(16777215)
    • smallint: 2 个字节

      • 有符号smallint:-2^15 (-32768) ~ 2^15 - 1 (32767)
      • 无符号smallint unsigned:0 ~ 2^16 - 1 (65535)
    • tinyint: 1个 字节

      • 有符号tinyint: -2^8(-128) ~ 2^7 - 1(127)
      • 无符号tinyint unsigned: 0 ~ 2^8 - 1(255)

     

    单位换算

    • 1KB = 1024B 字节 “Byte” 单位B

    • 1B = 8b 位 “bit” 单位b

    • 1个字母(数字和单词) = 1B = 8位

     

    关于int(M)
    int(M) 在 integer 数据类型中,M 表示最大显示宽度。在 int(M) 中,M 的值跟 int(M) 所占多少存储空间并无任何关系。和数字位数也无关系 int(3)、int(4)、int(8) 在磁盘上都是占用 4 btyes 的存储空间。

    • int(2):括号中的2表示的不是tinyint的最大长度,而是显示的最大长度。tinyint的最大值还是127没变(有符号),虽然已经超过2位了。这个2的作用需要在建表时指定ZEROFILL参数后,查询时才能体现出来。如果表中数据是1,则查出来的结果会自动用0补成两位,即01。这只是影响的查询结果,表中的数据还是1没变。所以平时指定括号中的数值并没有意义。

     

    MySQL中各数据类型的取值范围

    • TINYINT: -128 - 127
    • TINYINT UNSIGNED:0 - 255
    • SMALLINT: -32768 - 32767
    • SMALLINT UNSIGNED: 0 - 65535
    • MEDIUMINT:-8388608 - 8388607
    • MEDIUMINT UNSIGNED: 0 - 16777215
    • INT 或 INTEGER: -2147483648 - 2147483647
    • INT UNSIGNED 或 INTEGER UNSIGNED: 0 - 4294967295
    • BIGINT: -9223372036854775808 - 9223372036854775807
    • BIGINT UNSIGNED: 0 - 18446744073709551615
    • FLOAT: -3.402823466E+38 - -1.175494351E-38,0,1.175494351E-38 - 3.402823466E+38
    • DOUBLE 或 DOUBLE PRECISION 或 REAL: -1.7976931348623157E+308 - -2.2250738585072014E-308,0,2.2250738585072014E-308 - 1.7976931348623157E+308
    • DECIMAL[(M,[D])] 或 NUMERIC(M,D): 由M(整个数字的长度=小数点+小数点左边的位数+小数点右边的位数,但不包括负号)和D(小数点右边的位数)来决定,M缺省为10,D缺省为0
    • DATE: 1000-01-01 - 9999-12-31
    • DATETIME: 1000-01-01 00:00:00 - 9999-12-31 23:59:59
    • TIMESTAMP: 1970-01-01 00:00:00 - 2037年的某天(具体是哪天我也不知道,呵呵)
    • TIME: -838:59:59’ to 838:59:59
    • YEAR[(2|4)]: 缺省为4位格式,4位格式取值范围为1901 - 2155,0000,2位格式取值范围为70-69(1970-2069)
    • CHAR(M) [BINARY] 或 NCHAR(M) [BINARY]: M的范围为1 - 255,如果没有BINARY项,则不分大小写,NCHAR表示使用缺省的字符集。在数据库中以空格补足,但在取出来时末尾的空格将自动去掉。
    • [NATIONAL] VARCHAR(M) [BINARY]: M的范围为1 - 255。在数据库中末尾的空格将自动去掉。
    • TINYBLOB 或 TINYTEXT: 255(2^8-1)个字符
    • BLOB 或 TEXT: 65535(2^16-1)个字符
    • MEDIUMBLOB 或 MEDIUMTEXT: 16777215 (2^24-1)个字符
    • LONGBLOB 或 LONGTEXT: 4294967295 (2^32-1)个字符
    • ENUM(‘value1’,‘value2’,…): 可以总共有65535个不同的值
    • SET(‘value1’,‘value2’,…): 最多有64个成员
    展开全文
  • 测试Mysql中Tinyint类型范围

    万次阅读 2018-10-01 13:17:15
    MySQL支持多种数据类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。其中, 整数类型包括:tinyint、smallint、mediumint、int和bigint。 其中,tinyint的大小为1字节,即8位二进制。在无符号的情况下...
  • 出处: ...   目录 使用整数数据的精确数字数据类型。 bigint int smallint tinyint 注释 使用整数数据的精确数字数据类型。   bigint  从 -2^63 (-9223372036854...
  • 整数类型:BIT、BOOL、TINY INT、SMALL INT、MEDIUM INT、 INT、 BIG INT 浮点数类型:FLOAT、DOUBLE、DECIMAL 字符串类型:CHAR、VARCHAR、TINY TEXT、TEXT、MEDIUM TEXT、LONGTEXT、TINY BLOB、BLOB、MEDIUM ...
  • MySQL整数数据类型取值范围

    千次阅读 2018-11-01 10:07:33
    在数据表用到整数,MySQL整数数据类型取值范围tinyint,smallint,mediumint,int,bigint等等,下面看看取值范围  1,tinyint 整数 tinyint(m) 1个字节 范围(-128~127),2, 2,smallint 整数 smallint...
  • MySQL中各数据类型取值范围 TINYINT -128 - 127 TINYINT UNSIGNED 0 - 255 SMALLINT -32768 - 32767 SMALLINT UNSIGNED 0 - 65535 MEDIUMINT -8388608 - 8388607 MEDIUMINT UNSIGNED 0 - 16777215 INT 或 INTEGER ...
  • mysql中tinyint取值范围

    千次阅读 2019-05-21 14:05:06
    在MySQL的数据类型中,Tinyint取值范围是:带符号的范围是-128到127。无符号的范围是0到255(见官方《MySQL 5.1参考手册》http://dev.mysql.com/doc/refman/5.1/zh/column-types.html#numeric-types)。 ...
  • sqlserver类型取值范围

    2016-12-17 07:12:15
    SQL SERVER的数据类型 数据类型是数据的一种属性,表示数据所表示信息的类型。任何一种计算机语言都定义了自己的数据类型。当然,不同的程序语言都具有不同的特点。 SQL Server提供了25种数据类型: Binary [(n)]...
  • MySQL数据类型 含义(有符号) tinyint(m) 1个字节 范围(-128~127) smallint(m) 2个字节 范围(-32768~32767) mediumint(m) 3个字节 范围(-8388608~8388607) int(m) 4个字节 范围(-2147483648...
  • BIGINT 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字),存储大小为 8 个字节。   INT或INTEGER 从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型...
  • tinyint类型解释

    千次阅读 2020-11-23 13:58:36
    tinyint类型代表一个字节,如果一个数字大小超过一个字节,则无法保存。 tinyint有两种类型,第一种(默认)可以储存正负数;...官方给出的tinyint取值范围是-128到127,为什么不是-127到127呢,原因在于当1000000
  • mysql 中的tinyint 数据类型

    千次阅读 2014-11-02 21:58:22
    整型数系统已经限制了取值范围,比如tinyint占一个字节(8bit)、int占4个字节。 所以整型数后面的m不是表示的数据长度,而是表示数据在显示时显示的最小长度(长度为字符数)。 tinyint(1) 这里的1表示的是...
  • PS:UNSIGNED代表是无符号, 例如INT 或 INTEGER :-2147483648 - 2147483647 , 那么INT UNSIGNED 或 INTEGER UNSIGNED :0 - ...以下为各个数据类型取值范围TINYINT -128 - 127TINYINT UNSIGNED 0 - 255S...
  • mysql数据库设计,其中,对于数据性能优化,字段类型考虑很重要,搜集了些资料,整理分享出来,这篇为有关mysql整型bigint、int、mediumint、smallint 和 tinyint的语法介绍,如下:1、bigint从 -2^63 (-...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,567
精华内容 4,626
关键字:

tinyint数据类型取值范围