using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;public partial class Scripts_Default : System.Web.UI.Page
{
    protected void Button3_Click(object sender, EventArgs e)
    {
        string Name = TextBox1.Text.Trim();
        string Password = TextBox2.Text.Trim();
        
        string Password1 = TextBox3.Text.Trim();
       
           String strCon = "Data Source=127.0.0.1;Integrated Security=SSPI ; Initial Catalog=user";
           SqlConnection conn = new SqlConnection(strCon);           
           conn.Open();
    
       string sql = "insert into [yl] values('" + 3 + "','" + Name + "','"+Password+"')";
           SqlCommand cmd = new SqlCommand(sql, conn);        int i = cmd.ExecuteNonQuery();
        if (i> 0)
        {
            Response.Write("<script>alert('注册成功');</script>");
        }
        else
        {
            Response.Write("<script>alert('注册不成功,请检查输入信息');</script>");
        }
        conn.Close();
    
    }
}
我这个注册页面为什么 不能使数据库添加数据呢

解决方案 »

  1.   

    string sql = "insert into [yl] values('" + 3 + "','" + Name + "','"+Password+"')";string sql = "insert into [yl] values('3','" + Name + "','"+Password+"')";
      

  2.   

    id是什么类型?   如果是int    就把   3左右两边的引号去掉
      

  3.   

    id  是 int  类型的 
      

  4.   

    通过debug来调试。
    1.确实数据库有没有正确连上。
    2.在debug下把sql语句watch出来,然后在数据库工具里执行,看看结果。
      

  5.   

    你调试的时候 把 sql 的值取出来,到数据库里执行一下 看看什么结果
      

  6.   

    正确的sql语句:string sql = "insert into [yl] values(' 3 ','" + Name + "','"+Password+"')";
    测试方法:把sql语句放到新建的查询窗口测试一下就知道了.
     
      

  7.   

    string sql = "insert into [yl] values("'" + 3 + "','" + Name + "','"+Password+"')";
      

  8.   

    都只是在猜测sql语句拼接的问题string sql = "insert into [yl] values('" + 3 + "','" + Name + "','"+Password+"')";改为下面的试试String Sql = String.Format("insert into y1 value('{0}','{1}','{2}')",3,Name,Password");
      

  9.   

    你看看你values后面跟的参数跟表里的列个数是否一致
      

  10.   

    测试一下你SQL语句正确么  然后再看代码。
      

  11.   

    查看报错信息;取出sql语句在数据库里执行看看。
      

  12.   

    为什么  脚本 都没有 弹出来呢? 就是<script>
      

  13.   

    insert into [表名] (列名1,列名2,列名3) values ('1','2','3');
    另外,注意一下数据类型
      

  14.   

    还有,你alert提示的时候,不建议用
    Response.Write("<script>alert('注册成功');</script>");
    用:
     Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert('成功!')</script>");
      

  15.   

    this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script>alert('成功!')</script>", false);
      

  16.   

    都没有报错吗?看你一下啊你的数据库连接正确了不,然后检查一下是否是匹配的,把你的SQL语句专门调出来运行一下先看看吧
      

  17.   

    设断点看下是不是sql语句的问题(复制sql语句在数据库里面直接执行,能成功插入数据,说明sql语句没问题)那你就要查看是不是连接数据库的问题了。