我只要更新数据库中的两个字段,我这样写代码但是提示错误啊
private void btnOk_Click(object sender, System.EventArgs e)
{
OleDbConnection conn = new OleDbConnection("provider=Microsoft.Jet.OleDb.4.0;Data Source="+Server.MapPath("data/MyGuestBook.mdb"));
string updateString = "update mybook set replyContent = @replyContent,replyTime = @replyTime where id = selId";
OleDbCommand comm = new OleDbCommand(updateString,conn);
conn.Open();
comm.Parameters.Add(new OleDbParameter("@replyContent",OleDbType.VarWChar));
comm.Parameters["@replyContent"].Value = txtReply.Text;
comm.Parameters.Add(new OleDbParameter("@replyTime",OleDbType.Date));
comm.Parameters["@replyTime"].Value = DateTime.Now;
comm.ExecuteNonQuery();
conn.Close();
Response.Redirect("index.aspx");
}
难道我要把所有的字段语句都写上才可以吗?
请指教!!
今天把分都给拉,没办法,对不起
private void btnOk_Click(object sender, System.EventArgs e)
{
OleDbConnection conn = new OleDbConnection("provider=Microsoft.Jet.OleDb.4.0;Data Source="+Server.MapPath("data/MyGuestBook.mdb"));
string updateString = "update mybook set replyContent = @replyContent,replyTime = @replyTime where id = selId";
OleDbCommand comm = new OleDbCommand(updateString,conn);
conn.Open();
comm.Parameters.Add(new OleDbParameter("@replyContent",OleDbType.VarWChar));
comm.Parameters["@replyContent"].Value = txtReply.Text;
comm.Parameters.Add(new OleDbParameter("@replyTime",OleDbType.Date));
comm.Parameters["@replyTime"].Value = DateTime.Now;
comm.ExecuteNonQuery();
conn.Close();
Response.Redirect("index.aspx");
}
难道我要把所有的字段语句都写上才可以吗?
请指教!!
今天把分都给拉,没办法,对不起
===>
"update mybook set replyContent = @replyContent,replyTime = @replyTime where id = @selId";
剩下的好像跟你的一样
你试试
string updateString = string.Format("update mybook set replyContent = '{0}',replyTime = {1} where id = '{2}'", txtReply.Text, DateTime.Now, selId);
OleDbCommand comm = new OleDbCommand(updateString,conn);
conn.Open();
comm.ExecuteScalar();
conn.Close();