支持常见数据库差异对照说明
??????????????????????????????????????????????????????????????????????????????????????????? ?支持常見數據庫差異對照說明
| 類 | 項 | Oracle | SQLServer 2005(+) | MYSQL 4.x | OSCAR | DB2 |
| 服務 | JDBC端口 | 1521 | 1433(需要補丁) | 3306 | 2003 | ? |
| 字段類型 | 字符 | VARCHAR2 | VARCHAR | VARCHAR ? or TEXT | VARCHAR | VARCHAR |
| 數值 | NUMBER | NUMERIC | DECIMAL | NUMERIC/DECIMAL | NUMERIC | |
| 布爾 | NUMBER(1) | NUMERIC(1) | DECIMAL(1) | NUMERIC(1) | NUMERIC | |
| 日期時間 | DATE | DATETIME | DATETIME | TIMESTAMP (DATE只能存儲日期值) | DATE | |
| 函數 | 系統時間函數 | sysdate | getdate() | now() | getdate() ? or current_date | current ? date |
| 長日期轉換函數 | to_date(‘值’,’YYYY-mm-dd hh24:mi:ss’) | ‘值’ | ‘值’ | to_timestamp(‘值’,’YYYY-mm-dd hh24:mi:ss’) | ‘值’ | |
| 短日期轉換函數 | to_date(‘值’,’YYYY-mm-dd’) | ‘值’ | ‘值’ | to_date(‘值’,’YYYY-mm-dd’) | ‘值’ | |
| SQL語法 | 創建字段 | ALTER ? TABLE …? ADD … | ALTER ? TABLE … ADD … | ALTER ? TABLE … ADD … | ALTER ? TABLE … ADD … | ALTER ? TABLE … ADD? COLUMN … |
| 修改字段 | ALTER ? TABLE … MODIFY(…) | ALTER ? TABLE … ALTER COLUMN … | ALTER ? TABLE … CHANGE … | ALTER ? TABLE … ALTER COLUMN … | ALTER ? TABLE … ALTER COLUMN … | |
| 刪除字段 | ALTER ? TABLE … DROP COLUMN | ALTER ? TABLE … DROP COLUMN … | ALTER ? TABLE … DROP … | ALTER ? TABLE … DROP … | ? | |
| 創建表 | CREATE ? TABLE … () | CREATE ? TABLE … () | CREATE ? TABLE … () | CREATE ? TABLE … () | CREATE ? TABLE … () | |
| 創建普通索引 | CREATE ? INDEX … ON … () | CREATE ? INDEX … ON … () | CREATE ? INDEX … ON … () | CREATE ? INDEX … ON … () | CREATE ? INDEX … ON … () | |
| 創建唯一索引 | CREATE ? UNIQUE INDEX … ON …() | CREATE ? UNIQUE INDEX … ON …() | CREATE ? UNIQUE INDEX … ON …() | CREATE ? UNIQUE INDEX … ON …() | CREATE ? UNIQUE INDEX … ON …() | |
| 刪除索引 | DROP ? INDEX indexname | DROP ? INDEX table.indexname | ALTER ? TABLE … DROP INDEX indexname | DROP ? INDEX indexname | DROP ? INDEX indexname |
?
其他:
| DB Provider | SQL分頁語法 | JDBC URL Sample |
| Oracle | select ? * from (select rownum r,t1.* from tableName t1 where 其他條件 and rownum <(當前頁*每頁行數+1) order by id) t2 ? where t2.r>((當前頁-1)*每頁行數) | oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:@192.168.0.3:1521:prj |
| SQLServer | select ? * from (select rownum r,t1.* from tableName t1 where 其他條件 and rownum <(當前頁*每頁行數+1) order by id) t2 ? where t2.r>((當前頁-1)*每頁行數) | net.sourceforge.jtds.jdbc.Driver jdbc:jtds:sqlserver://192.168.0.2:1433/finaltest;characterEncoding=gb2312 |
| MYSQL | select ? * from tableName t1 where 其他條件 ? order by id limit 返回記錄行的偏移量,返回記錄行的最大數目 偏移量起始值為0 | com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/aws40_test1?characterEncoding=gb2312 |
| Oscar | select * from ? tableName t1 where 其他條件 ? order by id limit count OFFSET offset count至多返回count行 offset在開始返回第一行之前要忽略的行數 | com.oscar.Driver jdbc:oscar://localhost:2003/osrdb |
| DB2 | SELECT ? * FROM (Select rownumber() over() as row,taball.* from ( select * from tableName ? where 其他條件 order by ? id) as taball) AS tabpage WHERE tabpage.row BETWEEN 起始行數 AND 結束行數 | com.ibm.as400.access.AS400JDBCDriver jdbc:as400://172.16.16.7/AWS |
轉載于:https://www.cnblogs.com/WuXuanKun/p/5317124.html
總結
以上是生活随笔為你收集整理的支持常见数据库差异对照说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于HTML5移动web应用
- 下一篇: 算法系列:插入排序