最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL中BIGINT數(shù)據(jù)類型如何存儲(chǔ)整數(shù)值

 更新時(shí)間:2022年10月26日 12:00:26   作者:allway2  
mysql數(shù)據(jù)庫設(shè)計(jì),其中對于數(shù)據(jù)性能優(yōu)化,字段類型考慮很重要,下面這篇文章主要給大家介紹了關(guān)于MySQL中BIGINT數(shù)據(jù)類型如何存儲(chǔ)整數(shù)值的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

前言

本文重點(diǎn)介紹 MySQL BIGINT 數(shù)據(jù)類型,并研究我們?nèi)绾问褂盟鼇泶鎯?chǔ)整數(shù)值。我們還將了解它的范圍、存儲(chǔ)大小和各種屬性,包括有符號(hào)、無符號(hào)和零填充。

整數(shù)類型(精確值) - INTEGER、INT、SMALLINT、TINYINT、MEDIUMINT、BIGINT

MySQL 支持 SQL 標(biāo)準(zhǔn)整數(shù)類型 INTEGER(或INT)和 SMALLINT. 作為標(biāo)準(zhǔn)的擴(kuò)展,MySQL 還支持整數(shù)類型 TINYINT、MEDIUMINT和 BIGINT. 下表顯示了每種整數(shù)類型所需的存儲(chǔ)空間和范圍。

表 11.1 MySQL 支持的整數(shù)類型所需的存儲(chǔ)和范圍

類型存儲(chǔ)(字節(jié))簽名的最小值最小值無符號(hào)簽署的最大值最大值無符號(hào)
TINYINT1-1280127255
SMALLINT2-3276803276765535
MEDIUMINT3-83886080838860716777215
INT4-2147483648021474836474294967295
BIGINT8-2630263-1264-1

MySQL BIGINT

BIGINT 是 ab 字節(jié)或 64 位整數(shù)值,在存儲(chǔ)大整數(shù)值時(shí)非常有用。

MySQL BIGINT 與任何其他 MySQL 整數(shù)數(shù)據(jù)類型一樣,可以是有符號(hào)或無符號(hào)的。有符號(hào)數(shù)據(jù)類型表示該列可以存儲(chǔ)正整數(shù)和負(fù)整數(shù)值。這是 MySQL 中大多數(shù)整數(shù)類型的默認(rèn)類型。因此,除非明確指定,否則任何整數(shù)類型列都可以存儲(chǔ)正整數(shù)和負(fù)整數(shù)。

另一方面,無符號(hào)數(shù)據(jù)類型表示該列只能存儲(chǔ)正整數(shù)值。

簽名 MySQL BIGINT 類型的范圍在 -9223372036854775808 和 9223372036854775807 之間

對于無符號(hào) BIGINT 類型,取值范圍為 0 到 18446744073709551615。

BIGINT 類型的另一個(gè)屬性是 ZEROFILL。在列上指定此屬性后,該列將自動(dòng)設(shè)置為 UNSIGNED。

zerofill 屬性也用零填充空格。

例子

讓我們看幾個(gè)例子來說明如何使用 BIGINT 類型。

CREATE DATABASE IF NOT EXISTS integers;
USE integers;

接下來,讓我們創(chuàng)建一個(gè)表并用各種 BIGINT 列填充它,如下面的查詢所示:

CREATE TABLE examples(x BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, y BIGINT UNSIGNED, z BIGINT ZEROFILL );

示例 1

讓我們首先嘗試將所有正值添加到表中:

INSERT INTO examples(x,y,z) VALUES (1,2,3);

在上面的示例查詢中,這些值是可接受的,因?yàn)樗鼈冊谟蟹?hào)、無符號(hào)和 zerofill BIGINT 類型的范圍內(nèi)。

SELECT * FROM examples;
+---+------+----------------------+
| x | y    | z                    |
+---+------+----------------------+
| 1 |    2 | 00000000000000000003 |
+---+------+----------------------+
1 row in <strong>set</strong> (0.01 sec)

示例 2

在下一個(gè)案例中,讓我們嘗試添加所有負(fù)值。示例查詢?nèi)缦拢?/p>

INSERT INTO examples(x,y,z) VALUES (-1,-2,-3);
ERROR 1264 (22003): Out of range value for column 'y' at row 1

在這種情況下,查詢失敗,因?yàn)?y 列是無符號(hào)的。因此,為列分配負(fù)值超出了列范圍。

示例 3

我們可以觀察到與上述第三列類似的情況。zerofill 屬性自動(dòng)使列無符號(hào),使添加負(fù)值超出范圍。一個(gè)例子是:

INSERT INTO examples(x,y,z) VALUES (-1,2,-3);
ERROR 1264 (22003): Out of range value for column 'z' at row 1

示例 4

現(xiàn)在讓我們嘗試添加每種類型的最大值。一個(gè)示例查詢是:

INSERT INTO examples(x,y,z) VALUES (-9223372036854775808, 9223372036854775808, 9223372036854775808);

在上面的示例中,由于所有值都在范圍內(nèi),因此查詢成功執(zhí)行。

考慮下面的查詢:

INSERT INTO examples(x,y,z) VALUES (9223372036854775807, 9223372036854775808, 9223372036854775808);

