string connstr = System.Configuration.ConfigurationManager.ConnectionStrings["IPTVConnectionString"].ConnectionString.ToString();
            SqlConnection myconn = new SqlConnection(connstr);
            string sql = "insert into Users(UserName,LoginName,PassWord,leves,sex,phone,email,email,address,sfID) values (@UserName,@LoginName,@PassWord,@leves,@sex,@phone,@email,@email,@address,@sfID)";
            
            SqlCommand cmd = new SqlCommand(sql, myconn);
            myconn.Open();
            int r = cmd.ExecuteNonQuery();
           try
           {
             
               if (r > 0)
               {
                   cmd.CommandText = "select * from Users";
                   SqlDataReader dr= cmd.ExecuteReader();
                   this.GridView1.Caption = "增加后的查询结果";
                   this.GridView1.DataSource = dr;
                   this.GridView1.DataBind();
               }
           }

解决方案 »

  1. cmd.Parameters.Add(new SqlParameter("@UserName", "UserName"));
      cmd.Parameters.Add(new SqlParameter("@LoginName", "LoginName"));
      cmd.Parameters.Add(new SqlParameter("@PassWord", "PassWord"));
    cmd.Parameters.Add........
    ............
    依次给参数赋值
      

  2. 不对。。你的参数那里多写了个:,@email,@phone,@email,@email
      

  3. ,@email,@email
    ============
    太粗心了
      

  4. 楼主你这是到底用sql语句呢,还是用存储过程啊。
    用sql语句的话。
    你申明变量的话不就好了。
    string @UserName,@LoginName,@PassWord,@leves,@sex,@phone,@email,@email,@address,@sfID;
    如果是存储过程的话。你真心写错了。
    存储过程是调用的。
      

类似问题 »