成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

談一談兼容Oracle和DB2開發時的注意事項

數據庫 Oracle
本文主要介紹了兼容Oracle和DB2開發時的一些注意事項,了解了這些注意事項,我們在開發時就可以避免一些不兼容的現象的發生了。

我們在做兼容oralcedb2開發時,需要注意一些問題,以免遇到不兼容的現象,為開發者帶來麻煩。本例子的前提是db2版本是9.7,且是開啟PLSQL編譯選項之后創建的數據庫。接下來我們就開始介紹這些。

注意事項:

1. 在like 之后若使用了表字段,應統一改成使用locate函數,如:

oralce寫法:

 

  1. select * from fw_right a where '03' like a.rightid||'%'; 

 

兼容寫法:

 

  1. select * from fw_right a where locate('03',a.rightid) = 1; 

 

oralce寫法:

 

  1. select * from fw_right a where '03' like '%'||a.rightid||'%'; 

 

兼容寫法:

 

  1. select * from fw_right a where locate('03',a.rightid) > 0; 

 

2. 視圖中使用的別名不應該與當前表字段同名。

如以下語句,在oracle中不會有問題,但在db2中會報"SQL0153N"錯誤。

 

  1. CREATE OR REPLACE VIEW V_WF_TODOLIST AS  
  2.  
  3. select c.process_def_id, c.process_def_name, a.action_def_id,  
  4.  
  5. a.work_item_id, a.bae007, a.action_def_name,  
  6.  
  7. a.state,  a.pre_wi_id,  a.work_type,  
  8.  
  9. a.operid, a.x_oprator_ids,  b.process_key_info,  
  10.  
  11. to_char(to_date(a.start_time, 'yyyymmddhh24miss'),'yyyy-mm-dd hh24:mi:ss') as start_time,  
  12.  
  13. to_char(to_date(a.complete_time,'yyyymmddhh24miss'),'yyyy-mm-dd hh24:mi:ss') as complete_time,  
  14.  
  15. a.filter_opr, a.memo,a.bae002,a.bae003, a.bae006,c.x_action_def_ids  
  16.  
  17. from wf_work_item a, wf_process_instance b, wf_action_def c  
  18.  
  19. where a.action_def_id  = c.action_def_id  
  20.  
  21. and b.process_def_id = c.process_def_id  
  22.  
  23. and a.bae007 = b.bae007  
  24.  
  25. and a.state in('0','2') 

 

兼容寫法:

 

  1. CREATE OR REPLACE VIEW V_WF_TODOLIST AS  
  2.  
  3. select c.process_def_id, c.process_def_name, a.action_def_id,  
  4.  
  5. a.work_item_id, a.bae007, a.action_def_name,  
  6.  
  7. a.state,  a.pre_wi_id,  a.work_type,  
  8.  
  9. a.operid, a.x_oprator_ids,  b.process_key_info,  
  10.  
  11. to_char(to_date(a.start_time, 'yyyymmddhh24miss'),'yyyy-mm-dd hh24:mi:ss') as start_time_0,  
  12.  
  13. to_char(to_date(a.complete_time,'yyyymmddhh24miss'),'yyyy-mm-dd hh24:mi:ss') as complete_time_0,  
  14.  
  15. a.filter_opr, a.memo,a.bae002,a.bae003, a.bae006,c.x_action_def_ids  
  16.  
  17. from wf_work_item a, wf_process_instance b, wf_action_def c  
  18.  
  19. where a.action_def_id  = c.action_def_id  
  20.  
  21. and b.process_def_id = c.process_def_id  
  22.  
  23. and a.bae007 = b.bae007  
  24.  
  25. and a.state in('0','2') 

 

3.在下列情況下不允許ORDER BY 或 FETCH FIRST n ROWS ONLY:

  • 外層全查詢視圖
  •  "SQL 表函數"的 RETURN 語句中的外層全查詢
  • 具體化查詢表定義
  • 未用圓括號括起來的子查詢

否則會報"SQL20211N  規范 ORDER BY 或 FETCH FIRST n ROWS ONLY 無效。"錯誤。

