نمایش نتایج 1 تا 8 از 8

نام تاپیک: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1390
    محل زندگی
    اصفهان(خوزستانی هستم-%100عجم-متولدامیدیه-اصالتاًبهبهان)
    سن
    34
    پست
    87

    Exclamation مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    با سلام.
    من درحال طراحی برنامه ای بودم که متوجه شدم جستجوی کلمه ای مثل "موبایل" مشکل داره.تا زمانیکه کلمه "موبا" را تایپ میکردم نتایج رو نشونم میداد ولی همین که "ی" بهش اضافه میشد نتیجه ای رو نشونم نمیداد.
    قبل از این کلا فارسی رو جستجو نمیکرد تا اینکه توی sql server به قسمت properties بانکم رفتم و از تب Option گزینه Collection رو روی Arabic_100_CI_AS_KS_WS گذاشتم و وقتی دیدم "ی" رو مشکل داره دوباره اون رو بهPersian_100_CI_AS_KS_WS تغییر دادم ولی مشکل حل نشد.

    لطفا راهنمایی کنید
    مرسی عزیزان

  2. #2
    کاربر دائمی آواتار Galawij
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    شاره که م سنه
    پست
    711

    نقل قول: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    این لینک را مطالعه کنید. دستورات پست 6 و 8 را داخل یک Query بنویسید و اجرا کنید، درست می شه.

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1390
    محل زندگی
    اصفهان(خوزستانی هستم-%100عجم-متولدامیدیه-اصالتاًبهبهان)
    سن
    34
    پست
    87

    Exclamation نقل قول: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    نقل قول نوشته شده توسط galavezh مشاهده تاپیک
    این لینک را مطالعه کنید. دستورات پست 6 و 8 را داخل یک Query بنویسید و اجرا کنید، درست می شه.
    واقعا چرا اینطوریه؟مگه نگفتند توی SQL SERVER 2008 مشکل زبان فارسی بدلیل قرار دادن Collection فارسی توسط مایکروسافت حل شده؟پس چرا مشکل من از این طریق حل نشد ؟

  4. #4

    نقل قول: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    سلام

    مشكل از استاندارد صفحه كليدها ويندوزهايي كه يا اونها اطلاعات وارد ديتابيس شده هم مي‌تونه باشه
    در بعضي استانداردها هنگام تايپ، ي و در بعضي ی تايپ ميشه و به همين صورت در ديتابيس ذخيره ميشه
    بنابراين مشكل از Collection زبان فارسي نيست
    اگر يكبار اطلاعات ديتابيس درست بشه يعني مثلا همه ي ها به ی تبديل بشه يا برعكس (البته طبق استاندارد صفحه كليد خودتون) اونموقع ديگه مشكلي نداريد
    مي تونيد هم يك SP بنويسيد و اين تبديل رو اتجام بديد ولي خب سرعتتون پايين مياد

    به نظر من بهترين راه اينه كه يك استاندارد براي خودتون در نظر بگيريد و هنگام ثبت اطلاعات در در ديتابيس ي ها رو تبديل به ي استاندارد خودتون كنيد و بعد ثبتش كنيد
    براي جستجو هم ابتدا در عبارت تايپ شده جهت جستجو همه ي ها رو به استاندارد خودتون تبديل كنيد بعد در دستوراتي مثل Select استفاده كنيد
    البته اين مشكل براي حرف (ك ک)هم برقراره چون در استاندارد عربي به صورت ك و در استاندارد فارسي به صورت ک هست
    اگر من و شما هر كدوم يك چيز ياد داشته باشيم و به هم ياد بديم، حالا هر كدوم دو تا چيز ياد داريم ! http://www.ArminaCo.com

  5. #5
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1390
    محل زندگی
    اصفهان(خوزستانی هستم-%100عجم-متولدامیدیه-اصالتاًبهبهان)
    سن
    34
    پست
    87

    نقل قول: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    به نظر من بهترين راه اينه كه يك استاندارد براي خودتون در نظر بگيريد و هنگام ثبت اطلاعات در در ديتابيس ي ها رو تبديل به ي استاندارد خودتون كنيد و بعد ثبتش كنيد
    سلام دوست من.
    مشکل اینجاست که من در این زمینه تازه واردم و واقعا نمیدونم چه استانداردی باید تعریف کنم.
    دوست خوبم galavezh یه لینک معرفی کرد ولی متاسفانه هر کاری کردم نفهمیدم میخواد چی بگه و در نهایت میخواد چکار کنه.
    آیا باید از توابع صفحه کلید و کد های اسکی و اینجور چیز ها برای تبدیل ي به ی استفاده کنم؟

  6. #6
    کاربر دائمی آواتار Galawij
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    شاره که م سنه
    پست
    711

    نقل قول: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    دوست خوبم galavezh یه لینک معرفی کرد ولی متاسفانه هر کاری کردم نفهمیدم میخواد چی بگه و در نهایت میخواد چکار کنه.
    دوست عزیزم لینکی که من به شما معرفی کردم، با اجرای دستوراتش همه ی و ک ها را به یک شکل درمی آورد. یعنی از فرم فارسی به عربی تبدیل می کرد. که در این صورت در حال حاضر با اجرای آن Query بانک اطلاعاتی شما یکنواخت می شد.در حقیقت من این قسمت توضیحات دوستمون VBHamed را براتون گذاشته بودم:
    اگر يكبار اطلاعات ديتابيس درست بشه يعني مثلا همه ي ها به ی تبديل بشه يا برعكس (البته طبق استاندارد صفحه كليد خودتون) اونموقع ديگه مشكلي نداريد
    مي تونيد هم يك SP بنويسيد و اين تبديل رو اتجام بديد ولي خب سرعتتون پايين مياد

  7. #7

    نقل قول: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    با سلام.
    منم اين مشكل رو دارم. حالا ميخوام موقع Insert تمام "ي" هاي عربي رو به فارسي تبديل كنم.اين sp رو نوشتم:

    create procedure Change(@name nchar(10))
    as
    insert into dbo.test_tbl(tname)
    values(replace(@name,'ي','ی'))


    درسته؟ حالا چه جوري ميتونم ك و ة رو هم به اين sp اضافه كنم؟

  8. #8

    نقل قول: مشکل جستجوی حرف "ی" در داده های بانک بعد از اتصال به vb.net

    شما اگه بانک اطلاعاتی که استفاده میکنید Sql Server هست میتونید داخل کد Sql بعد از Like و قبل تک کوتیشن یه دونه N بزارید دیگه تو جستوجو ها هرچی رو باشه نشون میده و همینظور قبل از دستور Insert یا Update هم میتونید استفاده کنید که داده هاتون با
    Select Name From TableTest  Where Name Like N'%حمید%'

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •