用Sql Developer將SQL移植到Oracle(四)
本文我們介紹第四部分:SQL 中的架構(gòu)到Oracle中的模式,名稱(chēng)的處理。
通過(guò)執(zhí)行數(shù)據(jù)移植向?qū)В绻麤](méi)有錯(cuò)誤的話(huà),那么表結(jié)構(gòu)基本上都會(huì)建立起來(lái)了,在連接中打開(kāi)orcl(migrations)連接,找到最下面的其它用戶(hù),假設(shè)你的表都在dbo架構(gòu)下,那么找到dbo_源數(shù)據(jù)庫(kù)名,展開(kāi)它,可以看到在表中已經(jīng)有原數(shù)據(jù)庫(kù)中的所有表。但是,為什么會(huì)顯示為dbo_源數(shù)據(jù)庫(kù)名呢?我很不喜歡這樣的用戶(hù)名。我希望它顯示為源數(shù)據(jù)庫(kù)名,要怎樣做呢?
在程序的左下角,是數(shù)據(jù)移植項(xiàng)目窗格,在里面可以看到我們剛才建立的數(shù)據(jù)移植項(xiàng)目名。展開(kāi)它,會(huì)顯示我們執(zhí)行過(guò)向?qū)У娜掌诤蜁r(shí)間,繼續(xù)展開(kāi),可以看到兩個(gè)節(jié)點(diǎn),叫作捕獲的數(shù)據(jù)庫(kù)對(duì)象和轉(zhuǎn)換的數(shù)據(jù)庫(kù)對(duì)象,如下圖:
在捕獲的數(shù)據(jù)庫(kù)對(duì)象上點(diǎn)擊右鍵,選擇轉(zhuǎn)換,再次打開(kāi)數(shù)據(jù)移植向?qū)А|c(diǎn)擊下一步,會(huì)直接跳轉(zhuǎn)到轉(zhuǎn)換頁(yè),這一次的轉(zhuǎn)換頁(yè)面與前一部分的轉(zhuǎn)換頁(yè)稍有不同。不同之處在于多出了一個(gè)選項(xiàng)卡,叫對(duì)象命名,選擇它打開(kāi),如下圖所示:
在這個(gè)頁(yè)面中,顯示了一個(gè)數(shù)據(jù)列表,列出了源數(shù)據(jù)庫(kù)的表名、字段名、約束名、視圖名、架構(gòu)名等等所有的標(biāo)識(shí)符的原始標(biāo)識(shí)符、新建標(biāo)識(shí)符、是否經(jīng)過(guò)轉(zhuǎn)換、原始限定名、標(biāo)識(shí)符類(lèi)型等信息。因?yàn)镺racle中不支持30個(gè)字符以上的標(biāo)識(shí)符,所以當(dāng)碰到原始標(biāo)識(shí)符超過(guò)30個(gè)字符時(shí),數(shù)據(jù)移植向?qū)?huì)自動(dòng)將之截?cái)?,如果有重名,則會(huì)加上_1之類(lèi)的后綴。
很明顯,在這里,它把我們?cè)瓉?lái)的dbo架構(gòu)名轉(zhuǎn)換成了dbo_數(shù)據(jù)庫(kù)名,我們只要找到它,將新標(biāo)識(shí)符改為數(shù)據(jù)名,即可實(shí)現(xiàn)我們這部分的需求。
修改完成后,點(diǎn)擊下一步,接著按之前的設(shè)置完成整個(gè)向?qū)?,將修改提交到資料檔案庫(kù)中。注意,這次的向?qū)Р](méi)有去幫我建立新用戶(hù)和表結(jié)構(gòu)等等,還需要進(jìn)一步操作。
在主界面中的數(shù)據(jù)移植項(xiàng)目窗格,在轉(zhuǎn)換的數(shù)據(jù)庫(kù)對(duì)象上點(diǎn)擊右鍵,選擇生成目標(biāo),再次打開(kāi)數(shù)據(jù)移植向?qū)В忠淮伟粗拔覀兊倪x擇完成整個(gè)向?qū)?,這一次,才是真正建立了我們想要的用戶(hù)名。
然后,把自動(dòng)生成的老用戶(hù)名和模式都刪除掉吧。具體操作就不細(xì)說(shuō)啦。
原文出處:http://www.cnblogs.com/hiizsk/archive/2011/07/10/2102457.html。
【編輯推薦】