国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql int指的是哪些

2024-07-24 12:34:25
字體:
來源:轉載
供稿:網友
  mysql int類型
 
  在mysql中,int是標準整數類型,可以代表普通大小的整數,占4個字節。可以在沒有分數分量的情況下寫入整數,例如,它是1,100,4,-10等,并且它不能是1.2,5 / 3等。整數可以是零,正和負。
 
  MySQL支持所有標準SQL整數類型INTEGER或INT和SMALLINT。另外,MySQL提供  了標準SQL TINYINT MEDIUMINT,并BIGINT 作為標準SQL的擴展。
 
  MySQL INT 數據類型可以是有符號和無符號的。下表說明了每種整數類型的特征,包括以字節為單位的存儲,最小值和最大值。
 
  類型 存儲(字節) 有符號 無符號
  最小值 最大值 最小值 最大值
  TINYINT 1 -128(-24) 127(24) 0 255(28)
  SMALLINT 2 -32768(-28) 32767(-28) 0 65535(-216)
  MEDIUMINT 3 -8388608(-212) 8388607(-212) 0 16777215(-224)
  INT 4 -2147483648(-216) 2147483647(-216) 0 4294967295(-232)
  BIGINT 8 -9223372036854775808(-232) 9223372036854775807(-232) 0 18446744073709551615(-264)
  在列中使用INT
 
  因為整數類型表示確切的數字,所以通常將它用作表的主鍵。此外,INT列可以具有 AUTO_INCREMENT 屬性。
 
  當你 插入一個NULL值或0到INT AUTO_INCREMENT列,列的值設置為下一個序列值。請注意,序列值以1開頭。
 
  當您向AUTO_INCREMENT列中插入一個非零或零值時,列將接受NULL值。此外,序列被重置為插入值的下一個值。
 
  讓我們看一個使用帶AUTO_INCREMENT  屬性的整數列的表的示例  。
 
  首先,使用以下語句創建一個新表items以整數列作為主鍵:
 
  CREATE TABLE items (
      item_id INT AUTO_INCREMENT PRIMARY KEY,
      item_text VARCHAR(255)
  );
  您可以在CREATE TABLE上使用INT或INTEGER,因為它們相等的。無論何時向items表中插入新行,item_id列的值都會增加1。
 
  接下來,以下INSERT語句在items表中插入三行。
 
  INSERT INTO items(item_text)
  VALUES('laptop'), ('mouse'),('headphone');
  然后,使用以下SELECT語句從items表中查詢數據:
 
  SELECT
      *
  FROM
      items;
 
  之后,插入一個新行,明確指定item_id的值。
 
  INSERT INTO items(item_id,item_text)
  VALUES(10,'Server');
  由于item_id列的當前值為  10,序列將重置為11.如果插入新行,則AUTO_INCREMENT列將使用11作為下一個值。
 
  INSERT INTO items(item_text)
  VALUES('Router');
  最后,再次查詢items表的數據以查看結果。
 
  SELECT
      *
  FROM
      items;
 
  注意:自MySQL 5.1以來,AUTO_INCREMENT列僅接受正值。AUTO_INCREMENT列不支持負值  。
 
  MySQL INT和顯示寬度屬性
 
  MySQL提供了一個擴展,允許您指定顯示寬度和INT數據類型。顯示寬度包含在INT關鍵字后面的括號內,例如,INT(5)指定INT顯示寬度為五位的a。
 
  請務必注意,display width屬性不控制列可以存儲的值范圍。應用程序通常使用display width屬性來格式化整數值。MySQL包含display width屬性作為返回結果集的元數據。
 
  MySQL INT具有ZEROFILL屬性
 
  除了顯示寬度,MySQL還提供了非標準ZEROFILL 屬性。在這種情況下,MySQL將空格替換為零。請考慮以下示例。
 
  首先,zerofill_tests使用以下語句創建一個名為的表:
 
  CREATE TABLE zerofill_tests(
      id INT AUTO_INCREMENT PRIMARY KEY,
      v1 INT(2) ZEROFILL,
      v2 INT(3) ZEROFILL,
      v3 INT(5) ZEROFILL
  );
  其次,在zerofill_tests表中插入一個新行。
 
  INSERT into zerofill_tests(v1,v2,v3)
  VALUES(1,6,9);
  第三,從zerofill_tests表中查詢數據。
 
  SELECT
      v1, v2, v3
  FROM
      zerofill_tests;
 
  v1列的顯示寬度為2的ZEROFILL.因此它的值為1,因此,您可以在輸出中看到01。MySQL將第一個空格替換為0。
 
  v2列的顯示寬度為3的 ZEROFILL。因此,它的值為6,其它值以00填充。
 
  v3列的顯示寬度為5 的ZEROFILL,而其值為9,因此MySQL 在輸出中的0000數字的開頭填充。
 
  注意:如果ZEROFILL對整數列使用屬性,MySQL將自動向列添加 UNSIGNED屬性。
 
  到此,相信大家對“mysql int指的是什么”有了更深的了解,不妨來實際操作一番吧!

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 富锦市| 教育| 金寨县| 淳化县| 江永县| 滁州市| 庆阳市| 砀山县| 东兰县| 威海市| 绥宁县| 宁蒗| 逊克县| 黄石市| 梁平县| 临沂市| 苏尼特左旗| 汪清县| 射阳县| 鱼台县| 东阿县| 古交市| 惠东县| 玉田县| 永仁县| 东台市| 沙洋县| 万山特区| 临清市| 万载县| 吴川市| 蒲江县| 盈江县| 两当县| 德令哈市| 通化市| 宝兴县| 高唐县| 溆浦县| 孟州市| 中西区|