時(shí)間:2015/6/28來(lái)源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評(píng)論(0)
這里介紹然而,當(dāng)部分資料是放在oracle數(shù)據(jù)庫(kù)服務(wù)器的時(shí)候,這就可能帶給您許多挑戰(zhàn)。舉例來(lái)說(shuō),光是設(shè)定連結(jié)服務(wù)器就不是一件容易的事。
假定您現(xiàn)在擁有一個(gè)以Microsoft .NET為架構(gòu)的網(wǎng)絡(luò)訂購(gòu)系統(tǒng),但是品管維護(hù)系統(tǒng)卻仍然使用一套舊式的Oracle數(shù)據(jù)庫(kù)應(yīng)用程序。當(dāng)您的顧客在產(chǎn)品保固期間下了產(chǎn)品更換之類的訂單,則該筆訂單將不收取任何費(fèi)用。此時(shí)您需要從Oracle數(shù)據(jù)庫(kù)得到實(shí)時(shí)的查詢結(jié)果。借著建立連結(jié)服務(wù)器的方式(linked server),您將可以從sql server實(shí)時(shí)查詢出位于Oracle數(shù)據(jù)庫(kù)的顧客資料,找出誰(shuí)是您既有的客戶。
當(dāng)您的資料分散在不同的SQL Server數(shù)據(jù)庫(kù)時(shí),藉由連結(jié)服務(wù)器可讓您執(zhí)行跨服務(wù)器之分布式查詢。當(dāng)所有的數(shù)據(jù)庫(kù)服務(wù)器都是SQL Server,則連結(jié)服務(wù)器的設(shè)定十分容易,而且在SQL Server線上手冊(cè)中就涵蓋了您所需要了解的所有事項(xiàng)。然而,當(dāng)部分資料是放在Oracle數(shù)據(jù)庫(kù)服務(wù)器的時(shí)候,這就可能帶給您許多挑戰(zhàn)。舉例來(lái)說(shuō),光是設(shè)定連結(jié)服務(wù)器就不是一件容易的事。您必須了解到:即是您要在SQL Server的EnterpRise Manager設(shè)定一個(gè)Oracle連結(jié)服務(wù)器,這臺(tái)SQL Server對(duì)Oracle來(lái)說(shuō)就是一個(gè)客戶端。所以您必須在SQL Server所在的服務(wù)器成功地安裝并組態(tài)Oracle之客戶端軟件。因?yàn)镺racle提供的產(chǎn)品只支持Oracle 8以后的數(shù)據(jù)庫(kù),所以我假設(shè)您正在使用的都是Oracle 8以后的數(shù)據(jù)庫(kù)。在Oracle Net8函式庫(kù)則提供了SQL Server所需要的客戶端軟件。
譯者注1:
設(shè)定連接服務(wù)器時(shí)是利用 Microsoft所提供的OLE DB Provider for Oracle,使用的Oracle網(wǎng)絡(luò)函式庫(kù)為SQL*Net 2.3.3.0.4或是以后的版本,不過(guò)這是Oracle 7.3數(shù)據(jù)庫(kù)所提供的。換句話說(shuō),要設(shè)定Oracle數(shù)據(jù)庫(kù)為SQL Server的連接服務(wù)器時(shí),Oracle數(shù)據(jù)庫(kù)只要是7.3.3.4以后的版本,并搭配適當(dāng)?shù)腟QL*Net或是Net 8 函式庫(kù)即可。
資料來(lái)源:
1. Oracle 7 Server Getting Started release 7.3.4
2. SQL Server Books Online: OLE DB Provider for Oracle
在 Oracle數(shù)據(jù)庫(kù)中,一個(gè)schema即代表著SQL Server專家們所熟知的單一數(shù)據(jù)庫(kù)(譯者注2)。連接至Oracle數(shù)據(jù)庫(kù)時(shí),您必須提供schema名稱、密碼以及主機(jī)聯(lián)機(jī)字符串(host string)。每一個(gè)特定的Oracle帳戶都擁有一個(gè)Oracle schema,而且只能有一個(gè)schema。所以schema名稱其實(shí)就等于該schema擁有者的帳戶名稱。您可以查詢Oracle的資料字典 (Data dictionary)以得到更多有關(guān)schema的內(nèi)容。
至于 Oracle聯(lián)機(jī)字符串又可稱為服務(wù)名稱(service name)或是系統(tǒng)識(shí)別資料(Systen Identifier,SID)。我們所謂的SQL Server數(shù)據(jù)庫(kù)個(gè)體(instance)在Oracle則稱為數(shù)據(jù)庫(kù)(database)。所以安裝Oracle Server時(shí),安裝程序Oracle Universal Installer(為一個(gè)圖形接口之安裝程序,與SQL Server的Setup程序類似)將會(huì)詢問(wèn)您SID名稱為何,以作為Oracle數(shù)據(jù)庫(kù)之名稱。
譯者注2:
這個(gè)部分原作者所提到schema的解釋有點(diǎn)問(wèn)題。Oracle schema可視為同一個(gè)使用者所擁有的所有數(shù)據(jù)庫(kù)對(duì)象(schema objects)之集合。舉例來(lái)說(shuō),使用者scott所建立的EMP table其完整名稱為SCOTT.EMP,而SCOTT就是EMP的schema名稱。所以schema name其實(shí)就是一個(gè)Oracle數(shù)據(jù)庫(kù)之使用者帳號(hào)。但是絕對(duì)不能拿來(lái)跟數(shù)據(jù)庫(kù)相提并論!因?yàn)镾QL Server的數(shù)據(jù)庫(kù)架構(gòu)包含了data files與log files,但是Oracle的schema objects只存在于tablespace中。為了避免部分讀者產(chǎn)生混淆,特此說(shuō)明。
如果您在Windows操作系統(tǒng)上安裝Oracle Server時(shí)設(shè)定SID為Ora817(與本篇文章的范例相同),則在系統(tǒng)內(nèi)將會(huì)有一個(gè)名稱為OracleServiceORA817的服務(wù)。
關(guān)鍵詞標(biāo)簽:SQLServer,Oracle,數(shù)據(jù)
相關(guān)閱讀
熱門(mén)文章 Oracle中使用alter table來(lái)增加,刪除,修改列oracle中使用SQL語(yǔ)句修改字段類型-oracle修使用低權(quán)限Oracle數(shù)據(jù)庫(kù)賬戶得到管理員權(quán)限Oracle對(duì)user的訪問(wèn)控制
人氣排行 ORACLE SQL 判斷字符串是否為數(shù)字的語(yǔ)句Oracle中使用alter table來(lái)增加,刪除,修改列的語(yǔ)法ORACLE和SQL語(yǔ)法區(qū)別歸納(1)oracle grant 授權(quán)語(yǔ)句如何加速Oracle大批量數(shù)據(jù)處理Oracle刪除表的幾種方法ORACLE修改IP地址后如何能夠使用Oracle 10g創(chuàng)建表空間和用戶并指定權(quán)限