oralce寫法:

 

  1. CREATE OR REPLACE VIEW V_FW_BLANK_BULLETIN as  
  2.  
  3. select id, bae001,  operunitid, operunittype, unitsubtype, ifergency,  
  4.  
  5. title,  content, digest,  duetime,  validto, aae100,  
  6.  
  7. bae006, bae002,  bae003,  id as colid,  
  8.  
  9. substr(digest,1,20) as digest2  
  10.  
  11. from fw_bulletin  
  12.  
  13. where duetime <= to_char(sysdate,'yyyymmddhh24miss')  
  14.  
  15. and (to_char(validto) >= to_char(sysdate,'yyyymmddhh24miss') or validto is null)  
  16.  
  17. and aae100 ='1' 
  18.  
  19. order by ifergency desc, id desc,  duetime desc 

 

兼容寫法:

 

  1. CREATE OR REPLACE VIEW V_FW_BLANK_BULLETIN as  
  2.  
  3. select * from (select id, bae001,  operunitid, operunittype, unitsubtype, ifergency,  
  4.  
  5. title,  content, digest,  duetime,  validto, aae100,  
  6.  
  7. bae006, bae002,  bae003,  id as colid,  
  8.  
  9. substr(digest,1,20) as digest2  
  10.  
  11. from fw_bulletin  
  12.  
  13. where duetime <= to_char(sysdate,'yyyymmddhh24miss')  
  14.  
  15. and (to_char(validto) >= to_char(sysdate,'yyyymmddhh24miss') or validto is null)  
  16.  
  17. and aae100 ='1' 
  18.  
  19. order by ifergency desc, id desc,  duetime desc) 

 

了解了以上Oracle、DB2開發時的注意事項,我們在做開發的時候就能夠盡量避免一些不兼容得狀況了。本文就介紹到這里,希望能對各位有所幫助。

【編輯推薦】

  1. 數據倉庫的邏輯建模之星型模式
  2. 簡單介紹一下SQL Profiler的過濾設置
  3. 使用SQLite擴展函數來定義自己的函數
  4. Oracle數據庫Shared Pool優化過程詳解
  5. 檢測局域網電腦是否有安裝SQL Server數據庫
責任編輯:趙鵬 來源: CSDN博客
相關推薦

2010-08-06 15:27:14

DB2 batch u

2010-08-04 11:23:59

2010-11-01 13:24:15

DB2數據導入

2010-08-17 16:24:32

IBM DB2數據庫

2010-07-30 13:28:10

2010-08-09 09:05:41

DB2快照函數

2011-03-14 17:51:04

IBMDB2數據庫

2010-07-29 13:56:32

2010-11-02 13:09:42

DB2性能優化

2010-08-04 10:44:32

2010-08-31 10:53:18

DB2導入數據庫

2010-07-29 13:09:48

DB2 9.7 兼容

2010-08-19 14:11:29

DB2臨時表

2010-08-03 17:00:29

DB2 batch u

2011-08-02 13:08:06

Oracle索引

2011-07-28 09:22:56

Oracle WDPOracle數據庫

2011-03-03 15:16:43

DB2數據庫遷移

2010-07-30 10:11:05

DB2臨時表

2010-08-20 09:21:18

DB2打上補丁

2010-07-29 09:52:04

DB2數據導入
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 999精品视频| 精品不卡 | 中文精品久久 | 欧美日韩国产高清 | 热久久免费视频 | 欧美亚洲视频 | 一级在线观看 | 精品国产第一区二区三区 | 羞羞视频免费观看入口 | 国产成人99久久亚洲综合精品 | 91色综合| 日韩有码一区 | 亚洲欧美综合 | 亚洲视频自拍 | 天天爽夜夜操 | 99爱在线 | 找个黄色片 | 日本午夜视频 | 国外成人免费视频 | 成人精品一区二区三区 | 做a视频| 99在线免费视频 | 中文字幕在线精品 | 中文字幕1区 | 九九久久精品 | 国产成人高清 | 国产日韩一区二区三区 | 一级片av | 日日碰狠狠躁久久躁96avv | 日本一区二区视频 | 欧美在线一区二区三区 | 欧美电影免费观看高清 | 伊人影院在线观看 | 日韩男人天堂 | 欧美久久精品一级黑人c片 91免费在线视频 | 狠狠热视频 | 人人干在线| 欧美一级黄色片 | 午夜影院在线观看免费 | 精品国产乱码久久久久久图片 | 天天射天天操天天干 |