当前位置: 代码迷 >> C# >> 把TextBox中的数据存储到SQL数据库里边
  详细解决方案

把TextBox中的数据存储到SQL数据库里边

热度:97   发布时间:2016-05-05 04:32:55.0
把TextBox中的数据存储到SQL数据库里面
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;
                    }
                }
            }

------解决思路----------------------
楼主太菜啦,你这个是读取数据库的方法。
------解决思路----------------------
引用:
Quote: 引用:


 OleDbDataAdapter da = new OleDbDataAdapter(StrSQL, conn);
        DataSet ds = new DataSet();
        da.Fill(ds, "datatable");

这是保存的代码??坑傻子去吧,lz 估计连新增和修改都区分不开。

我复制的整个都是保存代码。

不对呀。你要执行的是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();

试试看
  相关解决方案