PCB MS SQL跨库执行SQL 获取返回值

Posted pcbren

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PCB MS SQL跨库执行SQL 获取返回值相关的知识,希望对你有一定的参考价值。

 

 

一.SQL跨库执行SQL 获取返回值

DECLARE  @Dblink nvarchar(100)
DECLARE  @sql nvarchar(MAX)
DECLARE  @layer INT
SET @Dblink = P2.fp_db.dbo.
select @sql=SELECT top 1 @layer=layer FROM  + @Dblink + mktxhglb  WHERE pdctno= ‘‘at00101ca0‘‘‘
exec sp_executesql @sql, N@layer int output ,@layer output
SELECT @layer

使用:sp_executesql 规则范要求:

1、要求动态Sql和动态Sql参数列表必须是NVARCHAR

2、动态Sql的参数列表与外部提供值的参数列表顺序必需一致

3、一旦使用了 ‘@name = value‘ 形式之后,所有后续的参数就必须以 ‘@name = value‘ 的形式传递,比如:

DECLARE  @Dblink nvarchar(100)
DECLARE  @sql nvarchar(MAX)
DECLARE  @layer INT
SET @Dblink = P2.fp_db.dbo.
select @sql=SELECT top 1 @layerNum =layer FROM  + @Dblink + mktxhglb  WHERE pdctno= ‘‘at00101ca0‘‘‘
exec sp_executesql @stmt=@sql,@params= N@layerNum int output ,@layerNum = @layer output
SELECT @layer

 

以上是关于PCB MS SQL跨库执行SQL 获取返回值的主要内容,如果未能解决你的问题,请参考以下文章

PCB MS SQL 标量函数(CLR) 实现转Json方法

PCB MS SQL表值函数与CLR 表值函数 (例:字符串分割转表)

PCB MS SQL 将字符串分割为表变量(表值函数)

PCB MS SQL CLR聚合函数(函数作用,调用顺序,调用次数) CLR说明

PCB MS SQL 排序应用---相邻数据且相同合并处理

PCB MS SQL 行转列(动态拼SQL)