これを試してください。execute @query を execute (@query) に変更しました:
ALTER proc getQuestion @qNo bigint, @total bigint, @next nvarchar(max) as begin declare @hisa bigint set @example@sqldat.com/3 if(@qNo<example@sqldat.com/3) begin declare @query nvarchar(max) set @query=('select top(1) * from tlb_Question inner join tlb_options on tlb_options.qID=tlb_Question.id and tlb_Question.qNumber=1 and tlb_Question.id not in ('+cast(@next as varchar)+')') --print @query execute (@query) end endプレ>