PDA

View Full Version : مشکل توی جستجو در دیتابیس و نمایشش توی گرید ویو



farshid_web
یک شنبه 07 آبان 1391, 17:23 عصر
سلام من یه مشکلی برام پیش اومده (راستش یه خورده تازه کارم!)
من برای سرچ داخل دیتابیسم به مشکل برخورد کردم و تو سایت هم که سرچ کردم به نتیجه ای نرسیدم اینه که از دوستان میخوام اگه می تونن بهم کمک کنن .خیلی ممنون
من قسمت اول سرچ که باید بگرده ببینه که ایا فیلد مورد نظر هست یا نه را نوشتم بعد میخواستم که نتیجه سرچ را تو یه صفحه دیگه یا همون صفحه توی دیتاگرید ویو نشون بده .. ولی این کارا نمیتونم انجام بدم
نتیجه را نمیتونم بفرستم تو گریدویو :ناراحت:
پیشاپیش از دوستان ممنونم :قلب: :قلب:

farshid_web
دوشنبه 08 آبان 1391, 16:15 عصر
دوستان اگه کسی میتونه بهم کمک کنه
نمیدونم که چجوری باید اون چیزی که سرچ شده را تو گریدویو نشونش بدم ...یعنی گرید ویو را که مینویسم همه را نشون میده و من کیخوام رکوردی که سرچ شده را بشه دید
همون دستور سلکتی که برای جستجو نوشتم را بنویسم؟؟؟

farshid_web
دوشنبه 08 آبان 1391, 16:22 عصر
دوستان اگه کسی میتونه بهم کمک کنه
نمیدونم که چجوری باید اون چیزی که سرچ شده را تو گریدویو نشونش بدم ...یعنی گرید ویو را که مینویسم همه را نشون میده و من کیخوام رکوردی که سرچ شده را بشه دید
همون دستور سلکتی که برای جستجو نوشتم را بنویسم؟؟؟

farshid_web
دوشنبه 08 آبان 1391, 16:23 عصر
دوستان اگه کسی میتونه بهم کمک کنه
نمیدونم که چجوری باید اون چیزی که سرچ شده را تو گریدویو نشونش بدم ...یعنی گرید ویو را که مینویسم همه را نشون میده و من کیخوام رکوردی که سرچ شده را بشه دید
همون دستور سلکتی که برای جستجو نوشتم را بنویسم؟؟؟

farshid_web
سه شنبه 09 آبان 1391, 11:36 صبح
:متعجب: :گریه: :متعجب: :گریه::متعجب::گریه::متعجب::مت جب::متعجب::متعجب:

arefba
سه شنبه 09 آبان 1391, 13:26 عصر
string queryString =
"SELECT CustomerID, CompanyName FROM dbo.Customers";
SqlDataAdapter adapter = new SqlDataAdapter(queryString, connection);

DataSet customers = new DataSet();
adapter.Fill(customers, "Customers");

farshid_web
سه شنبه 09 آبان 1391, 18:44 عصر
خیلی ممنون به خاطر این کد که دادین ولی مشکل من اینه که میخوام اون چیزی که سرچ شده را نشون بده و بقیه رکورد ها را نشون نده
نمیدونم همون سلکتی که نوشتم را باید تکرار کنم تو sql command؟؟؟

black_binary
سه شنبه 09 آبان 1391, 18:55 عصر
سلام
احتمالا سرچی که میگی، میایی توی گرید ویو جستجو میکینی.
اینکارو نکن سرچ رو برو توی db انجام بده و خروجی ات هم همونطور که arefba (http://barnamenevis.org/member.php?99613-arefba) گفتند یک data set هست که با گریدویو bind بکن

nasim2012
سه شنبه 09 آبان 1391, 19:05 عصر
سلام
اگه میشه نمونه کد ی که استفاده می کنی یا عکسی از اون را بده تا بشه گفت مشکلت چیه:تشویق:

programerinfonet
سه شنبه 09 آبان 1391, 19:44 عصر
string d;
OleDbDataAdapter adap;
DataSet ds = new DataSet();
d = "select * from groups WHERE name=("'+textbox1.text+"')";
adap = new OleDbDataAdapter(d, con);
adap.Fill(ds, "groups");
dgv.DataSource = ds.Tables["groups"];

