各種SQL數據庫的數據類型

各種SQL數據庫的數據類型

Microsoft AccessMySQLSQL Server所使用的數據類型和範圍。

 

Microsoft Access 數據類型

數據類型

描述

存儲

Text

用於文本或文本與數字的組合。最多 255 個字符。

 

Memo

Memo 用於更大數量的文本。最多存儲 65,536 個字符。註釋:無法對 memo 字段進行排序。不過它們是可搜索的。

 

Byte

允許 0 到 255 的數字。

1 字節

Integer

允許介於 -32,768 與 32,767 之間的全部數字。

2 字節

Long

允許介於 -2,147,483,648 與 2,147,483,647 之間的全部數字。

4 字節

Single

單精度浮點。處理大多數小數。

4 字節

Double

雙精度浮點。處理大多數小數。

8 字節

Currency

用於貨幣。支持 15 位的元,外加 4 位小數。提示:您可以選擇使用哪個國家的貨幣。

8 字節

AutoNumber

AutoNumber 字段自動爲每條記錄分配數字,通常從 1 開始。

4 字節

Date/Time

用於日期和時間

8 字節

Yes/No

邏輯字段,可以顯示爲 Yes/No、True/False 或 On/Off。在代碼中,使用常量 True 和 False (等價於 1 和 0)。註釋:Yes/No 字段中不允許 Null 值

1 比特

Ole Object

可以存儲圖片、音頻、視頻或其他 BLOBs(Binary Large OBjects)。

最多1GB

Hyperlink

包含指向其他文件的鏈接,包括網頁。

 

Lookup Wizard

允許您創建一個可從下拉列表中進行選擇的選項列表。

4 字節

 

 

 

MySQL 數據類型

MySQL 中,有三種主要的類型:Text(文本)、Number(數字)和 Date/Time(日期/時間)類型。

Text 類型

數據類型

描述

CHAR(size)

保存固定長度字符串(可包含字母、數字以及特殊字符)。在括號中指定字符串長度。最多 255 字符。

VARCHAR(size)

保存可變長度的字符串(可包含字母、數字以及特殊字符)。在括號中指定字符串的最大長度。最多 255 個字符。註釋:如果值的長度大於 255,則被轉換爲 TEXT 類型。

TINYTEXT

存放最大長度爲 255 個字符的字符串。

TEXT

存放最大長度爲 65,535 個字符的字符串。

BLOB

用於 BLOBsBinary Large OBjects)。存放最多 65,535 字節的數據。

MEDIUMTEXT

存放最大長度爲 16,777,215 個字符的字符串。

MEDIUMBLOB

用於 BLOBsBinary Large OBjects)。存放最多 16,777,215 字節的數據。

LONGTEXT

存放最大長度爲 4,294,967,295 個字符的字符串。

LONGBLOB

用於 BLOBs (Binary Large OBjects)。存放最多 4,294,967,295 字節的數據。

ENUM(x,y,z,etc.)

允許您輸入可能值的列表。可以在 ENUM 列表中列出最大 65535 個值。如果列表中不存在插入的值,則插入空值。

註釋:這些值是按照您輸入的順序排序的。

可以按照此格式輸入可能的值: ENUM('X','Y','Z')

SET

ENUM 類似,不同的是,SET 最多隻能包含 64 個列表項且 SET 可存儲一個以上的選擇。

Number 類型

數據類型

描述

TINYINT(size)

帶符號-128127 ,無符號0255

SMALLINT(size)

帶符號範圍-3276832767,無符號065535, size 默認爲 6

MEDIUMINT(size)

帶符號範圍-83886088388607,無符號的範圍是016777215 size 默認爲9

INT(size)

帶符號範圍-21474836482147483647,無符號的範圍是04294967295 size 默認爲 11

BIGINT(size)

帶符號的範圍是-92233720368547758089223372036854775807,無符號的範圍是018446744073709551615size 默認爲 20

FLOAT(size,d)

帶有浮動小數點的小數字。在 size 參數中規定顯示最大位數。在 d 參數中規定小數點右側的最大位數。

DOUBLE(size,d)

帶有浮動小數點的大數字。在 size 參數中規顯示定最大位數。在 d 參數中規定小數點右側的最大位數。

DECIMAL(size,d)

作爲字符串存儲的 DOUBLE 類型,允許固定的小數點。在 size 參數中規定顯示最大位數。在 d 參數中規定小數點右側的最大位數。

注意:以上的 size 代表的並不是存儲在數據庫中的具體的長度,如 int(4) 並不是只能存儲4個長度的數字。

實際上int(size)所佔多少存儲空間並無任何關係。int(3)int(4)int(8) 在磁盤上都是佔用 4 btyes 的存儲空間。就是在顯示給用戶的方式有點不同外,int(M) int 數據類型是相同的。

例如:

int的值爲10(指定zerofill);

int9)顯示結果爲000000010

int3)顯示結果爲010

就是顯示的長度不一樣而已,都是佔用四個字節的空間。

Date 類型

數據類型

描述

DATE()

日期。格式:YYYY-MM-DD

註釋:支持的範圍是從 '1000-01-01' '9999-12-31'

DATETIME()

*日期和時間的組合。格式:YYYY-MM-DD HH:MM:SS

