0
我写了一个程序来检查重复的记录在数据库中,并返回真或假,但我的问题是,它不能接收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'[email protected]=Value
但没有工作 请指导我这个..
我试过,但我的问题是再次的条件。条件是相同的,需要识别nvarchar值。 – Rain
必须尝试像这样N @ TxtCheck –
ref this 1。 http://stackoverflow.com/questions/3868188/problem-with-where-clause-matching-on-arabic-string –