PDA

View Full Version : بازم مشکل در search فارسی



resident
یک شنبه 29 اردیبهشت 1387, 15:12 عصر
سلام.
من یه SP نوشتم و میخوام فارسی search کنم کد زیر رو نوشتم اما جواب نمیده .


create procedure Service
@Title nvarchar(50)
as
select count(*)
from Service
where Title=N'@Title'
کجای کارم اشکال داره؟

Sub Zero
یک شنبه 29 اردیبهشت 1387, 15:20 عصر
where Title=N'@Title'
بااین دستوری که شما نوشتید دقیقا عبارت 'Title@' جستجو میشه .
به این صورت امتحان کنید :

create procedure Service
@titl nvarchar(50)
as
select count(*)
from Service
where Title=@titl

resident
یک شنبه 29 اردیبهشت 1387, 15:44 عصر
where Title=N'@Title'
بااین دستوری که شما نوشتید دقیقا عبارت 'Title@' جستجو میشه .
با چه دستوری می تونم مقدار پارامتر رو جستجو کنم؟

ASKaffash
یک شنبه 29 اردیبهشت 1387, 16:59 عصر
با سلام
دستور Sub zero درست است اشکال کار کجاست ؟

resident
دوشنبه 30 اردیبهشت 1387, 09:34 صبح
با سلام
دستور Sub zero درست است اشکال کار کجاست ؟
آخه میخوام N هم تو SP باشه تا فارسی جستجو کنه و من از توی برنامم فقط مقدار پارامتر رو پاس بدم.

alish
دوشنبه 30 اردیبهشت 1387, 10:06 صبح
موقع فراخواني SP پارامتر را با N ارسال كنيد، خود اس كيو ال هم اگر هم پارامتر را معمولي ارسال كنيد خودش بصورت 2 بايتي تبديل خواهد نمود (يونيكد)
دستور جناب آقاي ساب زيرو درست مي باشد دوست گرامي

ASKaffash
دوشنبه 30 اردیبهشت 1387, 12:59 عصر
با سلام
پارامتر ورودی شما از نوع NVarChar است یعنی اینکه UNICode را داره نیازی دیگه به N نیست برای اینکه حرف N برای متنهای ثابت بدون UNICode است