majidnazarister
جمعه 13 خرداد 1390, 19:43 عصر
سلام.کلی گشتم ولی کدها یا دارای ایراد بودند یا مناسب من نبودند یا اینکه نسبت به زمان نامانوس بودند.خواهشن رو هوا حرف نزن اگه بلدی کد بنویس.
مراحل اتصال و بازیابی به بانک به این صورته:
OleDbConnection con = newOleDbConnection();
OleDbCommand com = newOleDbCommand();
OleDbDataAdapter ado = newOleDbDataAdapter();
DataTable dt = newDataTable();
con.ConnectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\\ado\\db1.accdb";
com.Connection=con;
com.CommandText = "SELECT * FROM t1";
ado.SelectCommand=com;
ado.Fill(dt);
dataGridView1.DataSource=dt;
که در بخش اپدیت به اینصورته:
int n=Convert.ToInt32(textBox4.Text);
com.CommandText = "UPDATE t1 SET name=@p2,lname=@p3 WHERE (scod=@p1);";
com.Parameters.Clear();
com.Parameters.AddWithValue("@p1", n );
com.Parameters.AddWithValue("@p2",textBox5.Text );
com.Parameters.AddWithValue("@p3", textBox6.Text );
con.Open();
com.ExecuteNonQuery();
con.Close();
con.Dispose();
که بانک دارای سه فیلد به صورت scod-name-lname است که اولی دارای نوع auto است.
مشکلات :
1) اپدیت نمیشه . فکر کنم برای نوع auto باشه که البته اونو نمیشه تغییر داد یعنی نباید تغییر بدم. برای اعمال اپدیت کجا مشکل داره؟
2)برای اینکه برنامه همون جا جذول رو به روز کنه چه کدی نیاز داره .اینکه برنامه رو برای اعمال تغییرات از اول اجرا نکنیم.
برای فیلتر کردن کد زیر رو نوشتم ولی میگه خطای نحوی داره:
((DataTable)this.dataGridView1.DataSource).Default View.RowFilter = "name=" + cboFilterType.SelectedText ;
3) برای فیلتر کردن بر اساس مثلا نام چی نیاز داره؟
مراحل اتصال و بازیابی به بانک به این صورته:
OleDbConnection con = newOleDbConnection();
OleDbCommand com = newOleDbCommand();
OleDbDataAdapter ado = newOleDbDataAdapter();
DataTable dt = newDataTable();
con.ConnectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\\ado\\db1.accdb";
com.Connection=con;
com.CommandText = "SELECT * FROM t1";
ado.SelectCommand=com;
ado.Fill(dt);
dataGridView1.DataSource=dt;
که در بخش اپدیت به اینصورته:
int n=Convert.ToInt32(textBox4.Text);
com.CommandText = "UPDATE t1 SET name=@p2,lname=@p3 WHERE (scod=@p1);";
com.Parameters.Clear();
com.Parameters.AddWithValue("@p1", n );
com.Parameters.AddWithValue("@p2",textBox5.Text );
com.Parameters.AddWithValue("@p3", textBox6.Text );
con.Open();
com.ExecuteNonQuery();
con.Close();
con.Dispose();
که بانک دارای سه فیلد به صورت scod-name-lname است که اولی دارای نوع auto است.
مشکلات :
1) اپدیت نمیشه . فکر کنم برای نوع auto باشه که البته اونو نمیشه تغییر داد یعنی نباید تغییر بدم. برای اعمال اپدیت کجا مشکل داره؟
2)برای اینکه برنامه همون جا جذول رو به روز کنه چه کدی نیاز داره .اینکه برنامه رو برای اعمال تغییرات از اول اجرا نکنیم.
برای فیلتر کردن کد زیر رو نوشتم ولی میگه خطای نحوی داره:
((DataTable)this.dataGridView1.DataSource).Default View.RowFilter = "name=" + cboFilterType.SelectedText ;
3) برای فیلتر کردن بر اساس مثلا نام چی نیاز داره؟