0 امتیاز
سلام

چطوری میشه فیلترینگ رو با استفاده از چندتا تکس باکس انجام داد(البته من از where استفاده کردم ولی اگر یکی از تکس باکس ها خالی باشه شرط های دیگه بی اثر میشه)

مثلا من میخوام شماره افراد بین 0 تا 10 select کنم و بقیه موارد مهم نباشه ولی چون تکس باکس سن خالی میمونه نتیجه ای نمیگیرم

البته میشه یا شرط و چتدتا کوئری مختلف انجام داد ولی دنبال راهی هستم که با یه کوئری انجام بشه بدون گذاشتن شرط های تو در تو ]چون اگر تعداد تکس باکس ها بره بالا دیگه خیلی وقتگیر میشه

با تشکر

1 پاسخ

+2 امتیاز
تشکر

با ado چطوری میشه؟
توسط (356 امتیاز) 16 53

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

private void Search()
        {
            SqlCommand cmd = new SqlCommand();
            con.Open();
            cmd.Connection = con;
            
            if (StrDate != "") //بررسی خالی بودن تاریخ جهت شرکت در شرط جستجو
            {
                cmd.CommandText = "select * from TblRent where Customer Like N'%" + textSearchMoshtariName.Text + "%' and FilmName Like N'%" + textSearchFilmName.Text + "%' and DateBeginRent=N'" + StrDate + "'";
                           //"select * from TblRentMovie where   FilmName Like N'%" + textSearchFilmName.Text + "%' and FilmCountry Like N'%" + textSearchCountry.Text + "%' and Id Like N'" + textSearchCode.Text + "%'";
            }
            else
            {
                cmd.CommandText = "select * from TblRent where Customer Like N'%" + textSearchMoshtariName.Text + "%' and FilmName Like N'%" + textSearchFilmName.Text + "%'";
            }
            
            SqlDataAdapter da = new SqlDataAdapter();
            da.SelectCommand = cmd;
            DataTable dt = new DataTable();
            da.Fill(dt);
            con.Close();
            dataGridViewX1.DataSource = dt;

            FillText();


        }

 

توسط (3,062 امتیاز) 1
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,919 کاربر

دسته بندی ها

...