在ASP.NET中有多个文本框,ID是:tbUsername等在后台用C#语言连接数据库成功,但是就是插不进去,我用存储过程的方法,就是弄不进去,用什么方法可以将输入的文本写到数据库呀? 谢了!急
响应按钮代码: protected void btnRegiste_Click(object sender, EventArgs e)
{
string connStr = "data source=localhost;user id=sa;password=;initial catalog=Sale";
SqlConnection conn = new SqlConnection(connStr); //SqlCommand cmd = conn.CreateCommand();
//cmd.CommandText = "insert into userinfo('123','123455','wfdsg','F','fgs','gsd@gsdff','gfasgf')"; SqlCommand cmd = new SqlCommand("",conn);
cmd.CommandType = CommandType.Text;
//存储过程,为参数赋值
cmd.Parameters.Add("@username", tbUsername.Text);
cmd.Parameters.Add("@userpwd", Encrypt(tbPassword1.Text)); //密码加密处理
cmd.Parameters.Add("@realname",tbRealname.Text);
cmd.Parameters.Add("@gender",dlGender.SelectedValue);
cmd.Parameters.Add("@phoneno",tbPhnoeno.Text);
cmd.Parameters.Add("@email",tbEmail.Text);
cmd.Parameters.Add("@address",tbAddress.Text);
//存储过程返回值
SqlParameter paramOut = cmd.Parameters.Add("@RETURN_VALUE","");
paramOut.Direction = ParameterDirection.ReturnValue; try
{
//打开数据库
conn.Open();
cmd.CommandText = "insert userinfo values(&tbUsername.Text&,&tbPassword1&,&tbRealname.Text&,&dlGender.SelectedValue&,&tbPhnoeno.Text&,&tbEmail.Text&,&tbAddress.Text&)";
cmd.ExecuteNonQuery(); if ((int)cmd.Parameters["@RETURN_VALUE"].Value == 0)
{
Response.Write("<h3 color=red>注册成功!</h3>");
}
else
{
Response.Write("<h3 color=red>该用户已经存在!</h3>");
}
} catch (SqlException ex) //数据访问异常
{
Response.Write("数据访问错误!\n");
Response.Write(ex.Message);
}
catch (Exception ex) //其他异常
{
Response.Write("错误\n");
Response.Write(ex.Message);
} finally //关闭数据连接
{
conn.Close();
} }
响应按钮代码: protected void btnRegiste_Click(object sender, EventArgs e)
{
string connStr = "data source=localhost;user id=sa;password=;initial catalog=Sale";
SqlConnection conn = new SqlConnection(connStr); //SqlCommand cmd = conn.CreateCommand();
//cmd.CommandText = "insert into userinfo('123','123455','wfdsg','F','fgs','gsd@gsdff','gfasgf')"; SqlCommand cmd = new SqlCommand("",conn);
cmd.CommandType = CommandType.Text;
//存储过程,为参数赋值
cmd.Parameters.Add("@username", tbUsername.Text);
cmd.Parameters.Add("@userpwd", Encrypt(tbPassword1.Text)); //密码加密处理
cmd.Parameters.Add("@realname",tbRealname.Text);
cmd.Parameters.Add("@gender",dlGender.SelectedValue);
cmd.Parameters.Add("@phoneno",tbPhnoeno.Text);
cmd.Parameters.Add("@email",tbEmail.Text);
cmd.Parameters.Add("@address",tbAddress.Text);
//存储过程返回值
SqlParameter paramOut = cmd.Parameters.Add("@RETURN_VALUE","");
paramOut.Direction = ParameterDirection.ReturnValue; try
{
//打开数据库
conn.Open();
cmd.CommandText = "insert userinfo values(&tbUsername.Text&,&tbPassword1&,&tbRealname.Text&,&dlGender.SelectedValue&,&tbPhnoeno.Text&,&tbEmail.Text&,&tbAddress.Text&)";
cmd.ExecuteNonQuery(); if ((int)cmd.Parameters["@RETURN_VALUE"].Value == 0)
{
Response.Write("<h3 color=red>注册成功!</h3>");
}
else
{
Response.Write("<h3 color=red>该用户已经存在!</h3>");
}
} catch (SqlException ex) //数据访问异常
{
Response.Write("数据访问错误!\n");
Response.Write(ex.Message);
}
catch (Exception ex) //其他异常
{
Response.Write("错误\n");
Response.Write(ex.Message);
} finally //关闭数据连接
{
conn.Close();
} }
解决方案 »
- 怎么让自己的结构使用[]运算符
- ?索引器不成功
- Timer的Enable的疑问?
- 请教src绑定到变量(非数据库字段)的问题:<img src=" <%# GetPath(Eval("ServerIP"), Eval("filename")) %>" alt="缩略图"> 是这样吗?
- 新手,请高手帮忙!!!
- 弱弱的窗体关闭的问题
- 如何使用windows API获取TTC字体文件信息
- .net反编译,好强大的混淆
- C#加载资源的难题!!!标题要长---------------------------------标题------------------------标题要长
- 一个对象的问题 在线等急急
- Winsock 控件 怎么用????
- 如何用gdi+做一个类似建模工具(EA)的绘图程序?谁有类似源码共享或者出售?
{
string connStr = "data source=localhost;user id=sa;password=;initial catalog=Sale";
SqlConnection conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand("",conn);
cmd.CommandType = CommandType.StoredProcedure;
//存储过程,为参数赋值
cmd.Parameters.Add("@username", tbUsername.Text);
cmd.Parameters.Add("@userpwd", Encrypt(tbPassword1.Text)); //密码加密处理
cmd.Parameters.Add("@realname",tbRealname.Text);
cmd.Parameters.Add("@gender",dlGender.SelectedValue);
cmd.Parameters.Add("@phoneno",tbPhnoeno.Text);
cmd.Parameters.Add("@email",tbEmail.Text);
cmd.Parameters.Add("@address",tbAddress.Text);
//存储过程返回值
SqlParameter paramOut = cmd.Parameters.Add("@RETURN_VALUE","");
paramOut.Direction = ParameterDirection.ReturnValue; try
{
//打开数据库
conn.Open();
cmd.ExecuteNonQuery(); if ((int)cmd.Parameters["@RETURN_VALUE"].Value == 0)
{
Response.Write("<h3 color=red>注册成功!</h3>");
}
else
{
Response.Write("<h3 color=red>该用户已经存在!</h3>");
}
} catch (SqlException ex) //数据访问异常
{
Response.Write("数据访问错误!\n");
Response.Write(ex.Message);
}
catch (Exception ex) //其他异常
{
Response.Write("错误\n");
Response.Write(ex.Message);
} finally //关闭数据连接
{
conn.Close();
} }我重新该了代码,但是运行后有这样的错误:
错误 ExecuteNonQuery: CommandText property has not been initialized
试试这个:
cmd.CommandText="insert into userinfo values(@UserName,@Password,@RealName,@Gender,@Phone,@Email,@Address)";
cmd.Parameters.Add("@UserName",tbUsername.Text.Trim());
cmd.Parameters.Add("@Password",tbPassword1.Text.Trim());
cmd.Parameters.Add("@RealName",tbRealname.Text.Trim());
cmd.Parameters.Add("@Gender",dlGender.SelectedValue.ToString().Trim());
cmd.Parameters.Add("@Phone",tbPhnoeno.Text.Trim());
cmd.Parameters.Add("@Email",tbEmail.Text.Trim());
cmd.Parameters.Add("@Address",tbAddress.Text.Trim());
//执行
..
cmd.Parameters.Add("@UserName",tbUsername.Text.Trim());
cmd.Parameters.Add("@Password",tbPassword1.Text.Trim());
cmd.Parameters.Add("@RealName",tbRealname.Text.Trim());
cmd.Parameters.Add("@Gender",dlGender.SelectedValue.ToString().Trim());
cmd.Parameters.Add("@Phone",tbPhnoeno.Text.Trim());
cmd.Parameters.Add("@Email",tbEmail.Text.Trim());
cmd.Parameters.Add("@Address",tbAddress.Text.Trim());谢谢,非常感谢