+ -
当前位置:首页 → 问答吧 → ASP.net和sql连接问题

ASP.net和sql连接问题

时间:2011-12-27

来源:互联网

下面的代码是网站起始页,但是每次都是说“用户名存在,请选择其它用户名”,也就是每次都是跳转到最后了,请问这是怎么个情况呢?




using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
  protected void Page_Load(object sender, EventArgs e)
  {
   
  }
  protected void Button1_Click(object sender, EventArgs e)
  {
  try
  {
  //创建数据库连接
  SqlConnection con = db.CreateConnection();
  //打开数据库
  con.Open();
  //建立插入的SQL语句
  string strsql = "insert into login(uname, upass, email, phone, addr) values('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + TextBox6.Text + "')";
  //创建SqlCommand命令控件
  SqlCommand cmd = new SqlCommand(strsql, con);
  //执行SqlCommand控件,不返回任何数据
  cmd.ExecuteNonQuery();
  //关闭数据库连接
  con.Close();
  //跳转到指定页面
  Response.Redirect("login.aspx");
  }
  //错误处理
  catch
  {
  Response.Write("<script>alert('用户名存在,请选择其它用户名')</script>");
  }
  }
   
}

作者: cdd801   发布时间: 2011-12-27

这是怎么个逻辑,这样就用户民存在了?

作者: LMAOhuaNL   发布时间: 2011-12-27

你直接输出strsql 的在数据库操作试下看看,我估计insert 会执行错误,譬如违反了唯一的约束、sql语法错误等··

作者: livelymoon   发布时间: 2011-12-27

肯定是你的try块里的语句出错, 出现异常了 ,才跳转到catch 块里执行 
  把你的 catch块 的语句注释起来再运行 看到底是哪句报错

作者: ljfolo59   发布时间: 2011-12-27