1. 程式人生 > >Oracle數據庫類型

Oracle數據庫類型

ibm 時區 性別 序列 varchar2 mic 一行 定義 double

Oracle數據庫類型

字符類型
char[(length)] 定長字符 最長2000字節
varchar2[(length)] 可變長度的字符數據類型,最長4000字節
NCHAR[(length)] 固定長度的字符數據類型,由國際字符語言(national language Support,NLS)字符集字符組成,最長2000字節
LONG 可變長度的字符數據類型 最長2GB
RAW 原始的二進制數據類型,最長2000字節
long raw 原始的二進制數據類型,最長2GB
rawid 數據庫中一竄12字節地址,用於定位磁盤上某一行及其所指向的對象
urawid 通用的rawid,用於表,是一種行主鍵的表示
大對象
blob 大原始二進制對象,最大長度4GB
clob 大字符對象,最大長度4GB
nclob 由NLS字符集字符組成的大字符數據,最長長度4GB
bfile 提供對存儲在oracle數據庫之外的操作系統文件中的二進制文件訪問,最大4GB
日期類型
date 定寬的7字節的日期/時間數據類型,包含7個屬性:世紀、年、月、天、小時、分、秒
timestamp 7字節或12字節的定寬日期/時間數據類型,與DATE不同時可以包含小數秒,小數點最多可保留9位
timestamp with time zorn 提供對時區的支持
timestamp with local time zorn 對時區敏感的時間類型
interal year to month 存儲年月段,可對date和timestamp類型進行加減運算
interval day to second 存儲天/小時/分/秒時間段,支持9位小數秒
數據類型
number[(precision[,scale])] 範圍1~38
精度(precision) 數字中的數字位數
尾數(scale) 小數點右邊的數字位

oralce只提供一種數字類型:NUMBER 類型,oracle中存儲的所有數字數據多可當作number類型(10g後 支持binary_float,binary_double)。下面數據類型可與ANSI SQL兼容:
/**
ANSI SQL :美國國家標準化組織(ANSI)”是一個核準多種行業標準的組織。SQL作為關系型數據庫所使用的標準語言,最初是基於IBM的實現在1986年被批準的。1987年,“國際標準化組織(ISO)”把ANSI SQL作為國際標準。這個標準在1992年進行了修訂(SQL-92),1999年再次修訂(SQL-99)。目前最新的是SQL-2003。
**/
float
numberic
decimal
number
integer
int
smallint
double precision
real

DB2數據庫類型

db2提供自建數據類型,也支持自定義類型。如引用類型。

數字類型
smallint 2字節整數,5位精度,範圍-32768~32768
integer 4字節整數,10位精度,範圍 -2147483648~2147483647
bigint 占8字節存儲整數, 19位精度,範圍 -9223372036854775808~9223372036854775807
real 單精度浮點型 範圍 -3.402*10^38~-1.175*10^-37 或1.175*10^-37~3.402*10^38
double/float 雙精度浮點型 64位實數,範圍 -1.79769*10^308~-2.225*10^-307或2.225*10^-307~1.79769*10^308
dicimal/nunbric 最大精度支持小數點後31位

字符類型
CHAR 定長
VARCHAR 可變長,最長32672字節
long varchar 可變長,最長32700字節
clob 可變長,最大2GB字節

圖形類型(GRAPHIC STRINGS)
一組字節序列,用於呈現雙字節字符數據。(圖形的二進制存儲)
GRAHIC 定長
vargraphic 可變長

二進制類型
BLOB 可變長二進制存儲類型,最大達2GB字節
lobs 大對象存儲類型,BLOB,CLOB,DBCLOB等類型統稱

日期/時間類型
date 日期類型,由三部分組成,年月日,年的範圍0001~9999
time 時間類型,小時/分/秒
timestamp 時間類型,7部分組成(year,month,day,hour,minute,second,microsecend)

datalink 數據庫引用類型

xml數據類型,db2對xml的一種內部表示形式。只能作為函數輸入

用戶自定義類型
區別類型
eg.
create distinct type AUDIO as blb(1m) . 用AUDIOB表示BLOb(1M)這種數據類型

結構類型
1 type a directly uses type b
2.type a directyly uses some type c,and c indrectly uses type b

引用類型 與結構類型結合使用,用於對基本數據類型的公用表示類型的引用。

