View Full Version : سوال در مورد دستور select
esz_sa
جمعه 03 آذر 1391, 13:20 عصر
فوری
با سلام
من می خوام در برنامه برای کاربر گزارش دلخواه بگذارم برای این کار یک دستور select گذاشتم حالا می خوام در دستور select فیلدهایی که کاربر انتخاب می کنه را در گریدویو نشان بدهد
farghabil
جمعه 03 آذر 1391, 13:25 عصر
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=hasibdb;Integrated Security=True");
con.Open();
SqlCommand com = new SqlCommand();
com.CommandText = "insert into fsharj (code,price,qty,month,type) values ('" + textBox1.Text + "','" + comboBox1.Text + "','" + textBox2.Text + "','" + comboBox2.Text + "','" + comboBox3.Text + "')";
com.Connection = con;
com.ExecuteReader();
MessageBox.Show("اطلاعات با موفقیت ثبت شد");
DataSet1 ds = new DataSet1();
sqlDataAdapter1.Fill(ds);
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "fsh";
esz_sa
جمعه 03 آذر 1391, 13:40 عصر
دوست عزیز من نمی خوام insert کنم می خوام با select گزارش گیری کنم
Mahmoud Zaad
جمعه 03 آذر 1391, 13:57 عصر
سلام
از این روش (http://barnamenevis.org/showthread.php?343579-%D9%86%D9%85%D9%88%D9%86%D9%87-%DA%A9%D8%AF-%D8%AC%D8%B3%D8%AA%D8%AC%D9%88%DB%8C-%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA%D9%87&highlight=%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA%D9% 87) می تونی استفاده کنی.
esz_sa
جمعه 03 آذر 1391, 14:24 عصر
دوست عزیز این روش همه فیلدها را نشون میده
farghabil
یک شنبه 05 آذر 1391, 14:58 عصر
دوست عزیز من نمی خوام insert کنم می خوام با select گزارش گیری کنم
خب بجای insert ، از select استفاده کن ، من جون این کد رو آماده داشتم همینو کپی کردم از روی پروژم
کد بعد از اینسرت همونی هستش که میتونی باهاش تو grid نشون بدی
sgh_programer
یک شنبه 05 آذر 1391, 19:12 عصر
سلام دوست عزیز
شما باید کل دستورات رو در یک تابع بنویسی و اون تابع رو فراخوانی کنی
ببین اینجوری
public void Search_Fild(string str_Shart)
{
SqlConnection cnn = new SqlConnection();
cnn.ConnectionString = Program.connctionstring;//
SqlCommand cmm = new SqlCommand();
cmm.Connection = cnn;
cmm.CommandType = CommandType.Text;
cmm.CommandText =str_Shart;
Program.Str_command_Sod = cmm.CommandText.ToString();
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmm;
DataTable dt = new DataTable();
try
{
cnn.Open();
da.Fill(dt);
dataGridView1.DataSource = dt;
cnn.Close();
}
catch
{
FarsiMessegeBox.Show("خطا تعریف نشده");
}
if (dataGridView1.RowCount == 0)
{
FarsiMessegeBox.Show("موردی یافت نشد", "جستجو", FMessegeBoxButtons.Ok, FMessegeBoxIcons.Exclamtion);
}
}
حالا فرض کن میخوایی بر اساس نام کالا جستجو کنی
Search_Fild("select * from tbl_Anbar where kala_name='" + textBox1.Text + "'");
و همینجور الی آخر فقط باید select رو عوض کنی
این نکته را یادت باشه شاید این روش زیاد مناسب نباشه اما اینو جهت اینکه بهتر متوجه بشی گفتم
در پناه تنها برنامه نویس هستی موفق باشید
mreza80
سه شنبه 07 آذر 1391, 13:46 عصر
دوست عزیز کار خیلی راحت اینه که تو فرم گزارش گیری خود با افزون چک باکسهای (به نام فیلدها البته فارسی) به کاربر اجازه بدی فیلدها رو خودش انتخاب کنه سپس موقع فراخوانی با کنترل چک باکسها دستور sql رو بنویسی اگه متوجه نشدی بگو تا بیشتر توضیح بدم
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.