mssql 链接oracle

 

 

 EXEC   sp_addlinkedserver       'OracleServer',     'Oracle',     'MSDAORA',     'XE'
     go      
  EXEC   sp_addlinkedsrvlogin   'OracleServer',   'FALSE',   NULL,   'gj',   'sql'  
      go  
  select   *   from   OPENQUERY(oracleserver,   'SELECT  alt_nam  FROM  bqcust_mn  where rownum<=10')

 

 

 

select   *   from   OPENQUERY(oracleserver, 'select CUST_COD, ALT_NAM , INS_USR ,INS_DAT, HOTEL_COD ,SHOW_COD ,STATUS_COD from bqcust_mn ' )
 where alt_nam like '%测试数据%' 

 

update openquery(oracleserver, 'select CUST_COD, ALT_NAM , INS_USR ,INS_DAT, HOTEL_COD ,SHOW_COD ,STATUS_COD from bqcust_mn where rownum<=20')
set alt_nam='123'


insert openquery(oracleserver, 'select CUST_COD, ALT_NAM , INS_USR ,INS_DAT, HOTEL_COD ,SHOW_COD ,STATUS_COD from bqcust_mn  where 1=0') values ('BQ 0000000003765008','测试数据','C003','2007-10-21 19:14:17.000','007','BQ 0000000003765008','N')

 

delete openquery(oracleserver, 'select ALT_NAM  from bqcust_mn where ALT_NAM like ''%测试数据%''')

 

 

 另外一种方法

3.配置windows的ODBC数据源:

开始菜单—》设置—》管理工具—》数据源(ODBC)—》进入配置用户DSN或者系统DSN均可以:添加—》选择Microsoft ODBC for oracle—》自定义数据源名称(最好跟tns中连接串同名!)—》服务器名称(必填!填写tns文件中的连接串名称)—》完成。

4.配置sqlserver2000中的连接服务器:

企业管理器—》安全性—》连接服务器—》右键新建连接服务器—》定义连接名称; 选其他数据源; 指定程序名称为:Microsoft OLE DB Provider for Oracle; 产品名称可不填; 数据源指定刚才ODBC中定义好的数据源名称;提供程序字符串按以下格式填写:User ID=username;Password=userpasswd(或者按如下格式:UID=username;PWD=userpasswd),这里的用户名和密码对应所要连接的oracle数据库中的用户名和密码 —》安全性标签页里:设置用此安全上下文进行,并录入oracle的数据库用户名和密码—》服务器选项标签页可默认—》确定。

5.准备工作全部完成啦!在sqlserver企业管理器—》安全性—》连接服务器打开刚建好的连接服务器—》点击表,即可在右边窗口看到该 oracle数据库用户拥有的的所有表名,但在这里还并不能查看表的记录,这个需要在sqserver的查询分析器中用具体sql实现!访问表时,使用格式为: [连接服务器名]..[ORACLE用户].[表名]。更详细具体的使用这里不再赘述。


表名要大写 

posted @ 2008-12-24 17:42  小师傅  阅读(265)  评论(0编辑  收藏  举报