问题标签 [openquery]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
52283 浏览

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

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

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

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

我按照我在其他地方找到的有关如何生成 ODBC 连接的说明进行操作,并且“测试连接”成功。

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

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

但是得到一个错误:

消息 7399,级别 16,状态 1,第 1 行
链接服务器“OracleLinkServer”的 OLE DB 提供程序“MSDASQL”报告错误。提供商没有提供有关该错误的任何信息。
消息 7303,级别 16,状态 1,第 1 行
无法初始化链接服务器“OracleLinkServer”的 OLE DB 提供程序“MSDASQL”的数据源对象。

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

标题:Microsoft SQL Server Management Studio Express

“链接服务器已更新,但连接测试失败。您要编辑链接服务器属性吗?”


附加信息:

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


链接服务器“OracleLinkServer”的 OLE DB 提供程序“MSDASQL”报告错误。提供商没有提供有关该错误的任何信息。无法为链接服务器“OracleLinkServer”初始化 OLE DB 提供程序“MSDASQL”的数据源对象。(Microsoft SQL Server,错误:7399)

如需帮助,请单击: http: //go.microsoft.com/fwlink ?ProdName=Microsoft+SQL+Server&ProdVer=09.00.5000&EvtSrc=MSSQLServer&EvtID=7399&LinkId=20476


纽扣:

&是的

&不

请帮忙!

谢谢

0 投票
1 回答
5989 浏览

ms-access - 使用命令按钮访问 2010 表单 - OpenQuery 和 PrintPreviewQuery

我创建了一个 access 2010 表单,其中有一个列表框和两个命令按钮。列表框包含所有查询名称,命令按钮 1 用于“查询打印预览”,命令按钮 2 用于“打开查询”,应与列表框中的“双击查询名称”相同。那么,如何在列表中双击时打开这些按钮和查询?

0 投票
1 回答
4993 浏览

sql-server - 使用 $ 的 SQL Server OpenQuery 到 Oracle 架构

我正在尝试从 SQL Server 2008 R2 连接到 Oracle 链接服务器,但 Oracle 架构中有一个 $ 符号。不幸的是,我无法更改架构名称,但在尝试使用 OpenQuery 提取信息时,它似乎给我带来了问题。有可能逃脱这个角色吗?

以上给了我一条错误消息,如下所示:

下面的查询有效,但是在 Oracle 数据库上运行需要半秒钟的东西速度很慢,所以我希望 OPENQUERY 可能会给我更快的结果?

任何帮助将不胜感激!!

提前致谢!!

0 投票
1 回答
7027 浏览

tsql - Openquery中带参数的函数

我正在尝试创建一个使用 OpenQuery 中的参数的函数,如下所示:

Openquery 应该只返回一个整数。我试过了

并且 get 不能在此上下文中使用带有返回值的 RETURN 语句。

0 投票
1 回答
55296 浏览

sql-server - 如何在使用openquery时加入链接服务器表和sql server表

我使用 openquery 语法从链接服务器读取数据。

我想将此链接服务器表与 Sql 服务器表连接起来以获得我的最终结果。现在我这样做,有一个临时表。

但是由于链接服务器产品表包含大量记录,因此需要花费一些时间才能将其填充到临时表中。所以我认为如果我事先加入两个表,而不是提取所有产品信息,它可以提高性能。

这个可以吗。?有人可以帮忙吗?

0 投票
1 回答
1796 浏览

sql-server - SQL Server Linked Server to Progress 使用 openquery 视图很慢

我们有一个 SQL Server 数据库设置,其中一个链接服务器设置连接到 Progress OpenEdge 数据库。我们使用类似于以下的代码创建了一些 OpenEdge 表的 SQL Server 视图(用于与 SSRS 一起使用):

创建视图帐户为 SELECT * FROM OPENQUERY(myLinkedServerName, 'SELECT * FROM PUB.accounts')

创建视图客户端为 SELECT * FROM OPENQUERY(myLinkedServerName, 'SELECT * FROM PUB.clients')

由于某种原因,查询似乎带回了整个表,然后在 SQL 端进行过滤,而不是在 Progress 端执行查询。

有人知道为什么或如何纠正这种情况吗?

谢谢

0 投票
3 回答
1524 浏览

c# - Entity Framework v4 - 来自链接服务器的简单存储过程选择语句(打开查询)返回 -1

在 SQL Server 中,我创建了一个存储过程,它使用 Open Query 触发一个简单的选择语句(SET NOCOUNT OFF)来从链接服务器查询数据。在 SQL Server 中查询此数据时,会返回正确的结果,例如:

我现在有一个 C# WinForms 应用程序,它使用 Entity Framework v4 来访问数据,并希望在代码中访问这个存储过程。

我做了通常的“从数据库更新模型”并添加了存储过程,然后选择添加函数导入(例如称为 getData)。然后我注意到单击“获取列信息”后,我收到了以下消息:

此时我点击了确定,然后写了一些简单的代码来访问SP(如下):

单步执行代码时,结果设置为“-1”。在做了一些阅读之后,有人建议在我所做的存储过程中将 NOCOUNT 设置为 OFF,但没有任何区别。

我不确定为什么这适用于 SQL Server 中的查询而不是实体框架?

有没有办法让这个工作?

提前致谢。

0 投票
2 回答
3126 浏览

sql-server - “ORA-00936:缺少表达式”使用 OpenQuery 将查询链接到 Oracle

我正在尝试执行以下查询:

当我删除日期条件时,此查询工作正常。但是,一旦我尝试通过此标准,它就不再起作用了。我无法弄清楚我错过了什么。

0 投票
1 回答
313 浏览

oracle - 更改原始列导致 Excel 表中的 TEXT 格式

EXCEL VBA 中的此选择会导致 Excel 中的数字格式:

但是,如果我在列上创建一些函数,它会在 Excel 中以文本格式生成:

我试过了to_number(...)to_number(to_char(...))但没有帮助。

为什么?我该如何解决这种情况?

解决方案(使用 SQL 服务器强制转换函数将列转换为数字)

0 投票
1 回答
2062 浏览

sql - 使用 Openquery 从 SP 跨链接服务器插入表

我想将数据从一台服务器发送到另一台服务器,我想提高我的性能,并想知道 OpenQuery 是否是一个很好的失败途径?

我试图做这样的事情;

但是,这会返回错误

我不明白这一点,因为查询确实运行良好并在没有 OpenQuery 的情况下产生所需的结果......

请问有人可以给我建议吗?