PDA

View Full Version : مشکل اجرا نشدن Query ها در SP که از طریق OPENROWSET صدا زده می شوند.



Touska
یک شنبه 15 اسفند 1389, 11:38 صبح
با سلام

من تو موارد زیادی این مشکل رو دارم ، که هر کدوم را به طریقی حل می کنم.
یکی رو با FMTONLY OFF و یکی رو با NOCOUNT ON

مشکل اینکه من یک SP طراحی می کنم که خط اولش یک مقدار رو UPdate می کنه
و خط دوم یک مقداری رو Select می کنه ولی وقتی آن را از طریق OPENROWSET صدا
می زنم از رو یک سرور SQL دیگر دستور UPDATE اجرا نمی شود ولی SELECT اجرا شده
و مقدار را بر می گرداند ، قابل ذکر است که همان SP روی سرور بدون مشکل اجر می شه.

Query به این صورت هست :

CREATE PROCEDURE [dbo].[PI_Center_Date]
@Center_Code INT
AS
BEGIN
SET NOCOUNT ON
UPDATE Center_Protocol SET Get_Date = 0 WHERE Center_Code = @Center_Code
SET NOCOUNT OFF

SELECT Get_Date FROM Center_Protocol Where Center_Code = @Center_Code
END

و روش صدا زدنش :

SELECT A.* FROM OPENROWSET('SQLOLEDB','192.168.100.100';'sa';'pass ',' SET FMTONLY OFF; EXECUTE [MMT].[dbo].[PI_Center_Date] 30 ') A

سروری که روش SP هست 2008 SP2 هست و سرور دیگر 2000 SP4 هست.

مشکل از چیست ، ممنون

Touska
سه شنبه 17 اسفند 1389, 12:08 عصر
من مشکلمو یک جور دیگه حل کردم ، یک SP جداگانه و یک Function Table جداگانه ساختم.

و آنها را جداگانه صدا زدم ، ولی در کل مشکل از چیست ، کل اینترنت رو Search کردم ، نمی دونم ، مشکل از کجاست.