问题标签 [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.
mysql - 使用 SQL Server openquery 从 MySql Server 中提取数据
我正在尝试使用 SQL 服务器 OPENQUERY 函数从 Mysql 服务器中提取数据。当我运行查询来计算 w mysql 服务器中的记录时,我得到的值没问题
但是当我这样做时
我收到这个错误
我试过但没用
我假设这是一个数据类型问题,但我该如何解决呢?如何提取我需要的数据?
谢谢
php - 执行 OPENQUERY 以从 MySql Server 中提取数据并使用 PDO 从 php 脚本将其内部连接到 SQL 表?
在尝试从 SQL Server 访问 MySql Server 的数据之后,我一直面临一个问题。这是我到目前为止所做的。1) 在我的 SQL Server 上安装 MySQL ODBC Driver 5.2w 2) 我按照本网站http://sql-articles.com/blogs/creating-linked-
上的说明从 Microsoft SQL Server Managment S (MSQLSMS) 创建了一个链接服务器
服务器到 mysql-from-sql-server/
现在,在我的 MSQLSMS 中,我打开了一个与名为“SERV1”的服务器的连接,我执行了以下查询,它可以正常工作。
现在因为我使用 PHP 来执行这个查询。我已经完成了以下 1) 使用 PDO api 连接到我之前执行此查询的 SQL 服务器“SERV1”。2) 尝试执行上面列出的相同查询。但是这次我遇到了我无法解决的错误。
致命错误:未捕获的异常 'PDOException' 带有消息 'SQLSTATE[42000]:[Microsoft][SQL Server Native Client 10.0][SQL Server]无法初始化链接服务器“SERVPHP”的 OLE DB 提供程序“MSDASQL”的数据源对象
请注意,“SERVPHP”是运行我的 PHP 应用程序和运行 MySql Server 的服务器。“SERV1”如果我的 SQL 服务器在哪里运行并且我在哪里安装了 ODBC 驱动程序。
更多,当我从我的 PHP 应用程序以相同的方式运行此查询时,它可以工作
为什么它现在有效?我需要什么才能让这个查询从我的 PHP 服务器执行?
谢谢
sql-server - OpenQuery 到本地表
我有一个非常简单的脚本。目的是将数据从链接服务器拉到另一个数据库中的表中
这是以什么方式执行的?如果我只是设置@SQLString
and EXEC
,结果将显示在我的屏幕上。这是否意味着运行上面的脚本会将数据从链接服务器传送到我的本地计算机,然后传送到我的 sql server 数据库,或者数据是否直接从我的链接服务器传送到 sql server?
sql-server - 链接服务器处理时的查询模板
为了为应用程序从不同数据源获取数据创建单一界面,我创建了一个存储过程,我尝试在其中保留所有数据访问/处理例程。现在的情况:
- Sql Server sp 接收固定数量的参数,并应返回从远程服务器获取的记录集;
- 远程服务器表示为基于 Sql Sqrver Express 双方的链接服务器;
- 一些链接服务器只是指向本地 OLE DB 文件数据源的连接点(其他在 Sql Server 本身上有 db);
- 远程数据结构变化很大,对于每个链接服务器,应保留带有变量处理的特殊查询列表;
查询示例:
当源是基于 Sql Server 时:
因为我不仅需要处理连接属性(链接服务器名称),还需要处理查询参数(db、scheme)和变量(在本地 sp 运行时声明并存在)我有一些问题:
- 进行默认查询是一团糟——参数和变量解析使代码不可读;
- 由于处理变量,我可能需要求助于
sp_executesql
简化流程; - 不确定保留查询代码的方式 - 它应该
config_table
是 xml 还是 smth。
问题:
是否有可用的最佳实践?
根据本主题的主题,我正在寻找组织查询模板的最佳方法,只需将一些参数传递给它们,并可能使用默认或特殊代码。
sql - 尝试使用 OPENQUERY 通过 sql server 链接服务器从 DB2 (V4R5M0) 中选择 x 行时出错
我有一个从 SQL Server 2008 R2 到使用 OLE DB 提供程序“IBMDA400”的 DB2 数据库 (V4R5M0) 的链接服务器
链接服务器详细信息
这工作正常:
但是以下语句会产生错误:
错误
链接服务器“JTEST”的 LE DB 提供程序“IBMDA400”返回消息“SQL0199:不期望关键字 FETCH。有效标记:FOR WITH ORDER UNION OPTIMIZE。原因……:此处不期望关键字 FETCH。语法错误是在关键字 FETCH 处检测到。有效标记的部分列表是 FOR WITH ORDER UNION OPTIMIZE。此列表假定语句在意外关键字之前是正确的。错误可能在语句中较早,但语句的语法似乎是有效的至此,recovery...:检查指定关键字区域的SQL语句,可能缺少冒号或SQL定界符,SQL要求保留字作为名称时要进行定界,更正SQL语句并再次尝试请求。”。消息 7321,级别 16,状态 2,
我认为这是因为这个版本的 DB2 不支持 FETCH FIRST X ROWS ONLY?但是有没有办法在这个版本中只选择有限的记录集?
oracle - 使用 openquery 将 desc 命令传递给 oracle
我正在使用设置为 Oracle 的链接服务器处理 sql server 2005。我无法获取链接的基础帐户。我需要运行
从 SSIS 到 Oracle 的命令。我确实可以访问 openquery。有没有办法做到这一点?我猜没有,但一个问题很容易:)。
我知道
不起作用。DBA 对此帮助不大,这很可悲,因为我需要的只是模式,这样我就可以编写我需要的实际查询。我愿意接受任何可能让我得到答案的建议。谢谢!
迈克尔。
sql - 带变量的 VIEW 中的 SQL 远程函数
我正在尝试从SELECT
子句访问远程函数(我们称之为视图子句)。
问题是我不能使用 OPENQUERY 并执行 JOIN,因为我需要将 view 子句中的值发送到远程函数。OPENQUERY 不允许使用变量。
我不能使用 EXEC 创建动态 SQL 查询,因为它不适用于我的 view 子句。
我无法将远程功能移动到本地服务器,我根本无法在本地服务器中创建新功能。
整件事情其实很无奈,这还能解决吗?
示例代码:
提前致谢!
sql - 从函数调用远程存储过程
我有一个存储过程 SprocA 驻留在 ServerA 上。SprocA 接受 4 个参数,执行一个动态 sql 并返回一个包含 1 列(1 个整数值)的记录。我希望能够从 ServerB 上的函数 FnB 调用它,以便我可以在服务器 ServerB 上的存储过程 SprocB 中使用它来返回记录集。
例如,我想要这样的东西
可能的结果:
请帮忙
TL
sql-server-2008 - 通过 SQL Server 2008 上的 OpenQuery 在视图中进行参数化 ADSI 查询
我有一个包含域\用户帐户作为 nvarchar(100) 的列的视图。我需要将此列中的值从 domain\useraccount 转换为 Last, First Middle。我已成功创建链接服务器 (ADSI),并且可以通过 OpenQuery 调用将硬编码的帐户名称解析为实际名称。
但是,从视图中进行 OpenQuery 调用被证明是不可能的。我尝试了以下选项:
- 在 OpenQuery 调用中使用字符串替换/连接。
- 创建一个函数来包装 OpenQuery 调用,并从视图中调用该函数。
以上选项均无效。#1 失败,因为 OpenQuery 只接受一个预先形成的字符串作为参数,并且不可能在视图中创建一个(据我所知)。#2 失败,因为根据我尝试时收到的错误消息,从视图调用的函数本身不能包含对 EXEC(string) 的调用。#2 实际上是根据这篇知识库文章的官方解决方法的一种变体:
http://support.microsoft.com/kb/314520
任何人都可以对此有所了解吗?似乎没有办法在视图中进行参数化的 OpenQuery 调用。
谢谢!
sql-server-2008-r2 - SQL 链接服务器更新 Openquery 语法错误
我正在尝试通过链接服务器设置从 SQL Server 2008 R2 更新 PervasiveSQL 后端(Sage ERP 系统)中的数据。以下是返回的详细信息和错误消息... 关键是更新语句在开发框上工作得很好,非常相似的设置。任何帮助将不胜感激!
环境:
- Windows Server 2008 Enterprise(云服务器、Rackspace)
- Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (Intel X86) Express Edition with Advanced Services on Windows NT 6.1 (Build 7601: Service Pack 1) (WOW64) (Hypervisor)
- 使用 Pervasive SQL v.10 后端运行的 Sage Timberline ERP
设置:
我们在 SQL Server 2008 中有一个 LINKED SERVER 设置,使用 32 位 Timberline 驱动程序 (OBDC) 链接服务器使用 MSDASQL 提供程序,以下两个属性设置为 TRUE,“允许进程内”和“非事务更新”< /p>
问题:
我们可以从链接服务器成功提取数据,请参见下面的查询。我们可以通过 SSMS 中的链接服务器成功浏览对象。
但是,UPDATE
下面的语句返回以下错误。
错误:
链接服务器“TLLINKSERVER”的 OLE DB 提供程序“MSDASQL”返回消息“[Sage Timberline Office][Sage Timberline Office ODBC 驱动程序]语法错误。”。链接服务器“TLLINKSERVER”的 OLE DB 提供程序“MSDASQL”返回消息“[Sage Timberline Office][Sage Timberline Office ODBC Driver]UPDATE "\SERVER1\Company Data\DATA\COMPANY1\"<< ??? >>."TABLE1 " SET "DATEFIELD1"=? WHERE "JOBID"=? AND "DATEFIELD1"=?"。
消息 7343,级别 16,状态 4,第 1 行
链接服务器“TLLINKSERVER”的 OLE DB 提供程序“MSDASQL”无法更新表“[MSDASQL]”。