鏈結伺服器及事務處理

2021-04-20 16:18:48 字數 2968 閱讀 8978

mssqlsrver中有鏈結服務,可以與遠端伺服器連線作為本地的映象來使用。

最近研究將oracle資料庫連線到mssqlserver中,使mssqlserver中可以使用oracle中的資料。

連線方法:

1、在oracle的net manager中建立net服務名,連線到遠端oracle資料庫。

2、在mssqlserver中建立鏈結伺服器。mssqlserver企業管理器——〉安全性——〉鏈結伺服器新建鏈結伺服器,產品名為oracle,資料來源為oracle net服務名

3、連線後資料庫經常中斷,可以在c:/windows/system32/drivers/etc/hosts檔案中加入ip位址和機器名。

在mssqlserver中寫了個儲存過程,沒有啟用事務的時候執行正常,啟用事務後再執行儲存過程出錯:'msdaora' itransactionjoin::jointransaction returned 0x8004d01b

幾經尋覓,終有結果:

1、開始——程式——管理工具——元件服務;

組建服務——計算機——我的電腦;

右鍵屬性——msdtc標籤——安全性配置

把所有能選的都選上(可能不用都選);

一路確定;

2、登錄檔更改:

hkey_local_machine/software/microsoft/msdtc

allowonlysecurerpccalls=0

turnoffrpcsecurity=1

3、登錄檔更改

據說是微軟和oracle介面不好所致 本人測試oracle9i客戶端連oracle10g伺服器,測試通過;

oracle client

microsoft windows nt、

oracle microsoft windows 95、

client windows 98 和 windows 98 se

microsoft windows 2000/xp/2003

7.x[hkey_local_machine/software

/microsoft/transactionserver/local computer/my computer]

"oraclexalib"="xa73.dll"

"oraclesqllib"="sqllib18.dll"

"oracleocilib"="ociw32.dll

[hkey_local_machine/software

microsoft/msdtc/mtxoci]

"oraclexalib"="xa73.dll"

"oraclesqllib"="sqllib18.dll"

"oracleocilib"="ociw32.dll"

8.0[hkey_local_machine/software

/microsoft/transaction server

/local computer/my computer]

"oraclexalib"="xa80.dll"

"oraclesqllib"="sqllib80.dll"

"oracleocilib"="oci.dll"

[hkey_local_machine/software

/microsoft/msdtc/mtxoci]

"oraclexalib"="xa80.dll"

"oraclesqllib"="sqllib80.dll"

"oracleocilib"="oci.dll"

8.1[hkey_local_machine/software

/microsoft/transaction server

/local computer/my computer]

"oraclexalib"="oraclient8.dll"

"oraclesqllib"="orasql8.dll"

"oracleocilib"="oci.dll"

[hkey_local_machine/software

/microsoft/msdtc/mtxoci]

"oraclexalib"="oraclient8.dll"

"oraclesqllib"="orasql8.dll"

"oracleocilib"="oci.dll"

9.0[hkey_local_machine/software

/microsoft/transaction server

/local computer/my computer]

"oraclexalib"="oraclient9.dll"

"oraclesqllib"="orasql9.dll"

"oracleocilib"="oci.dll"

[hkey_local_machine/software

/microsoft/msdtc/mtxoci]

"oraclexalib"="oraclient9.dll"

"oraclesqllib"="orasql9.dll"

"oracleocilib"="oci.dll"

10.0

[hkey_local_machine/software

/microsoft/transaction server

/local computer/my computer]

"oraclexalib"="oraclient10.dll"

"oraclesqllib"="orasql10.dll"

"oracleocilib"="oci.dll"

[hkey_local_machine/software

/microsoft/msdtc/mtxoci]

"oraclexalib"="oraclient10.dll"

"oraclesqllib"="orasql10.dll"

"oracleocilib"="oci.dll"

4、行了,再不好使我也沒招了。

PB事務處理

1 資料視窗更新,只要dberror有錯誤,而事先沒有做過任何commit工作,那麼rollback可以回滾到上次commit位置,即上次commit後所有的資料將被回滾。2 如果是直接寫入sql語句,只要資料庫出現錯誤,那麼rollback可以回滾到上次commit的位置,即上次commit後所有...

MySQL事務處理

start transaction,commit和rollback語法 start transaction begin work commit work and no chain no release rollback work and no chain no release set autocom...

ASP事務處理

asp事務處理。測試資料庫為sql server,伺服器為本機,資料庫名為test,表名為a,兩個欄位id int 主鍵標識,num int set conn server.createobject adodb.connection strconn provider sqloledb.1 persi...