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

نام تاپیک: جستجوی ترکیبی

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1388
    پست
    36

    Question جستجوی ترکیبی

    سلام
    من یه صفحه ی جستجو برای مسئول دبیرخانه گذاشتم که 10 تا combobox با عناوین مختلف مثل طبقه بندی نامه ، ارجحیت، نوع و ... داره . میخوام نتیجه جستجو هم در datagridview نمایش داده بشه . اگر مسئول فقط یک عنوان را وارد کرد و دکمه جستجو را زد نتیجه نمایش یابد اگر دو یا سه یا بیشتر را وارد کرد بر اساس ترکیبی از آنها نمایش یابد.زبان C#‎ و بانک هم sql است.
    فقط خیلی ضروریه
    ممنون از توجه تان


  2. #2
    کاربر دائمی آواتار american_iran2006
    تاریخ عضویت
    آذر 1385
    محل زندگی
    تهران
    پست
    209

    نقل قول: جستجوی ترکیبی

    شما باید اول چک کنید ببینید که کدام گزینه ها را انتخاب کرده و بعد با دستور ها ی پشت

    سره هم دستور select گزینه منتخبfrom جدول مورد نظر شرط مورد نظر=where

    یه این روش برای هر 10 گزینه این کارو می تونید بکنبد

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1388
    پست
    36

    نقل قول: جستجوی ترکیبی

    خیلی خیلی ممنون که جواب سوال منو دادید ولی مشکل اینجاست که این اولین پروژه ای که کار می کنم و تقریبا صفرم درست نفهمیدم باید چیکار کنم . یه کم بیشتر توضیح بدین ممنون می شم ، یعنی چندتا SELECT بذارم به تعداد combobox ها ؟ بعد چه طوری ترکیبی کار می کنه که بر اساس همه ی فیلدهایی که وارد شده اشتراک بگیره و جواب رو در datagrid نمایش بده؟ اگه سوالم مبتدیه عذر می خوام.

  4. #4
    کاربر دائمی آواتار iman_me
    تاریخ عضویت
    بهمن 1388
    محل زندگی
    Microsoft Visual Studio
    پست
    338

    نقل قول: جستجوی ترکیبی

    واسه ترکیبی کار کردن باید از AND OR.... استفاده کنی
    مانند
    select *from tb_test where id=@id and name=@name or family=@family
    یه چیزایی شبیه این بسته به کاری که می خوای انجام بدی

  5. #5
    کاربر دائمی آواتار mohammad_2039
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    360

    نقل قول: جستجوی ترکیبی

    سلام
    از این هم میتونی استفاده کنی :


    if (comboBox1.Text.Length != 0 && comboBox2.Text.Length != 0 &&comboBox3.Text.Length != 0 )
    {
    string serch = string.Format(@" select * from tbl_test where name='{0}' and pass='{1}'and sum='{2}'", comboBox1.Text, comboBox2.Text, comboBox3.Text);
    DataSet m_set = newDataSet();
    SqlDataAdapter da = newSqlDataAdapter(serch,sqlConnection1);
    da.Fill(m_set,
    "tbl_test");
    dataGridView1.DataSource=m_set.Tables[0];

    }


  6. #6
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1388
    پست
    36

    نقل قول: جستجوی ترکیبی

    ممنون از پاسخی که دادید
    ولی این کد کاربر رو مجبور میکنه حتما همه ی قسمت ها رو پر کنه اگر هم از "یا" استفاده کنم بر اساس یه فیلد جستجو رو انجام میده . من میخوام کاربر هر کدام از فیلدهایی که مد نظرش هست رو بنویسه و جستجو کنه و نتیجه بر اساس اشتراک فیلدهای انتخابی انجام بشه.

  7. #7

    نقل قول: جستجوی ترکیبی


  8. #8
    کاربر دائمی آواتار mahdi87_gh
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    قزوین
    پست
    448

    نقل قول: جستجوی ترکیبی

    دوست عزیز به آدرس زیر برو و به پست 10 توجه کن جوابت میگیری
    https://barnamenevis.org/showthread.php?t=205073

  9. #9
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1388
    پست
    36

    نقل قول: جستجوی ترکیبی

    آقا مهدی ممنون از پاسختون ولی من درست متوجه نشدم اگر بخوام نتیجه رو در Datagridview نمایش بدم چطوری از این کد استفاده کنم ؟ یا بهتر بگم چه کدهای دیگری بهش اضافه کنم؟

  10. #10
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    تهران
    پست
    67

    نقل قول: جستجوی ترکیبی

    میتونی در دستور select به جای = از like استفاده کنی
    اگه هم نمی خوای کد نویسی کنی میتونی از دیتاگرید janus استفاده کنی

  11. #11
    کاربر تازه وارد
    تاریخ عضویت
    فروردین 1388
    پست
    36

    نقل قول: جستجوی ترکیبی

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

  12. #12
    کاربر دائمی آواتار mahdi87_gh
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    قزوین
    پست
    448

    نقل قول: جستجوی ترکیبی

    به روشی که گفتم شما میتونی شرط رو ایجاد کنی، حالا اگه قبلا همه رکوردها رو داخل یه dataview ریخته باشی، میتونی با دستور dv.RowFilter=condition; یکسری از رکوردها رو فیلتر کنی، یا اینکه یک sqlcommand بسازی و دستور select رو با این شرطی که ایجاد کردی اجرا کنی و به گرید بایند کنی

  13. #13
    کاربر دائمی آواتار mohammad_2039
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    تهران
    پست
    360

    نقل قول: جستجوی ترکیبی

    نقل قول نوشته شده توسط mmk1234 مشاهده تاپیک
    ممنون از پاسخی که دادید
    ولی این کد کاربر رو مجبور میکنه حتما همه ی قسمت ها رو پر کنه اگر هم از "یا" استفاده کنم بر اساس یه فیلد جستجو رو انجام میده . من میخوام کاربر هر کدام از فیلدهایی که مد نظرش هست رو بنویسه و جستجو کنه و نتیجه بر اساس اشتراک فیلدهای انتخابی انجام بشه.
    من فکر میکنم راهی که داری اینه که برای همه حالات دستور if بنویسی ، بعد اون کد رو با توجه به کمبو های انتخاب شده تغییر بده . مثلا اگه 3 تا کمبو داری یا 1 پر شده یا 2 یا 3 یا 1و2 یا 1و3 یا 2و3 یعنی 6 تا if بنویس و خلاص.

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

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