帮看贮存数据的代码,可以运行,就是数据没有贮存到收据库中
运行时没有提示错,就是打开数据库时没见有记录,高手帮看看。分就那么多。还望好心的高手不要见怪。
public class WebForm2 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.Label Label2;
protected System.Web.UI.WebControls.Label Label3;
protected System.Web.UI.WebControls.Label Label4;
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator2;
protected System.Web.UI.WebControls.Label Label5;
protected System.Web.UI.WebControls.CompareValidator CompareValidator1;
protected System.Web.UI.WebControls.TextBox nameTextBox;
protected System.Web.UI.WebControls.TextBox PasswordTextBox;
protected System.Web.UI.WebControls.TextBox PasswordagainTextBox;
protected System.Web.UI.WebControls.TextBox addressTextBox;
protected System.Web.UI.WebControls.TextBox emailTextBox;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.Panel InputPanel;
protected System.Web.UI.WebControls.Label Label6;
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void Button1_Click(object sender, System.EventArgs e)
{
SaveNewUser();
}
private void SaveNewUser()
{
// 连接字符串和SQL语句
string Sql = "insert into userdata (name,Password,address,email) values "+ "(s_name,s_Password,s_address,s_email) ";
string ConnStr= System.Configuration.ConfigurationSettings.AppSettings[ "ConnectionSqlServer_kang "];
// 创建Connection和Command对象
SqlConnection myConn = new SqlConnection(ConnStr);
SqlCommand myCommand = myConn.CreateCommand();
// 初始化Command对象
myCommand.CommandText = Sql;
myCommand.CommandType = CommandType.Text;
myCommand.Parameters.Add( "s_name ", SqlDbType.NVarChar, 10);
myCommand.Parameters[ "s_name "].Value = nameTextBox.Text;
myCommand.Parameters.Add( "s_Password ", SqlDbType.NVarChar, 10);
myCommand.Parameters[ "s_Password "].Value = PasswordTextBox.Text;
myCommand.Parameters.Add( "s_email ", SqlDbType.NVarChar, 50);
myCommand.Parameters[ "s_email "].Value = emailTextBox.Text;
try
{
myCommand.Connection.Open();
if(1 == myCommand.ExecuteNonQuery())
{
// 新增成功,隐藏输入用户信息的面板,显示“输入成功”的面板
Response.Write( "添加成功 ");
}
}
finally
{
Response.Redirect ( "WebForm1.aspx ");
}
}
[解决办法]
Sql = "insert into userdata (name,Password,address,email) values "+ "(s_name,s_Password,s_address,s_email) "
寫錯了吧
改成
Sql = "insert into userdata (@name,@Password,@address,@email) values "+ "(s_name,s_Password,s_address,s_email) "
[解决办法]
返過來
Sql = "insert into userdata (name,Password,address,email) values "+ "(@s_name,@s_Password,@s_address,@s_email) "
[解决办法]
调试一下,有没有异常,还有就是返回值是1吗?
变量名前加@试试
[解决办法]
string Sql = "insert into userdata ([name],[Password],address,email) values (@s_name,@s_Password,@s_address,@s_email) ";