在datagridview中修改表中内容后,数据库没反应?请教各位大侠 private void btn_edit_Click(object sender, EventArgs e)
{
string strcon = string.Format("server=.;user=sa;pwd=0000;database=abc");
SqlConnection con = new SqlConnection(strcon);
SqlDataAdapter da = new SqlDataAdapter("select * from student", con);
SqlCommandBuilder sb = new SqlCommandBuilder(da);
con.Open();
DataSet ds = new DataSet();
da.Fill(ds);
da.Update(ds);
con.Close();
}这是我在btn事件下的代码:请教各位大侠;
{
string strcon = string.Format("server=.;user=sa;pwd=0000;database=abc");
SqlConnection con = new SqlConnection(strcon);
SqlDataAdapter da = new SqlDataAdapter("select * from student", con);
SqlCommandBuilder sb = new SqlCommandBuilder(da);
con.Open();
DataSet ds = new DataSet();
da.Fill(ds);
da.Update(ds);
con.Close();
}这是我在btn事件下的代码:请教各位大侠;
??
一定要做了修改,再执行这个,并刷新一下。
第一种:直接写sql语句,如update 表名 set 字段1=‘****’ where 字段ID='**'
第二种,数据库取得出取出表的结构和数据,放在dataset 中,在dataset 中更新,最后用sqldataadapter .update(ds);
第三种,用存储过程,存储过程在数据库中定义好,sqlcommand 有个属性是设置采用存储过程,传入相应参数即可,
中select语句有问题,应该怎么写呢
SqlConnection con = new SqlConnection(strcon);
SqlDataAdapter da = new SqlDataAdapter("select * from student", con);
DataSet ds = new DataSet();
da.Fill(ds,"da");
datagridview.DataSource=ds.Table("da");
把这个写成一个方法点刷新的时候再调用这个方法
很简单啊
用不着那么麻烦
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand("select * from student where sid = @id", connection);
adapter.SelectCommand.Parameters.Add("@id", SqlDbType.Int, 4, "sid");
adapter.SelectCommand.Parameters[0].Value = id;
adapter.UpdateCommand = new SqlCommand("updata student set name = @value where sid = @id", connection);
adapter.UpdateCommand.Parameters.Add(new SqlParameter("@value", SqlDbType.VarChar, 10, "name"));
adapter.UpdateCommand.Parameters.Add(new SqlParameter("@id", SqlDbType.Int, 4, "sid"));
DataSet ds = new DataSet();
adapter.Fill(ds);
if (ds.Tables[0].Rows.Count > 0)
{
ds.Tables[0].Rows[0]["name"] = newValue;
adapter.Update(ds);
dgv.DataSource=ds.Tables[0];
}这是改了后的代码,实现不了,大家说这是怎么回事