ASP.Net插入从文本框数据到数据库 [英] ASP.Net insert data from Textbox to a database
问题描述
我试着从一个文本框数据插入到我的数据库,它扔我一个例外。
异常详细信息:System.Data.SqlClient.SqlException:附近'测试'的语法不正确
块引用>我以前presents我的code,虽然一些细节:
我的数据库名为:电影
我叫表中的数据:用户
我有这样的栏目:名字,姓氏等......
保护无效Register_Click(对象发件人,EventArgs的发送)
{
SqlConnection的连接=新的SqlConnection(数据源= MICROSOF-58B8A5 \\ SQL_SERVER_R2;初始目录=电影;集成安全性=真);
块引用>connection.Open();
//名字***********
字符串的firstName = FirstNameTextBox.Text;
字符串的SQLQuery =(INSERT INTO [网友](名字)VALUES('+ FirstNameTextBox.Text +'); 的SqlCommand命令=新的SqlCommand(sqlquery的,连接);
command.Parameters.AddWithValue(名字,名字);
//姓************
字符串的lastName = LastNameTextBox.Text;
的SQLQuery =(INSERT INTO [网友](姓氏)VALUES('+ LastNameTextBox.Text +');
command.Parameters.AddWithValue(姓氏,姓氏);
//用户名*************
字符串的用户名= UsernameTextBox.Text;
的SQLQuery =(INSERT INTO [用户](用户名)VALUES('+ UsernameTextBox.Text +');
command.Parameters.AddWithValue(用户名的用户名);
//密码*************
字符串密码= PasswordTextBox.Text;
的SQLQuery =(INSERT INTO [网友](密码)VALUES('+ PasswordTextBox.Text +');
command.Parameters.AddWithValue(密码,密码);
如果(PasswordTextBox.Text == ReTypePassword.Text)
{
command.ExecuteNonQuery();
}
其他
{
ErrorLabel.Text =对不起,你没有正确键入密码请重新输入。
} connection.close()时;
}
解决方案使用一个查询,并使用
@ParamName
:字符串的SQLQuery =INSERT INTO [用户](名字,姓氏,用户名,密码)VALUES(@名字,姓氏@,@用户名,密码@);
的SqlCommand命令=新的SqlCommand(sqlquery的,连接); //名字***********
字符串的firstName = FirstNameTextBox.Text;
command.Parameters.AddWithValue(名字,名字);
//姓************
字符串的lastName = LastNameTextBox.Text;
command.Parameters.AddWithValue(姓氏,姓氏);
//用户名*************
字符串的用户名= UsernameTextBox.Text;
command.Parameters.AddWithValue(用户名的用户名);
//密码*************
字符串密码= PasswordTextBox.Text;
command.Parameters.AddWithValue(密码,密码); ...........Im trying to insert data from a textbox to my database, and it throwing me an exception.
Exception Details: System.Data.SqlClient.SqlException: Incorrect syntax near ' test'.
a few details before I presents my code though : my database called : Movies my table data called: Users and I have columns such as : "FirstName", "LastName" etc...
protected void Register_Click(object sender, EventArgs e) { SqlConnection connection = new SqlConnection("Data Source=MICROSOF-58B8A5\SQL_SERVER_R2;Initial Catalog=Movie;Integrated Security=True");
connection.Open(); //FirstName*********** string firstName = FirstNameTextBox.Text; string sqlquery = ("INSERT INTO [Users] (FirstName) VALUES (' " +FirstNameTextBox.Text + " ' "); SqlCommand command = new SqlCommand(sqlquery , connection); command.Parameters.AddWithValue("FirstName", firstName); //LastName************ string lastName = LastNameTextBox.Text; sqlquery = ("INSERT INTO [Users] (LastName) VALUES (' " + LastNameTextBox.Text+ " ' "); command.Parameters.AddWithValue("LastName", lastName); //Username************* string username = UsernameTextBox.Text; sqlquery = ("INSERT INTO [Users] (Username) VALUES (' " + UsernameTextBox.Text+ " ' "); command.Parameters.AddWithValue("UserName", username); //Password************* string password = PasswordTextBox.Text; sqlquery = ("INSERT INTO [Users] (Password) VALUES (' " + PasswordTextBox.Text + " ' "); command.Parameters.AddWithValue("Password", password); if (PasswordTextBox.Text == ReTypePassword.Text) { command.ExecuteNonQuery(); } else { ErrorLabel.Text = "Sorry, You didnt typed your password correctly. Please type again."; } connection.Close(); }
解决方案Use one query and use
@ParamName
:string sqlquery = "INSERT INTO [Users] (FirstName,LastName,UserName,Password) VALUES (@FirstName,@LastName,@UserName,@Password)"; SqlCommand command = new SqlCommand(sqlquery , connection); //FirstName*********** string firstName = FirstNameTextBox.Text; command.Parameters.AddWithValue("FirstName", firstName); //LastName************ string lastName = LastNameTextBox.Text; command.Parameters.AddWithValue("LastName", lastName); //Username************* string username = UsernameTextBox.Text; command.Parameters.AddWithValue("UserName", username); //Password************* string password = PasswordTextBox.Text; command.Parameters.AddWithValue("Password", password); ...........
这篇关于ASP.Net插入从文本框数据到数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!