初学asp.net 求教一个注册代码问题。我出现的问题是写一个判断代码来判断
在一个用户名存在的情况下不允许注册/插入数据库,
创建了一个插入数据库的InsertOperate()方法
public static bool InsertPerson(person p)
{
try
{
SqlConnection con=DB.CreateCon();
con.Open();
SqlCommand cmd=new SqlCommand("insert into Users values(@userName)",con);
SqlParameter userName=new SqlParameter("@userName",SqlDbType.VarChar,100);
userName.Value=p.userName;
cmd.Parameters.Add(userName);
cmd.ExecuteNonQuery();
return true;
}
catch(Exception e)
{
return false;
}要如何来写那段判断代码来解决插入数据库的问题?
在一个用户名存在的情况下不允许注册/插入数据库,
创建了一个插入数据库的InsertOperate()方法
public static bool InsertPerson(person p)
{
try
{
SqlConnection con=DB.CreateCon();
con.Open();
SqlCommand cmd=new SqlCommand("insert into Users values(@userName)",con);
SqlParameter userName=new SqlParameter("@userName",SqlDbType.VarChar,100);
userName.Value=p.userName;
cmd.Parameters.Add(userName);
cmd.ExecuteNonQuery();
return true;
}
catch(Exception e)
{
return false;
}要如何来写那段判断代码来解决插入数据库的问题?
{
using(SqlConnection connection = new SqlConnection(connectionString))
{
using(SqlCommand cmd = new SqlCommand(SQLString,connection))
{
try
{
connection.Open();
object obj = cmd.ExecuteScalar();
if((Object.Equals(obj,null))||(Object.Equals(obj,System.DBNull.Value)))
{
return null;
}
else
{
return obj;
}
}
你在执行cmd.ExecuteNonQuery();前先
strSql="select count(1) from 表 where userName='"+userName+"'"
object obj=hasStr(strSql);
判断obj的返回值
sql = "select *from Customer where Userid = @userid";
SqlParameter sqlpuserid = new SqlParameter("@userid",SqlDbType.NVarChar,50);
sqlpuserid.Value = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(this.tbusername.Text,"md5");
SqlCommand cmd = new SqlCommand(sql,cnschool);
cmd.Parameters.Add(sqlpuserid);
cnschool.Open();
System.Data.SqlClient.SqlDataReader r;
r = cmd.ExecuteReader(CommandBehavior.CloseConnection);
if(r.Read())
{
r.Close();
Page.Response.Write("<script language=javascript>alert('用户名以被占用');</script>");
}
else
{
Page.Response.Write("<script language=javascript>alert('用户名未被占用');</script>");
}
<!--
function IDRequest(n){
if( window.ActiveXObject)
{
xmlhttp_request = new ActiveXObject( "Microsoft.XMLHTTP" ); }
else if(window.XMLHttpRequest)
{
xmlhttp_request = new XMLHttpRequest();
}
else return;//定义收到服务器的响应后需要执行的JavaScript函数
url=n+document.getElementById('tbusername').value;//调用创建XMLHttpRequest的函数
xmlhttp_request.onreadystatechange = doContents;//调用doContents函数
xmlhttp_request.open('GET', url, true);
xmlhttp_request.send(null);
}
function doContents() {
if (xmlhttp_request.readyState == 4) {
// 收到完整的服务器响应
if (xmlhttp_request.status == 200)
{
//HTTP服务器响应的值OK
document.getElementById('message').innerHTML = xmlhttp_request.responseText;
//将服务器返回的字符串写到页面中ID为message的区域
}
else
{
alert('服务器出错');
} }
}
--> </script>