数据存储时出了问题

l_q_liqiang 2005-09-14 09:39:46
private void btn_submit_Click(object sender, System.EventArgs e)
{
//响应button控件btn_submit的click事件,完成对新用户信息的提交,程序首先通过Pages的IsValid属性判断页面是否有效,然后决定是否提交出数据。在页面中添加了对各文本的输入控制控件,只要有一项不符合条件那么都将导致页面的无效。
if(Page.IsValid)
{
//从文件web.config中读取字符串
string strconn=ConfigurationSettings.AppSettings["dsn"];
//连接本地计算机的MMS数据库
SqlConnection cn=new SqlConnection(strconn);
cn.Open();
//利用Command对象调用存储过程
SqlCommand cm=new SqlCommand("useradd",cn);
//将命令类型转为存储类型
cm.CommandType=CommandType.StoredProcedure;
//添加并给参数赋值
cm.Parameters.Add("@UID",SqlDbType.VarChar);
cm.Parameters.Add("@UPassword",SqlDbType.VarChar);
cm.Parameters.Add("@UQuestion",SqlDbType.NVarChar);
cm.Parameters.Add("@UAnswer",SqlDbType.NVarChar);
cm.Parameters.Add("@USex",SqlDbType.Bit);
cm.Parameters.Add("@UCitiID",SqlDbType.Int);
cm.Parameters.Add("@Email",SqlDbType.VarChar);
cm.Parameters["@UID"].Value=tbx_uid.Text.ToString();
cm.Parameters["@UPassword"].Value=tbx_password.Text.ToString();
cm.Parameters["@UQuestion"].Value=tbx_uquestion.Text.ToString();
cm.Parameters["@UAnswer"].Value=tbx_uanswer.Text.ToString();
if(rtn_male.Checked)cm.Parameters["@USex"].Value=1;
if(rtn_female.Checked)cm.Parameters["@USex"].Value=0;
cm.Parameters["@UCitiID"].Value=ddl_ucityid.SelectedItem.Value;
cm.Parameters["@Email"].Value=tbx_uemail.Text.ToString();
cm.ExecuteNonQuery();
//关闭连接
cn.Close();
Response.Redirect("registersuccess.aspx");

}
}
...全文
35 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
monkey_li 2005-09-15
  • 打赏
  • 举报
回复
呵呵
l_q_liqiang 2005-09-15
  • 打赏
  • 举报
回复
我知道怎么错了,在写存储过程的时候没有把类型的参数写完整。要定义参数类型的时候把字段值的大小也写进去。
l_q_liqiang 2005-09-14
  • 打赏
  • 举报
回复
我在文本框中输入 了姓名,邮件这些字符串之后,保存到数据库的结果只有开头的一个字母,郁闷啊,大家看看是什么问题。

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