protected void Button2_Click(object sender, EventArgs e)
{
string sn = Session["uid"].ToString();
string csd =this.TextBox3.Text;
string csrq = this.TextBox4.Text;
string telphone = this.TextBox1.Text;
string sname = this.TextBox2.Text;
string grjl = this.TextBox5.Text;
string ssex = this.RadioButtonList1.SelectedValue.ToString();
string StrSQL = "update student set sname='" + sname + "',ssex='" + ssex + "',csrq='" + csrq + "',csd='" + csd + "',telphone='" + telphone + "',grjl='" + grjl + "' where sno='" + sn + "'";
string connStr = System.Configuration.ConfigurationManager.ConnectionStrings["OleDbConnSQLServer"].ConnectionString.ToString();
OleDbConnection conn = new OleDbConnection(connStr);
conn.Open();
OleDbDataAdapter da = new OleDbDataAdapter(StrSQL, conn);
DataSet ds = new DataSet();
da.Fill(ds, "datatable");
Response.Write("<script>alert('修改成功!');location='jiben.aspx'</script>");
}
这是保存到数据库的代码,前面把数据读取到textbox中可以,在保存到数据库中就不可以。但是我在其他页面中利用这段代码是可以用的,不知道哪里出了问题
------解决思路----------------------
打断点看看sql语句是什么,放到SQL Server Management Studio运行看看结果
------解决思路----------------------
public static bool Update(string sql, SqlParameter[] pars)
{
using (SqlConnection sqlcon = getCon())
{
using (SqlCommand sqlcmd = new SqlCommand(sql, sqlcon))
{
if (pars != null)
{
sqlcmd.Parameters.AddRange(pars);
}
sqlcon.Open();
int rs = sqlcmd.ExecuteNonQuery();
if (rs > 0)
{
return true;
}
else
{
return false;
}
}
}
------解决思路----------------------
楼主太菜啦,你这个是读取数据库的方法。
------解决思路----------------------
不对呀。你要执行的是update不是insert。
http://wenku.baidu.com/link?url=Nx81dMCmvFx8_RkmwMvYxhnCJXUeLJFkQUMfOiDRArsYiHgmRn_EI4nDmcAJI2NXaCy3eLEvuqGI86cDd0ZT7wiVZFcNT7gG2N3pIr33T-y
------解决思路----------------------
...你这是保存??你这明明就是把数据读取到数据集啊...
------解决思路----------------------
...你这是保存??你这明明就是把数据读取到数据集啊...
就是啊!!楼主还得多加强下ADO的知识才行啊!!
把下面这段
OleDbDataAdapter da = new OleDbDataAdapter(StrSQL, conn);
DataSet ds = new DataSet();
da.Fill(ds, "datatable");
更改为
OleDbCommand cmd=new OleDbCommand(StrSQL, conn);
cmd.ExecuteNonQuery();
试试看