链接服务器及事务处理

msSqlsrver中有链接服务,可以与远程服务器连接作为本地的镜像来使用。

最近研究将oracle数据库连接到msSqlserver中,使msSqlserver中可以使用oracle中的数据。

连接方法:

1、在oraclenet 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、行了,再不好使我也没招了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值