如何在文本框中输入文本后检查重复记录?

时间:2014-03-28 10:01:10

标签: c# asp.net stored-procedures duplicates

我已经编写了一个程序来检查数据库中的重复记录并返回true或false但我的问题是它无法接收nvarchar值,

ALTER proc  [p_Sgm_OnlineBooking_BaseInfo_CheckDuplicate]
 (
 @ParentId int,
 @Lang varchar(5),
 @TxtCheck nvarchar(MAX)
 )
 AS

BEGIN

if exists (select Value from Sgm_OnlineBooking_BaseInfo_Entries where @ParentId=ParentId and @Lang=Lang and @TxtCheck=Value
 )
select 'True'
else
select 'False'
and @TxtCheck=Value

End 

当我执行时给出错误的结果:

exec p_Sgm_OnlineBooking_BaseInfo_CheckDuplicate 0, fa, 'استرالیا' ==> false

但是加N给我的确是真的:

exec p_Sgm_OnlineBooking_BaseInfo_CheckDuplicate 0, fa, N'استرالیا' ==> true

如何在我的程序中应用这个N?我试过了N'@TxtCheck'=Value'N'+@TxtCheck=Value 但没有工作 请引导我完成这个..

1 个答案:

答案 0 :(得分:0)

试试这个

声明变量

DECLARE @pre_var int

将计数结果设置为变量

选择@pre_var = count(*)FROM tablename WHERE conditions

现在检查@pre_var IF @pre_var = 0 BEGIN

//插入或更新或其他

END