SQL入門教學手冊login
SQL入門教學手冊
作者:php.cn  更新時間:2022-04-12 14:15:40

SQL DB資料型別



Microsoft Access、MySQL 和 SQL Server 所使用的資料類型和範圍。


Microsoft Access 資料類型

##說明說明TextMemo註解:ByteIntegerLongSingleDoubleCurrency提示:AutoNumberDate/TimeYes/No註解:Ole ObjectHyperlinkLookup Wizard#

MySQL 資料類型

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

Text 類型:

資料類型##儲存
用於文字或文字與數字的組合。最多 255 個字元。
Memo 用於更大數量的文字。最多儲存 65,536 個字元。 無法對 memo 欄位進行排序。不過它們是可搜尋的。
允許 0 到 255 的數字。 1 位元組
允許介於 -32,768 與 32,767 之間的全部數字。 2 位元組
允許介於 -2,147,483,648 與 2,147,483,647 之間的全部數字。 4 位元組
單一精確度浮點。處理大多數小數。 4 位元組
雙精確度浮點。處理大多數小數。 8 位元組
用於貨幣。支援 15 位的元,外加 4 位小數。 您可以選擇使用哪個國家的貨幣。 8 位元組
#AutoNumber 欄位會自動為每筆記錄指派數字,通常從 1 開始。 4 位元組
#用於日期和時間8 位元組
邏輯字段,可以顯示為Yes/No、True/False 或On/Off。在程式碼中,使用常數 True 和 False (等價於 1 和 0)。 Yes/No 欄位中不允許Null 值1 位元
可以儲存圖片、音訊、影片或其他BLOBs(Binary Large OBjects)。 最多 1GB
#包含指向其他文件的鏈接,包括網頁。
#可讓您建立一個可從下拉清單中進行選擇的選項清單。 4 位元組
#資料類型描述
CHAR(size)儲存固定長度的字串(可包含字母、數字以及特殊字元)。在括號中指定字串的長度。最多 255 個字元。
VARCHAR(size)儲存可變長度的字串(可包含字母、數字以及特殊字元)。在括號中指定字串的最大長度。最多 255 個字元。 註解:如果值的長度大於 255,則轉換為 TEXT 類型。
TINYTEXT存放最大長度為 255 個字元的字串。
TEXT存放最大長度為 65,535 個字元的字串。
BLOB用於 BLOBs(Binary Large OBjects)。存放最多 65,535 位元組的資料。
MEDIUMTEXT存放最大長度為 16,777,215 個字元的字串。
MEDIUMBLOB用於 BLOBs(Binary 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)-128 到127 常規。 0 到 255 無符號*。在括號中規定最大位數。 SMALLINT(size)-32768 到 32767 常規。 0 到 65535 無符號*。在括號中規定最大位數。 MEDIUMINT(size)-8388608 到 8388607 普通。 0 至 16777215 無符號*。在括號中規定最大位數。 INT(size)-2147483648 到 2147483647 常規。 0 到 4294967295 無符號*。在括號中規定最大位數。 BIGINT(size)-9223372036854775808 到 9223372036854775807 常規。 0 到 18446744073709551615 無符號*。在括號中規定最大位數。 FLOAT(size,d)有浮動小數點的小數字。在 size 參數中規定最大位數。在 d 參數中規定小數點右邊的最大位數。 DOUBLE(size,d)有浮動小數點的大數字。在 size 參數中規定最大位數。在 d 參數中規定小數點右邊的最大位數。 DECIMAL(size,d)作為字串儲存的 DOUBLE 類型,允許固定的小數點。在 size 參數中規定最大位數。在 d 參數中規定小數點右邊的最大位數。
資料類型描述
*這些整數型別擁有額外的選項 UNSIGNED。通常,整數可以是負數或正數。如果加入 UNSIGNED 屬性,那麼範圍將從 0 開始,而不是某個負數。

Date 類型:

#資料型別說明DATE()日期。格式:YYYY-MM-DD#DATETIME()*日期和時間的組合。格式:YYYY-MM-DD HH:MM:SSTIMESTAMP()*時間戳。 TIMESTAMP 值使用 Unix 紀元('1970-01-01 00:00:00' UTC) 至今的秒數來儲存。格式:YYYY-MM-DD HH:MM:SSTIME()時間。格式:HH:MM:SS#YEAR()2 位元或4 位元格式的年。 #