MySQL數據庫(整理與網絡詳,情可翻看相關手冊)
數據類型
1.整型(xxxint)
mysql數據類型 含義
tinyint(m) 1個字節表示(-128~127)
smallint(m) 2個字節表示(-32768~32767)
mediumint(m) 3個字節表示(-8388608~8388607)
int(m) 4個字節表示(-2147483648~2147483647)
bigint(m) 8個字節表示(+-9.22*10的18次方)
分為
SIGNEN: 有符整數,可存儲正數和負數,如 TINYINT SIGNED 表示的範圍是 -127 ~ 128
UNSIGNED: 無符整數,只能存儲正數,但是表示的值是有符整數的兩倍, 如 TINYINT UNSIGNED 表示的範圍是 0 ~ 255
有符整數和無符整數只有表示的值大小上的區別,存儲空間和效率上都是一樣的

2.浮點型(float和double)MySQL數據類型 含義
float(m,d) 單精度浮點型,8位精度(4字節),m是十進制數字的總個數,
d是小數點後面的數字個數。
double(m,d) 雙精度浮點型,16位精度(8字節)
3.定點數(decimal)
decimal(m,d) 定點類型
浮點型在數據庫中存放的是近似值,而定點類型在數據庫中存放的是精確值。參數m是定點類型數字的最大個數(精度),範圍為0~65,d小數點右側數字的個數,範圍為0~30,但不得超過m。
對定點數的計算能精確到65位數字。
4.字符串(char,varchar,xxxtext)
char(n) 固定長度的字符串,最多255個字符
varchar(n) 固定長度的字符串,最多65535個字符
tinytext 可變長度字符串,最多255個字符
text 可變長度字符串,最多65535個字符
mediumtext 可變長度字符串,最多2的24次方-1個字符
longtext 可變長度字符串,最多2的32次方-1個字符

5.日期時間類型(date,time,datetime,timestamp)
date 日期‘2008-12-2‘
time 時間‘12:25:36‘
datetime 日期時間‘2008-12-2 22:06:44‘
timestamp 不固定
6.BLOB和TEXT
BLOB和TEXT的唯一區別是BLOB保存二進制類型而且沒有字符集好排序規則,而TEXT保存字符文本,且有字符集和排序規則
它們的排序規則按照 max_short_length 規定長度的前若幹個字符進行排序
位集數據類型
7.位集
BIT: 最大 64 bit,一般用於保存一個true/false值,如BIT(1),占用 1 bit,遠小於使用字符表示
SET: 用於保存多個true/false值,可用於權限管理,效果見下圖
8.枚舉
ENUM: 類似於SET,但是只能插入1個值,一般可用來表示性別等唯一且範圍固定的屬性(男,女..)

SQL SERVER 數據庫

bit 0或1的整型數字
int 從-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型數字

smallint 從-2^15(-32,768)到2^15(32,767)的整型數字

tinyint 從0到255的整型數字
decimal 從-10^38到10^38-1的定精度與有效位數的數字

numeric decimal的同義詞
money 從-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,685,477.5807)的貨幣數據,最小貨幣單位千分之十

smallmoney 從-214,748.3648到214,748.3647的貨幣數據,最小貨幣單位千分之十
float 從-1.79E+308到1.79E+308可變精度的數字

real 從-3.04E+38到3.04E+38可變精度的數字
datetime 從1753年1月1日到9999年12日31的日期和時間數據,最小時間單位為百分之三秒或3.33毫秒

smalldatetime 從1900年1月1日到2079年6月6日的日期和時間數據,最小時間單位為分鐘
timestam 時間戳,一個數據庫寬度的唯一數字

uniqueidentifier 全球唯一標識符GUID

char 定長非Unicode的字符型數據,最大長度為8000

varchar 變長非Unicode的字符型數據,最大長度為8000

text 變長非Unicode的字符型數據,最大長度為2^31-1(2G)
nchar 定長Unicode的字符型數據,最大長度為8000
nvarchar 變長Unicode的字符型數據,最大長度為8000

ntexz 變長Unicode的字符型數據,最大長度為2^31-1(2G)

binary 定長二進制數據,最大長度為8000
varbinary 變長二進制數據,最大長度為8000

image 變長二進制數據,最大長度為2^31-1(2G)

Oracle數據庫類型