ALTER PROCEDURE dbo.Threaten_InsertResult (
@qid int,
@result nvarchar(200),
@user_id nvarchar(100) ,
@projectsign int
)AS
/* SET NOCOUNT ON */
declare @aid as int
select @aid=aid from answer where qid=@qid and answer.user_id=@user_id and projectsign=@projectsign
if (@aid!=null)
insert into answer(qid,result,answer.user_id,projectsign) values (@qid,@result,@user_id,@projectsign)
else
update answer set result=@result where aid=@aid@aid一直都是null,总是执行else后的语句~,这是怎么回是???
@qid int,
@result nvarchar(200),
@user_id nvarchar(100) ,
@projectsign int
)AS
/* SET NOCOUNT ON */
declare @aid as int
select @aid=aid from answer where qid=@qid and answer.user_id=@user_id and projectsign=@projectsign
if (@aid!=null)
insert into answer(qid,result,answer.user_id,projectsign) values (@qid,@result,@user_id,@projectsign)
else
update answer set result=@result where aid=@aid@aid一直都是null,总是执行else后的语句~,这是怎么回是???
insert into answer(qid,result,answer.user_id,projectsign) values (@qid,@result,@user_id,@projectsign)
else
update answer set result=@result where aid=@aid先不说问题,你的逻辑反了吧!insert应该和updage换地方
set @aid=0select @aid=aid from answer where qid=@qid and answer.user_id=@user_id and projectsign=@projectsign
if (@aid!=0)你可以用print(@aid)打出来看看