mysql中資料的儲存範圍

2021-07-25 12:06:43 字數 1906 閱讀 4683

1、int 最多儲存10位數字,即-2147683648 到2147683647  4位元組 。當儲存的11111111111位數字後,將預設儲存int的最大值(2147683647);當儲存的-11111111111位數字後將預設儲存int的最小值(-2147683648);

2、char 定長字串 0~255位元組  同varchar

3、varchar 可變長字串 0~255位元組 ,當指定varchar(2)後,資料中執行以下sql

update test set name='x2321' where id='1'; 

update test set name='您好世界' where id='1'; 

表中儲存的資料name=『x2』,name='您好',後面的字元被省略,注意無論漢字還是英文本元都只算乙個字元

日期和時間資料型別

mysql資料型別

含義date

3位元組,日期,格式:2014-09-18

time

3位元組,時間,格式:08:42:30

datetime

8位元組,日期時間,格式:2014-09-18 08:42:30

timestamp

4位元組,自動儲存記錄修改的時間

year

1位元組,年份

數值資料型別

整型

mysql資料型別

含義(有符號)

tinyint

1位元組,範圍(-128~127)

smallint

2位元組,範圍(-32768~32767)

mediumint

3位元組,範圍(-8388608~8388607)

int4位元組,範圍(-2147483648~2147483647)

bigint

8位元組,範圍(+-9.22*10的18次方)

浮點型

mysql資料型別

含義float(m, d)

4位元組,單精度浮點型,m總個數,d小數字

double(m, d)

8位元組,雙精度浮點型,m總個數,d小數字

decimal(m, d)

decimal是儲存為字串的浮點數

1.插入123.45678,最後查詢得到的結果為99.999;

2.插入123.456,最後查詢結果為99.999;

3.插入12.34567,最後查詢結果為12.346;

字串資料型別

mysql資料型別

含義char(n)

固定長度,最多255個字元

varchar(n)

可變長度,最多65535個字元

tinytext

可變長度,最多255個字元

text

可變長度,最多65535個字元

mediumtext

可變長度,最多2的24次方-1個字元

longtext

可變長度,最多2的32次方-1個字元

1.char(n)和varchar(n)中括號中n代表字元的個數,並不代表位元組個數,所以當使用了中文的時候(utf8)意味著可以插入m個中文,但是實際會占用m*3個位元組。

2.同時char和varchar最大的區別就在於char不管實際value都會占用n個字元的空間,而varchar只會占用實際字元應該占用的空間+1,並且實際空間+1<=n。

3.超過char和varchar的n設定後,字串會被截斷。

4.char的上限為255位元組,varchar的上限65535位元組,text的上限為65535。

5.char在儲存的時候會截斷尾部的空格,varchar和text不會。

6.varchar會使用1-3個位元組來儲存長度,text不會。

mysql常用資料型別及儲存範圍

型別 範圍位元組 位 備註char 1 255 受編碼格式影響,若為gbk,每個字元佔2個位元組,若為utf 8,每個字元最多占用3個位元組 utf 8下乙個字元占用1至3個位元組,字元長度固定 varchar 1 65535 受編碼格式影響 最多能存放65535個位元組,可變長度,可以設定最大長度...

MySQL中的範圍條件

從explain的輸出結果中很難區分mysql是要查詢範圍值 between,select from orders where id 10893 再看下面這條查詢語句 從explain的結果是無法區分這兩者的,但可以從值的範圍和多個等於條件來得出不同,在我們看來,第二個查詢就是多個等值條件查詢。這兩...

JSP中4中屬性的儲存範圍

1 page 只在乙個頁面中儲存屬性,跳轉後無效。2 request 只在一次請求中儲存屬性,伺服器跳轉後依然有效。3 session 在一次會話範圍中儲存,無論何種跳轉都可以使用,但是新開的瀏覽器無法使用。其操作方法如下 setattribute name 李明 設定屬性的名稱及內容。getatt...