學(xué)習(xí)筆記1:數(shù)據(jù)庫類型(SQL與MySQL的區(qū)別)
瀏覽量:3940
- SQL Server 數(shù)據(jù)類型
Character 字符串:
數(shù)據(jù)類型 |
描述 |
存儲 |
char(n) |
固定長度的字符串。最多8,000 個(gè)字符。 |
n |
varchar(n) |
可變長度的字符串。最多8,000 個(gè)字符。 |
|
varchar(max) |
可變長度的字符串。最多1,073,741,824 個(gè)字符。 |
|
text |
可變長度的字符串。最多2GB 字符數(shù)據(jù)。 |
Unicode 字符串:
數(shù)據(jù)類型 |
描述 |
存儲 |
nchar(n) |
固定長度的Unicode 數(shù)據(jù)。最多4,000 個(gè)字符。 |
|
nvarchar(n) |
可變長度的Unicode 數(shù)據(jù)。最多4,000 個(gè)字符。 |
|
nvarchar(max) |
可變長度的Unicode 數(shù)據(jù)。最多536,870,912 個(gè)字符。 |
|
ntext |
可變長度的Unicode 數(shù)據(jù)。最多2GB 字符數(shù)據(jù)。 |
Number 類型:
數(shù)據(jù)類型 |
描述 |
存儲 |
tinyint |
允許從0 到255 的所有數(shù)字。 |
1 字節(jié) |
smallint |
允許從-32,768 到32,767 的所有數(shù)字。 |
2 字節(jié) |
int |
允許從-2,147,483,648 到2,147,483,647 的所有數(shù)字。 |
4 字節(jié) |
bigint |
允許介于-9,223,372,036,854,775,808 和9,223,372,036,854,775,807 之間的所有數(shù)字。 |
8 字節(jié) |
Date 類型:
數(shù)據(jù)類型 |
描述 |
存儲 |
datetime |
從1753 年1 月1 日到9999 年12 月31 日,精度為3.33 毫秒。 |
8 bytes |
datetime2 |
從1753 年1 月1 日到9999 年12 月31 日,精度為100 納秒。 |
6-8 bytes |
smalldatetime |
從1900 年1 月1 日到2079 年6 月6 日,精度為1 分鐘。 |
4 bytes |
date |
僅存儲日期。從0001 年1 月1 日到9999 年12 月31 日。 |
3 bytes |
time |
僅存儲時(shí)間。精度為100 納秒。 |
3-5 bytes |
datetimeoffset |
與datetime2 相同,外加時(shí)區(qū)偏移。 |
8-10 bytes |
timestamp |
存儲唯一的數(shù)字,每當(dāng)創(chuàng)建或修改某行時(shí),該數(shù)字會更新。timestamp 基于內(nèi)部時(shí)鐘,不對應(yīng)真實(shí)時(shí)間。每個(gè)表只能有一個(gè)timestamp 變量。 |
其他數(shù)據(jù)類型:
數(shù)據(jù)類型 |
描述 |
sql_variant |
存儲最多8,000 字節(jié)不同數(shù)據(jù)類型的數(shù)據(jù),除了text、ntext 以及timestamp。 |
uniqueidentifier |
存儲全局標(biāo)識符(GUID)。 |
xml |
存儲XML 格式化數(shù)據(jù)。最多2GB。 |
cursor |
存儲對用于數(shù)據(jù)庫操作的指針的引用。 |
table |
存儲結(jié)果集,供稍后處理。 |
MySQL 數(shù)據(jù)類型
在MySQL 中,有三種主要的類型:文本、數(shù)字和日期/時(shí)間類型。
Text 類型:
數(shù)據(jù)類型 |
描述 |
CHAR(size) |
保存固定長度的字符串(可包含字母、數(shù)字以及特殊字符)。在括號中指定字符串的長度。最多255 個(gè)字符。 |
VARCHAR(size) |
保存可變長度的字符串(可包含字母、數(shù)字以及特殊字符)。在括號中指定字符串的最大長度。最多255 個(gè)字符。 注釋:如果值的長度大于255,則被轉(zhuǎn)換為TEXT 類型。 |
TINYTEXT |
存放最大長度為255 個(gè)字符的字符串。 |
TEXT |
存放最大長度為65,535 個(gè)字符的字符串。 |
BLOB |
用于BLOBs (Binary Large OBjects)。存放最多65,535 字節(jié)的數(shù)據(jù)。 |
MEDIUMTEXT |
存放最大長度為16,777,215 個(gè)字符的字符串。 |
MEDIUMBLOB |
用于BLOBs (Binary Large OBjects)。存放最多16,777,215 字節(jié)的數(shù)據(jù)。 |
LONGTEXT |
存放最大長度為4,294,967,295 個(gè)字符的字符串。 |
LONGBLOB |
用于BLOBs (Binary Large OBjects)。存放最多4,294,967,295 字節(jié)的數(shù)據(jù)。 |
ENUM(x,y,z,etc.) |
允許你輸入可能值的列表。可以在ENUM 列表中列出最大65535 個(gè)值。如果列表中不存在插入的值,則插入空值。 注釋:這些值是按照你輸入的順序存儲的。 可以按照此格式輸入可能的值:ENUM('X','Y','Z') |
SET |
與ENUM 類似,SET 最多只能包含64 個(gè)列表項(xiàng),不過SET 可存儲一個(gè)以上的值。 |
Number 類型:
數(shù)據(jù)類型 |
描述 |
TINYINT(size) |
-128 到127 常規(guī)。0 到255 無符號*。在括號中規(guī)定最大位數(shù)。 |
SMALLINT(size) |
-32768 到32767 常規(guī)。0 到65535 無符號*。在括號中規(guī)定最大位數(shù)。 |
MEDIUMINT(size) |
-8388608 到8388607 普通。0 to 16777215 無符號*。在括號中規(guī)定最大位數(shù)。 |
INT(size) |
-2147483648 到2147483647 常規(guī)。0 到4294967295 無符號*。在括號中規(guī)定最大位數(shù)。 |
BIGINT(size) |
-9223372036854775808 到9223372036854775807 常規(guī)。0 到18446744073709551615 無符號*。在括號中規(guī)定最大位數(shù)。 |
FLOAT(size,d) |
帶有浮動小數(shù)點(diǎn)的小數(shù)字。在括號中規(guī)定最大位數(shù)。在d 參數(shù)中規(guī)定小數(shù)點(diǎn)右側(cè)的最大位數(shù)。 |
DOUBLE(size,d) |
帶有浮動小數(shù)點(diǎn)的大數(shù)字。在括號中規(guī)定最大位數(shù)。在d 參數(shù)中規(guī)定小數(shù)點(diǎn)右側(cè)的最大位數(shù)。 |
DECIMAL(size,d) |
作為字符串存儲的DOUBLE 類型,允許固定的小數(shù)點(diǎn)。 |
* 這些整數(shù)類型擁有額外的選項(xiàng)UNSIGNED。通常,整數(shù)可以是負(fù)數(shù)或正數(shù)。如果添加UNSIGNED 屬性,那么范圍將從0 開始,而不是某個(gè)負(fù)數(shù)。
Date 類型:
數(shù)據(jù)類型 |
描述 |
DATE() |
日期。格式:YYYY-MM-DD 注釋:支持的范圍是從'1000-01-01' 到'9999-12-31' |
DATETIME() |
*日期和時(shí)間的組合。格式:YYYY-MM-DD HH:MM:SS 注釋:支持的范圍是從'1000-01-01 00:00:00' 到'9999-12-31 23:59:59' |
TIMESTAMP() |
*時(shí)間戳。TIMESTAMP 值使用Unix 紀(jì)元('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() |
時(shí)間。格式:HH:MM:SS注釋:支持的范圍是從'-838:59:59' 到'838:59:59' |
YEAR() |
2 位或4 位格式的年。 注釋:4 位格式所允許的值:1901 到2155。2 位格式所允許的值:70 到69,表示從1970 到2069。 |
* 即便DATETIME 和TIMESTAMP 返回相同的格式,它們的工作方式很不同。在INSERT 或UPDATE 查詢中,TIMESTAMP 自動把自身設(shè)置為當(dāng)前的日期和時(shí)間。TIMESTAMP 也接受不同的格式,比如YYYYMMDDHHMMSS、YYMMDDHHMMSS、YYYYMMDD 或YYMMDD。
以上表格中,紅色的是今天主要用到的數(shù)據(jù)類型。