farshid_web
چهارشنبه 10 آبان 1391, 16:22 عصر
این کد منه... منظورتون از این که میگین تو دیتابیس بنویسم اینه که stored procedure باشه یا چیز دیگه؟؟




private void button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("server=HOME-PC\\MSQL;database=otomasion;uid=oto;pwd=aaa");
SqlCommand cmd = new SqlCommand("select * from et_sherkat where name_sherkat like @n or name_modir like @m");
cmd.Parameters.AddWithValue("@n", textBox1.Text);
cmd.Parameters.AddWithValue("@m", textBox1.Text);
SqlDataReader dr;
cmd.Connection = con;
con.Open();
dr = cmd.ExecuteReader();


if (dr.Read())
{


SqlDataAdapter da = new SqlDataAdapter("select * from et_sherkat where name_sherkat like @%n% or name_modir like @%m%", con);
cmd.Parameters.AddWithValue("@%n%", textBox1.Text);
cmd.Parameters.AddWithValue("@%m%", textBox1.Text);

DataSet ds = new DataSet();
da.Fill(ds, "T2");
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "T2";

}
con.Close();
}

farshid_web
دوشنبه 15 آبان 1391, 21:20 عصر
string d;
OleDbDataAdapter adap;
DataSet ds = new DataSet();
d = "select * from groups WHERE name=("'+textbox1.text+"')";
adap = new OleDbDataAdapter(d, con);
adap.Fill(ds, "groups");
dgv.DataSource = ds.Tables["groups"];


ببخشید میشه یه توضیح کوچیک بدین که گروپ چیه؟ ممنون

farshid_web
دوشنبه 15 آبان 1391, 21:21 عصر
سلام
احتمالا سرچی که میگی، میایی توی گرید ویو جستجو میکینی.
اینکارو نکن سرچ رو برو توی db انجام بده و خروجی ات هم همونطور که arefba (http://barnamenevis.org/member.php?99613-arefba) گفتند یک data set هست که با گریدویو bind بکن

این که میگین تو دیتابیس بنویسم اینه که stored procedure باشه یا چیز دیگه؟؟

farshid_web
چهارشنبه 17 آبان 1391, 19:46 عصر
دوستان ممکنه یهم کمک کنید

programerinfonet
چهارشنبه 17 آبان 1391, 19:51 عصر
دوست عزیز groups نام جدول من بوده
شما اسم جدول خودتو بنویس

boysilent
چهارشنبه 17 آبان 1391, 20:08 عصر
دوستان ممکنه یهم کمک کنید

SqlConnection con = new SqlConnection(@"Data Source=.;Initial Catalog=نام پایگاه داده;Integrated Security=True");
SqlDataAdapter da = new SqlDataAdapter(@"select * from namejadvval WHERE namesatr like N'%" + txtcom.Text + "%'", con);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;

این ساده ترین کدی هست که برات نوشتم ;)

ali_habibi1384
پنج شنبه 18 آبان 1391, 11:03 صبح
نيازي به SP نيست.
اطلاعات رو توي ديتا تيبل بريزيد و اونو به گريدتون وصل كنيد.
حالا كافيه اطلاعات ديتا تيبل رو فيلتر كنيد تا توي گريد مشاهده كنيد:
DtataTable1.defaultview.rowfilter = "FieldName = '" + YourTextBoxSearch.text + "'";

farshid_web
شنبه 27 آبان 1391, 22:53 عصر
SqlConnection con = new SqlConnection(@"Data Source=.;Initial Catalog=نام پایگاه داده;Integrated Security=True");
SqlDataAdapter da = new SqlDataAdapter(@"select * from namejadvval WHERE namesatr like N'%" + txtcom.Text + "%'", con);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;
این ساده ترین کدی هست که برات نوشتم ;)

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

There is already an open DataReader associated with this Command which must be closed first.

چکارش باید بکنم؟ :خجالت:

farshid_web
شنبه 27 آبان 1391, 22:56 عصر
نيازي به SP نيست.
اطلاعات رو توي ديتا تيبل بريزيد و اونو به گريدتون وصل كنيد.
حالا كافيه اطلاعات ديتا تيبل رو فيلتر كنيد تا توي گريد مشاهده كنيد:
DtataTable1.defaultview.rowfilter = "FieldName = '" + YourTextBoxSearch.text + "'";

شرمنده من یکم تازه کارم !!
منظور از sp چی هست؟