从sql server 到Oracle使用openquery带参数查询

原创 2016年08月31日 17:15:15

     这两天一直在做财务报表的整理、导出,其中大量用到了数据库中计算,又因为集团与子公司用到的数据库不是一个数据库,所以就用到了openquery跨库查询

     因为财务报表计算比较复杂,所以这里就举一个简单地例子说明openquery使用:

    openquery函数不能传递参数,

    一种方法是将带参数的where限定条件放到openquery函数的外面,如 

    select * from OPENQUERY (linked_server, 'SELECT id FROM msgs') WHERE id=@id),但问题是如果数据量大的话,限定条件放在函数里面执行的效率更高,放在外面加重    了链接服务器的负担,等待返回结果的时间更长了,没有达到我想加快查询速度的问题。

    一种方法是将openquery语句放到一个字符串里面,但是这时候就要格外注意引号的问题,如 

DECLARE @Sql VARCHAR(1000)
set @sqlstr = 'select * from  openquery(ikangmis,select * from table where id='''+@id+''')
';
exec ( @sqlstr );
EXEC(@Sql)
   

版权声明:本文为博主原创文章,未经博主允许不得转载。

使用 链接服务器执行SELECT、UPDATE、INSERT 或 DELETE 及其它命令

当在SQL SERVER中建立好链接服务器之后,我们可以使用下面的方法对远程的数据库进行相关的操作。 假设链接服务器的名称为 Orcl   SELECT:     指明要选择的列的过虑条件,可...
  • yanzhibo
  • yanzhibo
  • 2014年01月20日 22:46
  • 10803

SQLSERVER读取ORACLE缺少数据,OPENQUERY只能读取一条数据

在SQL2000配置链接服务器读取ORACLE数据, 根据网络上找到的绿色版配置资料进行了配置,http://blog.csdn.net/sunwork888/article/details/421...
  • sunwork888
  • sunwork888
  • 2015年10月30日 11:08
  • 1474

SqlServer调用OPENQUERY函数远程执行增删改查

由于业务需求,我的SqlServer数据库通过MySQL的ODBC驱动连接了一个远程MySQL数据库,在SqlServer上要怎么远程执行MySQL命令呢,经过一番百度,将练习内容整理如下。 /* ...
  • u012143455
  • u012143455
  • 2015年11月19日 16:06
  • 4082

sql server 2000更新技巧&select 查询中带参数,游标中使用exec

更新多个ID最后时间的记录 update  a set qesl_no=0 from f_gxhz a where fbid_no in ('117887','117889','118112') an...
  • chenhisen
  • chenhisen
  • 2012年08月16日 15:42
  • 1320

SQL 在OPENQUERY中使用参数

转自:http://www.cnblogs.com/Dannier/archive/2011/09/21/openquery.html OpenQuery 是SQL Server用来与其他Ser...
  • gsairon
  • gsairon
  • 2012年11月28日 11:36
  • 526

SQL 在OPENQUERY中使用参数

OpenQuery 是SQL Server用来与其他Server交互的一种技术,通过OpenQuery,SQL Server 可以直接访问其他数据库资源。而其他数据库在OpenQuery 表达式中是以...
  • guaiguaigirlma
  • guaiguaigirlma
  • 2016年10月17日 10:35
  • 418

Atitit.mysql oracle with as模式临时表模式 CTE 语句的使用,减少子查询的结构性 mssql sql server..

Atitit.mysql  oracle with as模式临时表模式 CTE 语句的使用,减少子查询的结构性 mssql sql server..   1. with ... as (...) ...
  • attilax
  • attilax
  • 2014年12月10日 23:39
  • 2368

Sql Server参数化查询之where in和like实现详解

http://www.cnblogs.com/lzrabbit/archive/2012/04/22/2465313.html 身为一名小小的程序猿,在日常开发中不可以避免的要和where i...
  • shenxm1966
  • shenxm1966
  • 2015年09月22日 16:40
  • 1326

Sql Server参数化查询之where in和like实现详解

文章导读 拼SQL实现where in查询 使用CHARINDEX或like实现where in 参数化 使用exec动态执行SQl实现where in 参数化 为每一个参数生成一个参数实现wh...
  • andy4319
  • andy4319
  • 2017年01月11日 12:49
  • 114

Sql Server参数化查询之where in和like实现详解

文章导读 拼SQL实现where in查询 使用CHARINDEX或like实现where in 参数化 使用exec动态执行SQl实现where in 参数化 为每一个参数生成一个参数实现w...
  • yenange
  • yenange
  • 2012年06月12日 17:31
  • 860
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从sql server 到Oracle使用openquery带参数查询
举报原因:
原因补充:

(最多只允许输入30个字)