數據類型定義列中存放的值的種類。


SQL 通用數據類型

數據庫表中的每個列都要求有名稱和數據類型。Each column in a database table is required to have a name and a data type.

SQL 開發(fā)人員必須在創(chuàng)建 SQL 表時決定表中的每個列將要存儲的數據的類型。數據類型是一個標簽,是便于 SQL 了解每個列期望存儲什么類型的數據的指南,它也標識了 SQL 如何與存儲的數據進行交互。

下面的表格列出了 SQL 中通用的數據類型:

數據類型描述
CHARACTER(n)字符/字符串。固定長度 n。
VARCHAR(n) 或
CHARACTER VARYING(n)
字符/字符串??勺冮L度。最大長度 n。
BINARY(n)二進制串。固定長度 n。
BOOLEAN存儲 TRUE 或 FALSE 值
VARBINARY(n) 或
BINARY VARYING(n)
二進制串??勺冮L度。最大長度 n。
INTEGER(p)整數值(沒有小數點)。精度 p。
SMALLINT整數值(沒有小數點)。精度 5。
INTEGER整數值(沒有小數點)。精度 10。
BIGINT整數值(沒有小數點)。精度 19。
DECIMAL(p,s)精確數值,精度 p,小數點后位數 s。例如:decimal(5,2) 是一個小數點前有 3 位數小數點后有 2 位數的數字。
NUMERIC(p,s)精確數值,精度 p,小數點后位數 s。(與 DECIMAL 相同)
FLOAT(p)近似數值,尾數精度 p。一個采用以 10 為基數的指數計數法的浮點數。該類型的 size 參數由一個指定最小精度的單一數字組成。
REAL近似數值,尾數精度 7。
FLOAT近似數值,尾數精度 16。
DOUBLE PRECISION近似數值,尾數精度 16。
DATE存儲年、月、日的值。
TIME存儲小時、分、秒的值。
TIMESTAMP存儲年、月、日、小時、分、秒的值。
INTERVAL由一些整數字段組成,代表一段時間,取決于區(qū)間的類型。
ARRAY元素的固定長度的有序集合
MULTISET元素的可變長度的無序集合
XML存儲 XML 數據


SQL 數據類型快速參考手冊

然而,不同的數據庫對數據類型定義提供不同的選擇。

下面的表格顯示了各種不同的數據庫平臺上一些數據類型的通用名稱:

數據類型AccessSQLServerOracleMySQLPostgreSQL
booleanYes/NoBitByteN/ABoolean
integerNumber (integer)IntNumberInt
Integer
Int
Integer
floatNumber (single)Float
Real
NumberFloatNumeric
currencyCurrencyMoneyN/AN/AMoney
string (fixed)N/ACharCharCharChar
string (variable)Text (<256)
Memo (65k+)
VarcharVarchar
Varchar2
VarcharVarchar
binary objectOLE Object MemoBinary (fixed up to 8K)
Varbinary (<8K)
Image (<2GB)
Long
Raw
Blob
Text
Binary
Varbinary

lamp

注釋:在不同的數據庫中,同一種數據類型可能有不同的名稱。即使名稱相同,尺寸和其他細節(jié)也可能不同!請總是檢查文檔!