国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > Oracle > 正文

系統(tǒng)從oracle版本轉(zhuǎn)化為sqlserver版本

2024-08-29 13:48:08
字體:
供稿:網(wǎng)友

   WaterXP 從Oracle版本轉(zhuǎn)化為sqlserver版本
 
1,系統(tǒng)安排
 

       為了oracle版本和sqlserver版本能很方便的轉(zhuǎn)化,也為了兩個(gè)版本能同步修改,非凡是業(yè)務(wù)邏輯層。現(xiàn)決定如下:

A,兩個(gè)版本的業(yè)務(wù)邏輯層都放在source目錄下。在該目錄下有兩個(gè)目錄:

sql 和ora。這兩個(gè)目錄有三個(gè)文件:

common.pbl  ,water_modi.pbl,dw_version.pbl。

這三個(gè) 文件里面絕大部分是數(shù)據(jù)窗口,主要是因?yàn)閟ql server 和oracle的語(yǔ)法有差別。假如只是因?yàn)閿?shù)據(jù)窗口有雙引號(hào)在sql server里不能用,那么把數(shù)據(jù)窗口的select語(yǔ)法的字段引號(hào)去掉即可,因?yàn)闆]有引號(hào)的select語(yǔ)句在sql server和oracle下面都是可用的。修改的過程中注重update屬性。

B,不同的數(shù)據(jù)庫(kù)將使用不同的目錄。

 
2,系統(tǒng)環(huán)境的建立
       每臺(tái)機(jī)器上建立下面的磁盤映射:

       P  指向  //oraservr/p237

   V   指向  //oraservr ql237  或者是 //oraserver/ora237 

    源代碼在 //oraserver/code/water237 ource 里面。

    P盤是肯定要有的, V盤由使用什么版本決定。
3,源代碼的修改
業(yè)務(wù)層的修改盡可能的在源代碼處,因?yàn)檫@樣修改能讓兩個(gè)版本同時(shí)修改。

P盤是類庫(kù)可以不需要修改。

V盤里的數(shù)據(jù)窗口都需要改。

改sql237里面的數(shù)據(jù)窗口,要修改和要注重的地方:

替換的方法

oracle里面使用                      sql server 里面使用

to_char(readingdate,’yyyymm’)      convert(char(6),readingdate,111)

to_char(readingdate,’yyyy/mm’)      convert(char(7),readingdate,112)

decode( ,  ,  ,  ,)               case when then end 或者 isnull(x,0)

左右連接 (+)                   left outer join

     修改過程中要注重?cái)?shù)據(jù)窗口的update屬性。
4,工作計(jì)劃
   4,1先修改sql237目錄下的三個(gè)pbl里面的數(shù)據(jù)窗口的語(yǔ)法。為了照顧數(shù)據(jù)窗口的update屬性,建議使用edit source的方法,而且select語(yǔ)法字段的引號(hào)在sql server版本建議去掉。使用pb的replace功能即可。

   4,2 修改某些數(shù)據(jù)窗口的內(nèi)嵌式sql 的語(yǔ)法。因?yàn)橛幸恍﹥?nèi)嵌式sql 也使用了decode() ,或者是to_char(),這些語(yǔ)法在sqlserver也是必須代替的。

修改方法:

if gs_database = ‘ORACLE’ then

 ………………decode()……………;

else

…………………case when then end ………..;

end if

4,3 最后的工作是測(cè)試。這是最繁瑣的最重要的。在測(cè)試的過程會(huì)發(fā)現(xiàn)有一些數(shù)據(jù)窗口在sql server不能用:修改方法是將字段的引號(hào)去掉或者是移到sql 和ora目錄里面的dw_version.pbl文件里面,在那里進(jìn)行修改。

4,4主要的數(shù)據(jù)表都已經(jīng)遷移過來了,名字一樣,可能在sql server有一些表的字段不夠那么請(qǐng)重新導(dǎo)入一次。主要的存儲(chǔ)過程都已經(jīng)翻譯過來,名字不一樣。
在測(cè)試的過程會(huì)發(fā)現(xiàn)有一些視圖沒有存在,那么請(qǐng)從oracle把語(yǔ)法拷貝出來,在sql server查詢分析器里生成之。

 

 

 

 

 

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 嘉峪关市| 祁连县| 图木舒克市| 城固县| 湟源县| 蓝山县| 育儿| 商丘市| 合水县| 邢台市| 泰兴市| 巧家县| 中卫市| 乌兰察布市| 靖安县| 县级市| 大荔县| 韶山市| 武乡县| 河北省| 繁昌县| 阿拉善左旗| 绿春县| 湖南省| 达尔| 柳河县| 华阴市| 阳原县| 喀什市| 江津市| 峡江县| 永城市| 登封市| 海安县| 中阳县| 错那县| 温州市| 台北市| 赤水市| 磐安县| 阿坝县|