私はストアプロシージャでまだ新しいです。ストアプロシージャで実行すると構文が正しく返されません
誰も助けて、これに間違っていると教えてください。
Create PROCEDURE [dbo].[spCreateProductionReport]
@whereClause nvarchar(max)
As
Begin
declare @id int, @itemNum nvarchar(20), @datetimestamp datetime, @tStations_id int
declare @counter int, @itemNumPrev nvarchar(20)
set @counter = 0
set @itemNumPrev =''
set @whereClause = ''
SET NOCOUNT ON;
create table #Temp
(
id int,
itemNum nvarchar(20),
tStations_id int,
datetimestamp datetime,
groupID int
)
DECLARE db_cursor CURSOR FOR
select id,itemNo,tstations_id,datetimestamp
from
tProduction_Count @whereClause
--where datetimestamp between '2017-03-16 00:00:00' and '2017-03-16 23:59:59'
ORDER BY id ASC
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @id, @itemNum,@tStations_id, @datetimestamp
私が得たエラーは次のとおりです。 'メッセージ102、レベル15、状態1、プロシージャspCreateProductionReport、ライン42 付近に正しくない構文 '@whereClause'。'
@whereClause変数はパラメータですか、それとも '宣言するのを忘れましたか? – Norsk
それはパラメータでなければなりません、私はフロントエンドから文字列/テキストを取得するためにwhereClauseを使用し、ここでフィルタとして使用します – MichaelJ