*即便 DATETIME 和 TIMESTAMP 回傳相同的格式,它們的運作方式很不同。在 INSERT 或 UPDATE 查詢中,TIMESTAMP 會自動把自己設定為目前的日期和時間。 TIMESTAMP 也接受不同的格式,例如 YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD 或 YYMMDD。


SQL Server 資料類型

String 類型:

註解:支援的範圍是從'1000-01-01' 到'9999-12-31'

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

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

註解:支援的範圍是從'-838:59:59' 到'838:59:59'

註解:4 位元格式所允許的值:1901 到 2155。2 位元格式所允許的值:70 到 69,表示從 1970 到 2069。

資料類型描述儲存
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允許0、1 或NULL
binary(n)固定長度的二進位字串。最多 8,000 位元組。
varbinary可變長度的二進位字串。最多 8,000 位元組。
varbinary(max)#可變長度的二進位字串。最多 2GB。
image可變長度的二進位字串。最多 2GB。

Number 類型:

1 位元組2 位元組4 位元組8 位元組s 參數指示小數點右邊儲存的最大位數。 s 必須是 0 到 p 之間的值。預設是 0。 5-17 位元組s 參數指示小數點右邊儲存的最大位數。 s 必須是 0 到 p 之間的值。預設是 0。 5-17 位元組4 位元組8 位元組n 參數指示該欄位保存 4 位元組還是 8 位元組。 float(24) 保存 4 位元組,而 float(53) 則保存 8 位元組。 n 的預設值是 53。 4 或 8 位元組4 位元組
資料型別說明儲存
#tinyint允許從0 到255 的所有數字。
smallint允許介於 -32,768 與 32,767 的所有數字。
int允許介於 -2,147,483,648 與 2,147,483,647 的所有數字。
bigint允許介於 -9,223,372,036,854,775,808 與 9,223,372,036,854,775,808 與 9,223,372,036,854,775,807 之間的所有數字。
decimal(p,s)

固定精度和比例的數字。

允許從 -10^38 +1 到 10^38 -1 之間的數字。

p 參數指示可以儲存的最大位數(小數點左邊和右邊)。 p 必須是 1 到 38 之間的值。預設是 18。

numeric(p,s)

固定精確度和比例的數字。

允許從 -10^38 +1 到 10^38 -1 之間的數字。

p 參數指示可以儲存的最大位數(小數點左邊和右邊)。 p 必須是 1 到 38 之間的值。預設是 18。

smallmoney介於 -214,748.3648 與 214,748.3647 之間的貨幣資料。
money 介於 -922,337,203,685,477.5808 與 922,337,203,685,477.5807 之間的貨幣資料。
float(n)

從 -1.79E + 308 到 1.79E + 308 的浮動精度數字資料。
real從 -3.40E + 38 到 3.40E + 38 的浮動精度數字資料。
#######

Date 類型:

8 位元組6-8 位元組4 位元組3 bytes3-5 位元組8-10 位元組 
資料型別說明儲存
#datetime從1753 年1 月1 日到9999 年12 月31 日,精度為3.33 毫秒。
datetime2#從 1753 年 1 月 1 日 到 9999 年 12 月 31 日,精確度為 100 奈秒。
smalldatetime從 1900 年 1 月 1 日 到 2079 年 6 月 6 日,精確度為 1 分鐘。
date僅儲存日期。從 0001 年 1 月 1 日 到 9999 年 12 月 31 日。
time僅儲存時間。精度為 100 奈秒。
datetimeoffset與 datetime2 相同,外加時區偏移。
timestamp儲存唯一的數字,每當建立或修改某行時,該數字會更新。 timestamp 值基於內部時鐘,不對應真實時間。每個表只能有一個 timestamp 變數。

其他資料類型:##資料類型描述sql_variant儲存最多8,000 位元組不同資料類型的數據,除了text、ntext 以及timestamp。 uniqueidentifier儲存全域唯一識別碼 (GUID)。 xml儲存 XML 格式化資料。最多 2GB。 cursor儲存對用於資料庫操作的指標的參考。 table儲存結果集,供稍後處理。
###

PHP中文網