OpenQuery教程及日期条件式
近日因为公司系统需要,要从SQL2005链接INFORMIX进行数据同步,搜遍了网上竟然没有针对OpenQuery专门的介绍和解答;所以才有此文,针对初学者、使用过的、遇到问题的,搜罗并根据实际经验撰写此文; 一、OPENQUERY 函数介绍 重点: .使用 OPENQUERY 函数在链接服务器上执行直接传递查询的语法和事实; .直接传递查询示例的 SQL 语句:在链接服务器 XXXServer 上执行 SELECT 语句,并从传递回来的结果集中取出所有内容; 执行直接传递查询 当查询链接服务器的时候,可以使用 OPENQUERY 函数在链接服务器上执行直接传递查询 语法:OPENQUERY (链接服务器名称,‘查询字符串')网 www.wfuwu.com 使用 OPENQUERY 函数进行直接传递查询 直接传递查询示例 二、查询、新增、更新、删除 假设在第一步的设置里“链接服务器名”里填入的是“TEST”,查询、写入、更新及删除以表tableName为例用如下语句 这里最关键的是使用SQL的函数OPENQUERY,查询、写入、更新及删除的目标表都用OPENQUERY函数来打开Oracle的表就可以了,有关OPENQUERY函数的说明,SQL Server的帮助文档里如下: 在给定的链接服务器(一个 OLE DB 数据源)上执行指定的直接传递查询。可以在查询的 FROM 子句中像引用表名那样引用 OPENQUERY 函数。依据 OLE DB 提供程序的能力,还可以将 OPENQUERY 函数引用为 INSERT、UPDATE 或 DELETE 语句的目标表。尽管查询可能返回多个结果集,但是 OPENQUERY 只返回第一个。 语法 OPENQUERY ( linked_server,'query' ) 参数 linked_server 一个标识符,表示链接的服务器的名称。 'query' 在链接的服务器中执行的查询字符串。 注释 OPENQUERY 不接受参数变量。 三、OPENQUERY 的日期时间条件式 建议使用:select * from openquery(linked_server,'select * from kxx_file where kxx07={ ts ''2009-10-08 00:00:00.000''} ') 转自:http://www.cnblogs.com/godwar/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |