2 MySQL中的資料型別

2021-09-24 20:12:07 字數 1835 閱讀 7483

mysql中的資料型別可以分為三類:

1.數值型別

型別(大寫)

大小範圍(有符號)

範圍(無符號)

用途tinyint

1位元組(-128,127)

(0,255)

小整數型

smallint

2位元組(-32768,32767)

(0,65535)

大整數型

mediumint

3位元組(-8388608,8388607)

(0,16777215)

大整數型

int/integer

4位元組(-2147483648,214748367)

(0,4294967295)

大整數型

bigint

8位元組(-9223372036854,775808,9223372 036854775807)

(0,18 446 744 073 709 551 615)

極大整數型

float

4位元組(-3.402 823 466 e+38,-1.175 494 351 e-38),0,(1.175 494 351 e-38,3.402 823 466 351 e+38)

0,(1.175 494 351 e-38,3.402 823 466 e+38)

單精度浮點數值

double

8位元組(-1.797 693 134 862 315 7 e+308,-2.225 073 858 507 201 4 e-308),0,(2.225 073 858 507 201 4 e-308,1.797 693 134 862 315 7 e+308)

0,(2.225 073 858 507 201 4 e-308,1.797 693 134 862 315 7 e+308)

雙精度浮點型

decimal(小數)

對decimal(m,d) ,如果m>d,為m+2否則為d+2

依賴於m和d的值

依賴於m和d的值

小數值2.日期/時間型別

型別大小

範圍格式

用途data

1000-01-01/9999-12-31

yyyy-mm-dd

日期值time

'-838:59:59'/'838:59:59'

hh:mm:ss

時間值或持續時間

year

1901/2155

yyyy

年份值datatime

1000-01-01 00:00:00/9999-12-31 23:59:59

yyyy-mm-dd hh:mm:ss

混合日期和時間值

timestamp

yyyymmdd hhmmss

混合日期和時間值,時間戳

每個時間型別有乙個有效範圍值和乙個零值,當指定不合法的mysql不能表示的值時使用零值。

3.字串型別

型別大小

用途char

0-255位元組

定長字串

varchar

0-65535位元組

變長字元

char和varchar區別:

char(n) 若存入字元數小於n,則以空格補於其後,查詢之時再將空格去掉。所以 char 型別儲存的字串末尾不能有空格,varchar 不限於此

char(n) 固定長度,char(4) 不管是存入幾個字元,都將占用 4 個位元組,varchar 是存入的實際字元數 +1 個位元組(n<=255)或2個位元組(n>255),所以 varchar(4),存入 3 個字元將占用 4 個位元組

char 型別的字串檢索速度要比 varchar 型別的快

2 MySQL備份型別

備份是以防萬一的一種必要手段,在出現硬體損壞或非人為的因素而導致資料丟失時,可以使用備份恢復資料,以將損失降低到最小程度,因此備份是必須的。備份可以分為以下幾個型別。冷備份必須在資料庫停止的情況下進行備份,資料庫的讀寫操作不能執行。這種備份最為簡單,一般只需要複製相關的資料庫物理檔案即可。這種方式在...

MySQL資料型別2

較短的文字 char,varchar 較長的文字 text,blob 較大的二進位制,比如插入 特點 char char m 最大的字元數,可以省略,預設1 固定長度的字元 比較費空間 效率高 varchar varchar m 最大的字元數,不可省略m值 可變的長度 比較省空間 效率低 binar...

原創 2 MYSQL 之Connect型別

mysqlpp connect型別主要負責連線事宜,這是在所有開始mysql操作之前必須進行的 這是句廢話 該型別的主要的結果如下所示 通過檢視原始碼,我看到optionalexceptions就是乙個對於乙個表示 是否需要丟擲異常 的變數的包裝。在connection型別的內容,會在出現錯誤的時候...