当前位置:编程学习 > C#/ASP.NET >>

ASP.NET如下代码为什么信息进不到数据库里?

我是一个新手,用的VS2008+SQL SEVER2005,从网上摘了一段代码改了改但是发现信息进不到数据库中,也没有错误提示,请大家帮我看看,谢谢啦

cs文件:

private void Button1_Click(object sender, System.EventArgs e)
{

//get the acquired value
string userAccount = this.TextBox1.Text.Trim();
string userPassword = this.TextBox2.Text.Trim();
string userRealName = this.TextBox4.Text.Trim();
string userSex = this.ddlSex.SelectedItem.Value.Trim();
string userEmail = this.TextBox5.Text.Trim();
string useraddress = this.TextBox6.Text.Trim();
string userzipcode = this.TextBox7.Text.Trim();
string userphone = this.TextBox8.Text.Trim();
//operate the database
try
{
//config the database
string strConn=ConfigurationSettings.AppSettings["CakeData"];
SqlConnection sqlConn=new SqlConnection();
sqlConn.ConnectionString=strConn;
//create the command
SqlCommand cmd=new SqlCommand("InsertUser",sqlConn);
cmd.CommandType=CommandType.StoredProcedure;
//add parameters
cmd.Parameters.Add(new SqlParameter("@userID",userAccount));
cmd.Parameters.Add(new SqlParameter("@userName",userRealName));
cmd.Parameters.Add(new SqlParameter("@userSex",userSex));
cmd.Parameters.Add(new SqlParameter("@Password",userPassword));
cmd.Parameters.Add(new SqlParameter("@Email", userEmail));
cmd.Parameters.Add(new SqlParameter("@Address", useraddress));
cmd.Parameters.Add(new SqlParameter("@telephone", userphone));
cmd.Parameters.Add(new SqlParameter("@postcod", userzipcode));
//open the database
sqlConn.Open();
//save the affected result
int aff=cmd.ExecuteNonQuery();
//close the reader and the database
sqlConn.Close();

}
catch(Exception ex)
{
//Alert(ex.Message);
}

}
private void LB_SeeResult_Click(object sender, System.EventArgs e)
{
Server.Transfer("select_adapter.aspx");
}


}

追问:<connectionStrings>
<add name="CakeDataConnectionString" connectionString="Data Source=MAXFONG\SQLEXPRESS;Initial Catalog=CakeData;Integrated Security=True" providerName="System.Data.SqlClient"/>
<add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\CakeData.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>

是这个么?

答案:请帖出的 catch的 报错内容,跟据内容才能判断是什么问题。

可能会出现的问题:

1,string strConn=ConfigurationSettings.AppSettings["CakeData"];
你的 Web.config文件中 没有设置"CakeData"这个key 其中的数据库连接字符串

2, 你使用InsertUser对数据库用户表进行插入操作,参数是否符合存储过程定义。请检查自己的存储过程。

不知道你的存储过程 InsertUser写的是什么。

另外把你的try和catch去掉,看看报的什么错。

catch(Exception ex)//你把这部分加上看看控制台输出什么
{

//Alert(ex.Message);

Console.WriteLine(ex.Message);//这句
}

代码错误,完全不是这样cmd.Parameters.Add(new SqlParameter("@userID",userAccount));
cmd.Parameters.Add(new SqlParameter("@userName",userRealName));
cmd.Parameters.Add(new SqlParameter("@userSex",userSex));
cmd.Parameters.Add(new SqlParameter("@Password",userPassword));
cmd.Parameters.Add(new SqlParameter("@Email", userEmail));
cmd.Parameters.Add(new SqlParameter("@Address", useraddress));
cmd.Parameters.Add(new SqlParameter("@telephone", userphone));
cmd.Parameters.Add(new SqlParameter("@postcod", userzipcode));
正确的应是

cmd.Parameters.Add(new SqlParameter("@postcod",DbType.Char,20));

易做图.Parameters[postcod]=this.TextBox2.Text.Trim();

上一个:用asp等代码写的重定向和在iis上设置有什么不一样吗?
下一个:asp.net里的留言板中管理员回复的代码怎么写

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,