300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > sql查询oracle数据 sql-server – 从SQL Server查询Oracle数据库

sql查询oracle数据 sql-server – 从SQL Server查询Oracle数据库

时间:2019-07-30 04:08:51

相关推荐

sql查询oracle数据 sql-server – 从SQL Server查询Oracle数据库

我有一个Oracle 11g XE数据库,我想将其转移到SQL Server Express 中.

起初我以为我只是在Oracle中生成表作为SQL,操纵数据格式,并在SQL Server中运行查询.这适用于小型表,但我有几个表有几十万行,有些表有数百万行,所以这个解决方案不起作用.

然后我创建了一个包含以下内容的TNS文件:

OracleTnsName =

(

DESCRIPTION=

(

ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=1521)

)

(

CONNECT_DATA = (SERVICE_NAME=XE)

)

)

我按照我在别处找到的关于如何生成ODBC连接的指令,并且’测试连接’成功了.

然后我运行这些命令在MS SQL中创建链接服务器:

EXEC sp_addlinkedserver

@server = 'OracleLinkServer'

,@srvproduct = 'OracleTnsName'

,@provider = 'MSDASQL'

,@datasrc = 'OracleTnsName'

EXEC sp_addlinkedsrvlogin

@rmtsrvname = 'OracleLinkServer'

,@useself = 'False'

,@locallogin = NULL

,@rmtuser = 'user'

,@rmtpassword = 'password'

现在我正在尝试使用openquery从SQL Server查询Oracle数据库中的表:

select * from openquery(OracleLinkServer, 'select * from oracleTable')

但得到一个错误:

Msg 7399, Level 16, State 1, Line 1

The OLE DB provider “MSDASQL” for

linked server “OracleLinkServer” reported an error. The provider did

not give any information about the error.

Msg 7303, Level 16, State 1, Line 1

Cannot initialize the data source object of OLE DB provider

“MSDASQL” for linked server “OracleLinkServer”.

当我检查链接服务器的属性,只需单击确定,我收到此错误:

标题:Microsoft SQL Server Management Studio Express

“链接服务器已更新但连接测试失败.是否要编辑链接服务器属性?”

附加信息:

执行Transact-SQL语句或批处理时发生异常. (Microsoft.SqlServer.Express.ConnectionInfo)

链接服务器“OracleLinkServer”的OLE DB提供程序“MSDASQL”报告错误.提供商未提供有关错误的任何信息.

无法为链接服务器“OracleLinkServer”初始化OLE DB提供程序“MSDASQL”的数据源对象. (Microsoft SQL Server,错误:7399)

纽扣:

&安培;是

&安培;无

请帮忙!

谢谢

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。