晚上更新数据库的时候发现可以更行一行,数据库只是太烂了,在此发帖求救各位大侠:
我有个表pro 中有name,date,intro字段,想问下,怎么来使用update更新某一行代码,是update pro set name=xx,date=xx,intro=xx where name=yy 吗?
那具体的读取数据库和更新语句怎么写啊,实在不会了 谢了!
我有个表pro 中有name,date,intro字段,想问下,怎么来使用update更新某一行代码,是update pro set name=xx,date=xx,intro=xx where name=yy 吗?
那具体的读取数据库和更新语句怎么写啊,实在不会了 谢了!
{
string strSql = "update pro set [name]=@name where name=@n ";
OleDbCommand cmd = new OleDbCommand(strSql, objConn);
cmd.Parameters.AddWithValue("@name", "");
cmd.Parameters.AddWithValue("@n", "");
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
cmd.Parameters.AddWithValue("@name", ""); 这句是什么意思啊?
数据库忘完了,呵呵
OleDbCommand cmd = new OleDbCommand(strUpdate, thisConnection);
thisConnection.Open();
cmd.ExecuteNonQuery();
thisConnection.Close();
这样写的代码 ,但是老是报update出错, 而且好像 就出在 cmd.ExecuteNonQuery();
这上面,看下吧,帮个忙 呵呵
update pro set name=xx,date=xx,intro=xx where name=yy如果xx yy是常量,且对应数据库中的类型不是数字,需要加上引号 如 ='xx'
否则会全表都改变.
conn.Open();//更新一行,你就先取出name=yy这一行数据:
OleDbDataAdapter da = new OleDbDataAdapter("select * from bm where name="+ "'" + yy +"'", conn);//name=yy这一行数据
OleDbCommandBuilder cmd = new OleDbCommandBuilder(da);
DataSet ds = new DataSet();
da.Fill(ds, "pro ");
ds.Tables["pro "].Rows[0]["name"] = TextBox1.Text;// 你的XX
ds.Tables["pro "].Rows[0]["date"] = TextBox2.Text;// 你的XX
ds.Tables["pro "].Rows[0]["intro"] = TextBox3.Text;// 你的XX
da.Update(ds, "bm"); //ACCESS中要用此方法才能更新到数据库