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

نام تاپیک: مشکل با دستور Like در query گرفتن از Access

  1. #1

    مشکل با دستور Like در query گرفتن از Access

    سلام
    من با استفاده از C#‎‎‎‎ یه دیکشنری نوشتم که هم به فارسی و هم به انگلیسی ترجمه می کنه برنامه درشت کار میکنه فقط یه مشکل داره وقتی می خوام لغات فارسی رو با با Like جستجو کنم
    لغات فارسی رو پیدا نمیکنه این هم کد جستجو هایی که تست کردم و ناقص کار کردن و بعضی ها هم کار نکردن:
    یه دستور بی نقص می خواستم

    strSQL = "select * from Farsi Where Farsi_Word  LIKE '%" + Farsi_Word + "%'"; 
    strSQL = "select * from Farsi Where Farsi_Word  LIKE N'%" + Farsi_Word + "%'";


    این یه ابزاره برای سایتم: www.tprogrammer.com
    خودتون برید این دیکشنری رو چک کنید
    من فکر کنم از این زبان عربی باشه که لغات گچ پژ رو پشتیبانی نمیکنه چون من حرف (ی) کلمه (راضي) رو با شیفت ط زدم درست کار کرد ولی با ی معمولی کار نکرد
    آخرین ویرایش به وسیله uniservice : سه شنبه 01 تیر 1389 در 21:06 عصر

  2. #2

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    دوست عزیز از توابع (LRIM(RTRIM) استفاده کنی درست میشه به این شکل

    کد HTML:
     strSQL = "select * from Farsi Where LTRIM(RTRIM(Farsi_Word))  LIKE '%" + Farsi_Word.TRIM() + "%'"

  3. #3
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,055

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    البته trim بتنهایی کار هر دو ltrim و rtrim رو انجام میده
    -----------------
    جالبه مثل اینکه سئوال پروژه درسی هست چون کاربر دیگه ای هم دقیقا همین مشکل رو داشت!

  4. #4
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    دی 1387
    محل زندگی
    تهران
    پست
    1,369

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    نقل قول نوشته شده توسط uniservice مشاهده تاپیک
    سلام
    من با استفاده از C#‎‎‎‎‎ یه دیکشنری نوشتم که هم به فارسی و هم به انگلیسی ترجمه می کنه برنامه درشت کار میکنه فقط یه مشکل داره وقتی می خوام لغات فارسی رو با با Like جستجو کنم
    لغات فارسی رو پیدا نمیکنه این هم کد جستجو هایی که تست کردم و ناقص کار کردن و بعضی ها هم کار نکردن:
    یه دستور بی نقص می خواستم


    strSQL = "select * from Farsi Where Farsi_Word  LIKE '%" + Farsi_Word + "%'"; 
    strSQL = "select * from Farsi Where Farsi_Word  LIKE N'%" + Farsi_Word + "%'";
    سلام
    اگر ازاين كد در اكسس استفاده مي كنيد مسلمه كه جواب نمي گيري چرا كه در اكسس LIKE بدون علامت % ميباشد و اگر هم همين فرمول در محيط C#‎‎ استفاده ميكنيد علامت تك كوتيشن را بيرون از % قرار نده فكر مي كنم بايد آن را بعد از % قرار بدهيدمثل '%
    موفق باشيد

  5. #5
    کاربر دائمی آواتار wolfstander
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    کتاب اکسس
    پست
    724

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    مشکلی که دوستان دارند در اکسس دستور like به این صورت نوشته میشه
    Like "*" & [Forms]![frmCorrectTelNumber]![txtFamilySearch] & "*"
    به جای علامت % از علامت * استفاده میشه
    به همین سادگی
    امیدوارم که مشکل پروژه دوستان هم حل شده باشه

  6. #6

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    آقا از این همه لطفتون ممنون.
    برای پست اول و دوم : من از نوع فیلد nvarchar استفاده کردم نیازی به ltrim اینا نیست و این هم یه پروژه درسی نیست این یه ابزار برای سایتمه www.tprogrammer.com برین تو سایت سمت راست زیر منوی اصلیه

    برای پست سوم: من با استفاده از علامت % برای ترجمه لغات انگلیسی نتیجه می گیرم فقط برای فارسی جواب نمیده

    پست آخر صبر کن تست کنم ...nn..m...???...nnn.nn.m..mn.???..~~~~~ آقا کار نکرد
        public string Get_FaVerb()
    {
    string strSQL;
    strSQL = "select * from Farsi Where Farsi_Word LIKE '*" + Farsi_Word + "*'";
    return strSQL;
    }

    سایت منه برید خودتون دیکشنری رو ببینین www.tprogrammer.com
    من فکر کنم از این زبان عربی باشه که لغات گچ پژ رو پشتیبانی نمیکنه چون من حرف (ی) کلمه (راضي) رو با شیفت ط زدم درست کار کرد ولی با ی معمولی کار نکرد

  7. #7

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    سلام دستور ی که شما نوشتین حرف مشابه را در کل رشته ها بررسی می کند

    مثلا شما فیادی دارید که

    ali
    alireza
    mohmmad
    mahmod
    reza

    اگر شما تایپ کنید r هم رای شما reza را می اورد هم alireza را برای اینکه فقط رضا را بیابد از دستور زیر استفاده کن.

    "select * from person Where name LIKE '" + txtsearxh.Text.Trim() + "%'";

  8. #8

    Thumbs up نقل قول: مشکل با دستور Like در query گرفتن از Access

    نقل قول نوشته شده توسط wolfstander مشاهده تاپیک
    مشکلی که دوستان دارند در اکسس دستور like به این صورت نوشته میشه
    Like "*" & [Forms]![frmCorrectTelNumber]![txtFamilySearch] & "*"
    به جای علامت % از علامت * استفاده میشه
    به همین سادگی
    امیدوارم که مشکل پروژه دوستان هم حل شده باشه
    -----------------------------------------------------------------------------
    آقا ممنون منم مشکلم حل شد

  9. #9
    کاربر جدید آواتار itsoitso2
    تاریخ عضویت
    تیر 1392
    محل زندگی
    ساده بگم شمالیم اهل همین نزدیکیا
    پست
    15

    Lightbulb نقل قول: مشکل با دستور Like در query گرفتن از Access

    سلام اقا تورو خدا دقیق بگین چطور کد نوشتین؟ چنروزه بدجور درگیرشم اخری اینه
    select * from bimar where name like '%" + name.Text.Trim() + "%'
    ولی نمیاد از تکسباک هرچی رو تکه مشابه رشته تکسباکس رو پیدا کنه بلکه رشته دقیق مشابه تکسباکسو از بانکو پیدا میکنه.
    مثلا تو تکس باک مینویسم s تو بانک اونایی که فقط s خالین رو پیدا میکنه.دیکه هرچی که شامل s باشه رو پیدا نمیکنه. از * هم بجای % استفاده کردم بیففایده بود :(((((((((
    اقا توروخدا چوابمون بدین بدجور گیرمممنونم
    آخرین ویرایش به وسیله itsoitso2 : دوشنبه 23 شهریور 1394 در 08:40 صبح

  10. #10
    کاربر جدید آواتار itsoitso2
    تاریخ عضویت
    تیر 1392
    محل زندگی
    ساده بگم شمالیم اهل همین نزدیکیا
    پست
    15

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    سلام اقا تورو خدا دقیق بگین چطور کد نوشتین؟ چنروزه بدجور درگیرشم اخری اینه
    select * from bimar where name like '%" + name.Text.Trim() + "%'
    ولی نمیاد از تکسباک هرچی رو تکه مشابه رشته تکسباکس رو پیدا کنه بلکه رشته دقیق مشابه تکسباکسو از بانکو پیدا میکنه.
    مثلا تو تکس باک مینویسم s تو بانک اونایی که فقط s خالین رو پیدا میکنه.دیکه هرچی که شامل s باشه رو پیدا نمیکنه. از * هم بجای % استفاده کردم بیففایده بود :(((((((((
    اقا توروخدا چوابمون بدین بدجور گیرمممنونم

  11. #11
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    سلام
    در قسمت شرط کوئری این کد را قرار بدید

     Like "*" & Forms!Form Name!Text Box Name & "*"
    آخرین ویرایش به وسیله Rasool-GH : سه شنبه 24 شهریور 1394 در 19:53 عصر

  12. #12
    کاربر جدید آواتار itsoitso2
    تاریخ عضویت
    تیر 1392
    محل زندگی
    ساده بگم شمالیم اهل همین نزدیکیا
    پست
    15

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    نقل قول نوشته شده توسط Rasool-GH مشاهده تاپیک
    سلام
    در قسمت شرط کوئری این کد را قرار بدید

     Like "*" & Forms!Form Name!Text Box Name & "*")
    ارور میده :(
    ستاره بدون دابل کوتیشن ایراد نمیگیره اما جوابم نمیده

  13. #13
    کاربر جدید آواتار itsoitso2
    تاریخ عضویت
    تیر 1392
    محل زندگی
    ساده بگم شمالیم اهل همین نزدیکیا
    پست
    15

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    من این کدو زدم
    "select * from bimar where name like '%"
    + name.Text.Trim()+"%' and family like '%"+family.Text+"%'"



    اما وقتی میگم کلماتی رو جستجو کن که دارای s باشند، فقط اونایی رو که دقیقا s هستن را پیدا میکنه و کلماتی که s دارنو پیدا نمیکنه.
    تورو خدا کمک کنین

  14. #14
    کاربر دائمی آواتار Rasool-GH
    تاریخ عضویت
    دی 1387
    محل زندگی
    خراسان
    پست
    704

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    بله اصلاح شد . پرانتز اضافه بود
    اگه نمونه فایل بزارین خیلی زودتر به نتیجه میرسین

  15. #15
    کاربر دائمی آواتار ایلیا آخوندزاده
    تاریخ عضویت
    آبان 1392
    محل زندگی
    تبریز
    پست
    479

    نقل قول: مشکل با دستور Like در query گرفتن از Access

    نقل قول نوشته شده توسط itsoitso2 مشاهده تاپیک
    من این کدو زدم
    "select * from bimar where name like '%"
    + name.Text.Trim()+"%' and family like '%"+family.Text+"%'"



    اما وقتی میگم کلماتی رو جستجو کن که دارای s باشند، فقط اونایی رو که دقیقا s هستن را پیدا میکنه و کلماتی که s دارنو پیدا نمیکنه.
    تورو خدا کمک کنین
    از N استفاده کنید به شکل زیر:

    query = "select * from tbl where title like N'%" + textBox1.Text + "%'";

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

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