PCB MS SQL跨庫執行SQL 獲取返回值

2022-02-10 18:26:15 字數 1164 閱讀 6882

一.sql跨庫執行sql 獲取返回值

declare

@dblink

nvarchar(100

)declare

@sql

nvarchar(max

)declare

@layer

intset

@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

intset

@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

sql語句跨伺服器跨資料庫執行

加為好友 傳送私信 發表於 2009 04 15 21 38 42 得分 0 sql語句跨伺服器跨資料庫執行 第一種方法 select from opendatasource sqloledb server 伺服器ip uid sa pwd 密碼 庫名.dbo.表名 第二種方法 先使用聯結伺服器 e...

sql跨庫查詢

方式一 使用連線伺服器 sp addlinkedserver mylink sqloledb local sp addlinkedsrvlogin mylink false null,sa sa select from mylink test.dbo.student 或者在 物件資源管理器 伺服器物...

Sql跨庫查詢

不使用鏈結的伺服器名,而提供特殊的連線資訊,並將其作為四部分物件名的一部分。語法opendatasource provider name,init string 引數provider name 註冊為用於訪問資料來源的 ole db 提供程式的 progid 的名稱。provider name 的資...