请问:update为什么不能立即更新数据库
public partial class bm : Form
{
public bm()
{
InitializeComponent();
}
DataBase db = new DataBase();//自行开发的数据库连接类,保证没问题
DataSet ds = new DataSet();
SqlDataAdapter da;
DataRow dr;
SqlCommandBuilder scb;
private void bm_Load(object sender, EventArgs e)
{
db.Open();
da = new SqlDataAdapter("select * from bm", db.con);
da.Fill(ds);
scb = new SqlCommandBuilder(da);
dataGridView1.DataSource = ds.Tables[0];
}
private void bm_FormClosed(object sender, FormClosedEventArgs e)
{
db.Close();
}
private void 存盘按钮_Click(object sender, EventArgs e)
{
da.Update(ds);
}
}
请问:为什么点击“存盘按钮”时,数据库无法立即更新(因为我想要数据库立即得到更新)?必须关闭窗口后数据库才会更新?不知是何原因?
请各位高手赐教!
[解决办法]
db.Open();db.Close();这两个可以加在db.Close();或da.Update(ds);的前后,bm_Load 进入的时候判断是否Open;不过这就太重复代码;可以试下专门写几个方法,分别执行查询,更新,添加,删除;以后直接传入SQL语句调用方法就可以了