註釋:支持的範圍是從 '1000-01-01 00:00:00' '9999-12-31 23:59:59'

TIMESTAMP()

*時間戳。TIMESTAMP 值使用 Unix 紀元('1970-01-01 00:00:00' UTC) 至今的秒數來存儲。格式:YYYY-MM-DD HH:MM:SS

註釋:支持的範圍是從 '1970-01-01 00:00:01' UTC '2038-01-09 03:14:07' UTC

TIME()

時間。格式:HH:MM:SS

註釋:支持的範圍是從 '-838:59:59' '838:59:59'

YEAR()

2 位或 4 位格式的年。

註釋:4 位格式所允許的值:1901 21552 位格式所允許的值:70 69,表示從 1970 2069

*即便 DATETIME TIMESTAMP 返回相同的格式,它們的工作方式很不同。在 INSERT UPDATE 查詢中,TIMESTAMP 自動把自身設置爲當前的日期和時間。TIMESTAMP 也接受不同的格式,比如 YYYYMMDDHHMMSSYYMMDDHHMMSSYYYYMMDD YYMMDD

 

 

SQL Server 數據類型

String 類型

數據類型

描述

存儲

char(n)

固定長度的字符串。最多 8,000 個字符。

Defined width

varchar(n)

可變長度的字符串。最多 8,000 個字符。

2 bytes + number of chars

varchar(max)

可變長度的字符串。最多 1,073,741,824 個字符。

2 bytes + number of chars

text

可變長度的字符串。最多 2GB 文本數據。

4 bytes + number of chars

nchar

固定長度的 Unicode 字符串。最多 4,000 個字符。

Defined width x 2

nvarchar

可變長度的 Unicode 字符串。最多 4,000 個字符。

 

nvarchar(max)

可變長度的 Unicode 字符串。最多 536,870,912 個字符。

 

ntext

可變長度的 Unicode 字符串。最多 2GB 文本數據。

 

bit

允許 01 NULL

 

binary(n)

固定長度的二進制字符串。最多 8,000 字節。

 

varbinary

可變長度的二進制字符串。最多 8,000 字節。

 

varbinary(max)

可變長度的二進制字符串。最多 2GB

 

image

可變長度的二進制字符串。最多 2GB

 

Number 類型

數據類型

描述

存儲

tinyint

允許從 0 255 的所有數字。

1 字節

smallint

允許介於 -32,768 32,767 的所有數字。

2 字節

int

允許介於 -2,147,483,648 2,147,483,647 的所有數字。

4 字節

bigint

允許介於 -9,223,372,036,854,775,808 9,223,372,036,854,775,807 之間的所有數字。

8 字節

decimal(p,s)

固定精度和比例的數字;允許從 -10^38 +1 10^38 -1 之間的數字。

p參數指示可存儲的最大位數(小數點左側和右側)。p必須是 1 38 之間的值。默認是18

s 參數指示小數點右側存儲的最大位數。s 必須是 0 p 之間的值。默認是 0

5-17 字節

numeric(p,s)

固定精度和比例的數字;允許從 -10^38 +1 10^38 -1 之間的數字。

p參數指示可存儲的最大位數(小數點左側和右側)。p必須是 1 38 之間的值。默認是18

s 參數指示小數點右側存儲的最大位數。s 必須是 0 p 之間的值。默認是 0

5-17 字節

smallmoney

介於 -214,748.3648 214,748.3647 之間的貨幣數據。

4 字節

money

介於 -922,337,203,685,477.5808 922,337,203,685,477.5807 之間的貨幣數據。

8 字節

float(n)

-1.79E + 308 1.79E + 308 的浮動精度數字數據;n參數指示該字段保存 4 字節還是 8 字節。float(24) 保存 4 字節,而 float(53) 保存 8 字節。n 的默認值是 53

4 8 字節

real

-3.40E + 38 3.40E + 38 的浮動精度數字數據。

4 字節

Date 類型

數據類型

描述

存儲

datetime

1753 1 1 9999 12 31 日,精度爲 3.33 毫秒。

8 字節

datetime2

1753 1 1 9999 12 31 日,精度爲 100 納秒。

6-8 字節

smalldatetime

1900 1 1 2079 6 6 日,精度爲 1 分鐘。

4 字節

date

僅存儲日期。從 0001 1 1 9999 12 31 日。

3 bytes

time

僅存儲時間。精度爲 100 納秒。

3-5 字節

datetimeoffset

datetime2 相同,外加時區偏移。

8-10 字節

timestamp

存儲唯一的數字,每當創建或修改某行時,該數字會更新。timestamp 值基於內部時鐘,不對應真實時間。每個表只能有一個 timestamp 變量。

 

其他數據類型:

數據類型

描述

sql_variant

存儲最多 8,000 字節不同數據類型的數據,除了 textntext 以及 timestamp

uniqueidentifier

存儲全局唯一標識符 (GUID)

xml

存儲 XML 格式化數據。最多 2GB

cursor

存儲對用於數據庫操作的指針的引用。

table

存儲結果集,供稍後處理。

【轉載】https://www.runoob.com/sql/sql-datatypes.html

發佈了858 篇原創文章 · 獲贊 667 · 訪問量 161萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章