こんにちは、はい、以前の質問と同じ人です...カーソル/SQLに関しては、私が作成した以下のストアドプロシージャ/カーソルを使用しています..コンパイルは適切に行われ、問題は私が実行しようとすると、次のエラーが発生します。
メッセージ 208、レベル 16、状態 1、行 1 無効なオブジェクト名 'DQM.dbo.ST_0043_BLANK_CONSENT_SAP_SIEBEL'。
(影響を受ける行は 0 行です) メッセージ 208、レベル 16、状態 1、行 1 無効なオブジェクト名 'DQM.dbo.ST_0044_CONSENT_SIEBEL_SAP_DIFF'。
(0 行が影響を受けます) メッセージ 208、レベル 16、状態 1、行 1 無効なオブジェクト名 'DQM.dbo.ST_0045_CONSENT_SIEBEL_BANNER_DIFF'。
すべてを選択すると、行が返されるため、これらのオブジェクトがすべて存在することがわかりました。どんな助けでも大歓迎です。
USE [Adhoc_datafix]
GO
/****** Object: StoredProcedure [dbo].[CostTest_02] Script Date: 01/10/2013 15:43:32 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[CostTest_02]
AS
BEGIN
DECLARE @Issue_id int;
DECLARE @Master_id int;
DECLARE @Issue_table varchar(255);
DECLARE @price real;
DECLARE @rowcount bigint;
DECLARE @sql varchar(3000)
DECLARE cost_cursor cursor FOR
SELECT [Issue Id], [Master Issue Id], [Issue Table], [Price]
from Adhoc_datafix..[IssueTable]
FOR UPDATE OF [Issue Id];
OPEN cost_cursor;
FETCH NEXT FROM cost_cursor into @Issue_ID, @Master_id, @Issue_table, @Price
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT @sql = 'Select count(*) from DQM.' + quotename(@Issue_table)
EXEC(@sql)
set @Rowcount = @@rowcount
UPDATE ADHOC_DATAFIX..[Issue Cost]
set [Issue Id] = @Issue_ID ,
[Master Issue Id] = @Master_ID ,
[Row Count] = @Rowcount,
[Cost] = CAST(@Rowcount * @price as money)
--WHERE CURRENT OF cost_cursor;
FETCH NEXT FROM cost_cursor into @Issue_ID, @Master_id, @Issue_table, @Price
END
close cost_cursor;
DEALLOCATE cost_cursor;
END