急求 分布式查詢問題

2021-04-21 01:31:33 字數 1487 閱讀 5563

192.168.1.100上有兩個儲存過程,proca和procb,

proca呼叫了procb,

procb中呼叫了192.168.1.200上某資料庫的表進行查詢

在192.168.1.100的查詢分析器裡執行procb,結果和速度都很正常

在192.168.1.100的查詢分析器裡執行proca,等待非常久都沒有結果,造成查詢分析器死掉

儲存過程如下:

create    procedure  dbo.procb

asbegin

select holidayday from [192.168.1.200].cms.dbo.outtime  

endgo

create    procedure  dbo.proca

asbegin

create table #tbl (holidayday datetime)

insert into #tbl exec procb

select * from #tbl

drop table #tbl

endgo

把procb中呼叫192.168.1.200表的語句用本地資料庫表代替(也就是不存在分布式查詢),執行

proca和procb都很正常,儲存過程修改如下:

create    procedure  dbo.procb

asbegin

-----------select holidayday from [192.168.1.200].cms.dbo.outtime  

select holidayday from cms.dbo.tmfholidaysched_hai

endgo

create    procedure  dbo.proca

asbegin

create table #tbl (holidayday datetime)

insert into #tbl exec procb

select * from #tbl

drop table #tbl

endgo

我還做了另外乙個測試,儲存過程修改如下,就是呼叫內嵌儲存過程時,不進行資料集插入表操作,這樣也能順利執行,但是這樣就無法獲得子儲存過程返回的資料集了:

create    procedure  dbo.procb

asbegin

select holidayday from [192.168.1.200].cms.dbo.outtime  

endgo

create    procedure  dbo.proca

asbegin

create table #tbl (holidayday datetime)

exec procb

select * from #tbl

drop table #tbl

endgo

不知道究竟什麼原因造成的,我想跟分布式查詢可能有一定關係,還請各位賜教!!多謝了!

分布式查詢

sql server所謂的分布式查詢 distributed query 是能夠訪問存放在同一部計算機或不同計算機上的sql server 或不同種類的資料來源,從概念上來說分布式查詢與普通查詢區別 它需要連線多個mssql伺服器也就是具有多了資料來源.實現在伺服器跨域或跨伺服器訪問.而這些查詢是否...

分布式查詢

exec sp addlinkedserver server servera srvproduct provider sqloledb datasrc 192.168.0.28 exec sp addlinkedsrvlogin rmtsrvname servera useself false rm...

分布式查詢

sql server所謂的分布式查詢 distributed query 是能夠訪問存放在同一部計算機或不同計算機上的sql server 或不同種類的資料來源,從概念上來說分布式查詢與普通查詢區別 它需要連線多個mssql伺服器也就是具有多了資料來源.實現在伺服器跨域或跨伺服器訪問.而這些查詢是否...