问一下winform连接mdb数据库,执行update语句的问题
其中的代码如下:
private string m_ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + @"\\tyjs.mdb";
private DataSet ds;
private OleDbDataAdapter dataAdapter;
private void button1_Click(object sender, EventArgs e)
{
double aa1=Convert.ToDouble(this.textBox1.Text.Trim());
double aa2=Convert.ToDouble(this.textBox2.Text.Trim());
double aa3=Convert.ToDouble(this.textBox3.Text.Trim());
string hm = this.label1.Text.Trim();
OleDbConnection sqlCon1 = new OleDbConnection(m_ConStr);
string sql1 =string.Format("update tyjs set pb={0} where ftyjsh='{1}'",aa1,hm);
MessageBox.Show(sql1);
dataAdapter = new OleDbDataAdapter(sql1, sqlCon1);
sqlCon1.Close();
}
MessageBox.Show(sql1);
这行显示也正常为 update tyjs set pb=8.3 where ftyjsh='3413001'
为什么就不能更新数据库呢?
顺便再问一下,更新的数据库,再刷新一下dataGridView1,需要怎么办?
------解决方案--------------------本帖最后由 bdmh 于 2013-01-28 14:39:09 编辑
你都没执行sql啊,你可以使用UpdateCommand,或者ExecuteNonQuery ,刷新grid要重新绑定数据源
------解决方案-------------------- OleDbConnection conn = new OleDbConnection(m_ConStr);
string sql1 = string.Format("update tyjs set pb={0} where ftyjsh='{1}'", aa1, hm);
conn.Open();
OleDbCommand cmd = new OleDbCommand(sql1, conn);
cmd.ExecuteNonQuery();
conn.Close();
------解决方案--------------------你的sql没有执行!
------解决方案--------------------你只把sql语句写好了,没执行,runsql什么的都没有
------解决方案--------------------OleDbDataAdapter不是用來執行sql語句的,請使用OleDbCommand
------解决方案-------------------- sql 没执行
------解决方案--------------------楼主还是要多看看ADO.NET五大类的用法
------解决方案--------------------sql语句木有执行哦~