链接服务器提供商问题

发布于 2024-11-30 06:18:32 字数 212 浏览 2 评论 0原文

我们最近更改了数据库服务器,并且必须将链接服务器设置从一台服务器移动到另一台服务器。

在以前的服务器中,链接服务器的提供程序是 MSDAORA,而在新服务器中,它设置为 MSDASQL。

将数据库移动到新服务器(使用提供程序 MSDASQL)后,当使用不同条件(升序或降序)检索数据时,我们不会获得相同的记录(不同的行数)。

不同的提供是否会影响数据的检索方式?

We have recently changed the database servers, and had to move the linkedserver setup from one server to the other.

In the previous server the linked server's provider was MSDAORA and in the new server it was set to MSDASQL.

After we move the database to the new server(with provider MSDASQL), when retrieving the data with different criteria (ascending or descending order) we are not getting the same records (different row nums).

Do the different provides effect the way the data is being retrieved?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

獨角戲 2024-12-07 06:18:32

值得一提的是,新环境是 64 位风格的。这就是为什么旧的微软提供程序无法工作,因为它仅针对 32 位而设计,并且不再受支持。如果您提及服务器版本(SQL 2008 R2 和 Oracle 客户端和服务器),那就更好了。

一位绅士 Tim Ford 创建了本手册,用于在 64 位环境中设置 Oracle 的链接服务器: http://www.mssqltips.com/tip.asp?tip=1433

在他的示例中,我看到提供程序应该是“OraOLEDB.Oracle”,但是您有“MSDASQL”,这是一个ODBC 提供商。

我注意到有人在 SQL2000 上使用 ODBC 到 Oracle 时遇到类似问题: http://itknowledgeexchange.techtarget.com/itanswers/linked-server-query-returns-incomplete-results/

我建议创建一个适当的 Oracle 链接服务器并看看这是否有帮助,因为通过 ODBC 提取数据可能是问题所在。与此同时,您可能想检查上一个链接中适合您的情况的查询:

select count(*) from OPENQUERY([TEST],'SELECT * FROM APICKEL.ROOMBED')
select * from OPENQUERY([TEST],'SELECT count(*) FROM APICKEL.ROOMBED')

结果是什么?

亲切的问候,罗布

It's important to mention that the new environment is in 64bit flavour. That's why the old microsoft provider won't work, because it's only made for 32bit and is out of support. Also better if you mention the server versions (SQL 2008 R2 and oracle client and server).

A Gentle man Tim Ford has created this manual to setup the linked server to oracle on a 64bit environment: http://www.mssqltips.com/tip.asp?tip=1433

In his examples, I see that the provider should be "OraOLEDB.Oracle", but you have "MSDASQL", which is an ODBC provider.

I've noticed someone had a similar problem with ODBC to Oracle on SQL2000: http://itknowledgeexchange.techtarget.com/itanswers/linked-server-query-returns-incomplete-results/

I suggest to create a proper oracle linked server and see if that helps as pulling data through ODBC may be the problem. In the meantime, you might want to check the queries from the previous link adapted to your case:

select count(*) from OPENQUERY([TEST],'SELECT * FROM APICKEL.ROOMBED')
select * from OPENQUERY([TEST],'SELECT count(*) FROM APICKEL.ROOMBED')

What's the results?

Kind regards, Rob

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文