PDA

View Full Version : مشکل sql server در مقادیر فارسی



mina1363
سه شنبه 17 شهریور 1388, 14:00 عصر
سلام دوستان
من از query زیر برای اضافه کردن داده به دیتا بیسم استفاده کردم:


@offname nvarchar(50),
@offperiod nvarchar(50),
@offbegPeriod nvarchar(50),
@offEndPeriod nvarchar(50)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
insert into Office values(@offname,@offperiod,@offbegPeriod,@offEndPe riod)


و حالا میخوام با query زیر دنبال یک سطرش بگردم ولی به خاطر مقدار فارسی که داره اونو پیدا نمیکنه یعنی هیچ سطری رو برنمیگردونه باید چه کار کنم؟


select SalDBName from SaleMali s
INNER JOIN Office o
ON o.OfficeID=s.OfficeID
where s.OfficeID=24 and s.SalPeriod=1389 and OfficeName LIKE 'قاصدک'

ممنون میشم اگر راهنماییم کنید

mn_zandy63
چهارشنبه 18 شهریور 1388, 02:57 صبح
یک اینکه قبل از 'قاصدک' یه دونه حرف N باید بذاری که بفهمونی باید به صورت Unicode بهش نگاه بشه. و دیگه اینکه وقتی از Like استفاده میکنی، احتمالا منظورت اینه که فیلد مورد نظرت دقیقا این کلمه نیست و ممکنه حروفی بعد یا قبلش باشه، هر طرف که میخوای امکان وجود حرف باشه از یک % استفاده کن.
من فرض میکنم که میخوای کلماتی رو پیدا کنی که قراره بینشون، اولشون یا آخرشون کلمه قاصدک باشه. پس کوئریت این شکلی میشه:
select SalDBName from SaleMali s
INNERJOIN Office o
ON o.OfficeID=s.OfficeID
where s.OfficeID=24 and s.SalPeriod=1389 and OfficeName LIKE N'%قاصدک%'