مشکل در واکشی اطلاعات از sql
من کلاس زیر رو برای ارتباط با پایگاه داده خودم نوشتم اولا از دوستان خواهش می کنم اشتباهاتم رو بگن دوم در قسمتی که می خوام اطلاعات رو واکشی کنم به مشکل برخوردم چون دیتا گریدمم در کلاس فرم هست و اینجا نمی تونم ازش استفاده کنم چطوری باید اطلاعات جداول رو به دیتا گرید منتقل کنم
class dbconnection
{
public static string constring;
public static string commandtxt;
private static SqlConnection conobject = new SqlConnection(constring);
SqlCommand comobject = new SqlCommand(commandtxt,conobject);
public void cstring(string constring2)
{
constring = constring2;
}
public void uid(string uidcomtxt)
{
commandtxt = uidcomtxt;
comobject.ExecuteNonQuery();
}
public string select(string seltxt)
{
commandtxt = seltxt;
SqlDataReader dbred = comobject.ExecuteReader();
//چطوری اطلاعات رو به دیتا گرید منتقل کنم اینجا
}
public void open() { conobject.Open(); }
public void clos() { conobject.Close(); }
}
رشته اتصال و کوئری مورد نظر از برنامه به این کلاس فرستاده میشه
نقل قول: مشکل در واکشی اطلاعات از sql
دوست عزيز شما نبايد از SqlDataReader استفاده كنيد بايد از SqlDataAdapter استفاده كني كه كدش همانند SqlCommand هستش در اونجا مي توني به SqlDataAdapter فرمان بدي كه DataTable پر كنه چون SqlDataReader قابليت Fill نداره شما بايد حتما از SqlDataAdapter استفاده كنيد. نمونه كدش رو هم مي زارم خودت مي توني Public يا Private بودنش نسبت به كلاست استفاده كني .
SqlConnection con = new SqlConnection(@"Data Source=(Address Server);Initial Catalog=(Database Name);Persist Security Info=True;User ID=(UserName);Password=(Password)");
SqlDataAdapter sda = new SqlDataAdapter("select table_name as Name from INFORMATION_SCHEMA.Tables", con);
DataTable ds = new DataTable();
sda.Fill(ds);
dataGridView1.DataSource = ds;
نقل قول: مشکل در واکشی اطلاعات از sql
ممکنه در مورد قابلیت fill توضیح بدین
نقل قول: مشکل در واکشی اطلاعات از sql
متد fill میاد اطلاعات کشیده شده از بانک رو که در sda هست رو پر میکنه (fill) در ds (دیتا تیبل ما ) یعنی انتقال اطلاعات یا پر کردنشون با متد fill در دیتا تیبل و سپس جلوی منبع گرید میازه که نمایش بده اطلاعات رو .
1 ضمیمه
نقل قول: مشکل در واکشی اطلاعات از sql
سلام دوست عزیز من روش بهتری پیشهاد می کنم تا از این همه کد نویسی خلاص شوید استفاده از دیتاست و نوشتن کوئری توسط تیبل آداپتور
خواستی ایمیل بزن تا کامل برات توضیح بدم
aliasghar.hosaini@gmail.com
ایتم عکس نمونهضمیمه 75811
ایتم نمونه کدی که نوشتم
infoPeshnhadTableAdapter.UpdateQueryPersonalAdd((i nt?) comboBox1.SelectedValue,
(int?) comboBox2.SelectedValue,
(int?) comboBox3.SelectedValue
, (int?) comboBox4.SelectedValue, AS.UserID,
radioButton1.Checked, radioButton3.Checked, richTextBox1.Text
, txtdate.Text, (int?) numericUpDownD1.Value,
(int?) numericUpDownD2.Value, (int?) numericUpDownD3.Value,
(int?) numericUpDownD4.Value,Convert.ToInt32(txtsnaseh.Te xt));