常見數(shù)據(jù)庫管理系統(tǒng)
商業(yè)化的有:Oracle、MSSQLServer、DB2、SybaseSQLServer、Informix
開源的有:MYSQL、SQLite、SimpleSQL、Berkely DB、Minosse、Firebird、HSQLDB等
這些數(shù)據(jù)庫產(chǎn)品的出現(xiàn)給了開發(fā)者更多的選擇余地,如:
Oracle或者DB2:系統(tǒng)對安全性、穩(wěn)定性以及售后技術(shù)支持要求非常高
MSSQLServer:系統(tǒng)只運(yùn)行在Windows操作系統(tǒng)下
MYSQL:免費(fèi)的
HSQLDB等嵌入式數(shù)據(jù)庫系統(tǒng):只是提供一個(gè)方便數(shù)據(jù)存取機(jī)制
各個(gè)數(shù)據(jù)庫管理系統(tǒng)支持的SQL語法是存在一定差異的,在Oracle下能夠成功運(yùn)行的SQL遷移到DB2下可能就無法運(yùn)行。
數(shù)據(jù)類型差異
整數(shù)類型:
MYSQL中整數(shù)相關(guān)的類型有:tinyint、smallint、mediumint、int、integer和bigint
MSSQLServer中整數(shù)相關(guān)的類型有:bit、int、smallint、tinyint 、bigint
Oracle中整數(shù)相關(guān)的類型有:number
DB2中整數(shù)相關(guān)的類型有:smallint、integer 、bigint
數(shù)值類型:
MYSQL中數(shù)值相關(guān)的類型有:float、double、real、decimal和numeric
MSSQLServer 中數(shù)值相關(guān)的類型有:decimal、numeric、money、smallmoney 、float 和real
Oracle中數(shù)值相關(guān)的類型有number
DB2中數(shù)值相關(guān)的類型有decimal、numeric、real和double
字符類型:
MYSQL中字符相關(guān)的類型有:char、varchar、tinytext、text、mediumtext、longtext、enum、set
MSSQLServer中字符相關(guān)的類型有char、varchar、text、nchar、nvarchar和ntext
Oracle中字符相關(guān)的類型有char、varchar2、nvarchar2、clob 和nclob
DB2中字符相關(guān)的類型有CHARACTER、VARCHAR、LONG VARCHAR、CLOB、GRAPHIC、VARGRAPHIC和LONG VARGRAPHIC
日期時(shí)間類型:
MYSQL 中日期時(shí)間相關(guān)的類型有date、time、datetime、timestamp和year
MSSQLServer 中日期時(shí)間相關(guān)的類型有datetime、smalldatetime 和timestamp
Oracle 中日期時(shí)間相關(guān)的類型有:date 和timestamp
在DB2 中日期時(shí)間相關(guān)的類型有DATE、TIME 和TIMESTAMP
二進(jìn)制類型:
MYSQL、Oracle和DB2都支持Blob類型,而在MSSQLServer中支持image類型。