您會(huì)注意到所有值都在最大值上。由于 x 列設(shè)置為 AUTO_INCREMENT,因此向其添加值將失敗。

INSERT INTO examples(y,z) VALUES (9223372036854775808, 9223372036854775808);
ERROR 1062 (23000): Duplicate entry '9223372036854775807' for key 'examples.PRIMARY'

但是,如果在 MySQL 中禁用了嚴(yán)格模式,您可以插入超出范圍的值。

SELECT * FROM examples;

結(jié)論

在本教程中,我們討論了 MySQL BININT 類型及其各種屬性的范圍。

到此這篇關(guān)于MySQL中BIGINT數(shù)據(jù)類型如何存儲(chǔ)整數(shù)值的文章就介紹到這了,更多相關(guān)MySQL BIGINT數(shù)據(jù)類型內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入Mysql,SqlServer,Oracle主鍵自動(dòng)增長的設(shè)置詳解

    深入Mysql,SqlServer,Oracle主鍵自動(dòng)增長的設(shè)置詳解

    本篇文章是對Mysql,SqlServer,Oracle主鍵自動(dòng)增長的設(shè)置進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • mysql 表索引的一些要點(diǎn)

    mysql 表索引的一些要點(diǎn)

    這篇文章主要介紹了mysql 表索引的一些注意事項(xiàng),mysql默認(rèn)優(yōu)化不如sqlserver,所以需要優(yōu)化,而一些成熟的cms為了利益,也不會(huì)幫大家數(shù)據(jù)庫優(yōu)化的很好,需要自己另外設(shè)置
    2013-11-11
  • MySQL中UUID主鍵的優(yōu)化小結(jié)

    MySQL中UUID主鍵的優(yōu)化小結(jié)

    UUID可以唯一標(biāo)識(shí)記錄,因此有些場景可能會(huì)用來作為表的主鍵,本文主要介紹了MySQL中UUID主鍵的優(yōu)化小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-09-09
  • mysql5.7.19 解壓版安裝教程詳解(附送純凈破解中文版SQLYog)

    mysql5.7.19 解壓版安裝教程詳解(附送純凈破解中文版SQLYog)

    Mysql5.7.19版本是今年新推出的版本,最近幾個(gè)版本的MySQL都不再是安裝版,都是解壓版了,大家在使用過程中遇到很多問題,下面小編給大家?guī)砹薓ySQL5.7.19 解壓版安裝教程詳解,感興趣的朋友一起看看吧
    2017-10-10
  • Mysql事務(wù)隔離級(jí)別之讀提交詳解

    Mysql事務(wù)隔離級(jí)別之讀提交詳解

    這篇文章主要介紹了Mysql事務(wù)隔離級(jí)別之讀提交詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-01-01
  • MySQL安裝出現(xiàn)The?configuration?for?MySQL?Server?8.0.28?has?failed.?You?can...錯(cuò)誤的解決辦法

    MySQL安裝出現(xiàn)The?configuration?for?MySQL?Server?8.0.28?has

    這篇文章主要給大家介紹了MySQL安裝出現(xiàn)The?configuration?for?MySQL?Server?8.0.28?has?failed.?You?can...錯(cuò)誤的解決辦法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • SQL面試之WHERE?1=1到底是什么意思詳解

    SQL面試之WHERE?1=1到底是什么意思詳解

    這篇文章主要給大家介紹了關(guān)于SQL面試之WHERE?1=1到底是什么意思的相關(guān)資料,WHERE 1=1子句只是一些開發(fā)人員采用的一種慣性做法,以簡化靜態(tài)和動(dòng)態(tài)形式的SQL語句的使用,文中介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • SQL多表多字段比對方法實(shí)例代碼

    SQL多表多字段比對方法實(shí)例代碼

    有時(shí)候正式庫和測試庫同一個(gè)表有字段有差異,會(huì)造成各種錯(cuò)誤,下面這篇文章主要給大家介紹了關(guān)于SQL多表多字段比對方法的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Linux系統(tǒng)下MySQL的初始化和配置指南

    Linux系統(tǒng)下MySQL的初始化和配置指南

    當(dāng)MySQL的系統(tǒng)庫(mysql系統(tǒng)庫)發(fā)生故障或需要新加一個(gè)mysql實(shí)例時(shí),需要初始化mysql數(shù)據(jù)庫,這篇文章主要給大家介紹了關(guān)于Linux系統(tǒng)下MySQL的初始化和配置指南的相關(guān)資料,需要的朋友可以參考下
    2023-11-11

最新評論

靖安县| 保定市| 武隆县| 略阳县| 平安县| 且末县| 黄梅县| 东乌珠穆沁旗| 菏泽市| 阿鲁科尔沁旗| 八宿县| 进贤县| 祥云县| 邹城市| 长治市| 庄河市| 繁昌县| 古浪县| 铜山县| 依安县| 武鸣县| 淮阳县| 中西区| 镇雄县| 竹山县| 安多县| 原阳县| 望奎县| 高密市| 贵德县| 义马市| 光山县| 台北县| 沾益县| 泾阳县| 海城市| 陆丰市| 绍兴县| 大邑县| 来安县| 雷州市|