[英]Inserting into database from textbox in C# using parameters
我是C#的新手。 我试图将文本框中的值插入数据库中的表中。
表名:地址
栏位:名称(varchar(50)),年龄(int),城市(nchar(10))
当我尝试从数据库中检索值时,它运行良好。 这是我的代码。 请帮助我纠正它。
string s = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";
SqlConnection a = new SqlConnection(s);
a.Open();
SqlCommand comm = new SqlCommand("INSERT INTO [address](name,age,city) VALUES(@na,@ag,@ci)");
string na = textBox1.Text;
int ag = int.Parse(textBox2.Text);
string ci = textBox3.Text;
comm.Parameters.Add("@na", System.Data.SqlDbType.VarChar,50).Value = na;
comm.Parameters.Add("@ag", System.Data.SqlDbType.Int).Value = ag;
comm.Parameters.Add("@ci", System.Data.SqlDbType.NChar,10).Value = ci;
comm.Connection = a;
comm.ExecuteNonQuery();
MessageBox.Show("okay");
a.Close();
这些值未反映在数据库中。
尝试使用此代码:
string connectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";
using (SqlConnection connection = new SqlConnection(connectionString))
{
using (SqlCommand insertCommand = connection.CreateCommand())
{
insertCommand.CommandText = "INSERT INTO address(name,age,city) VALUES (@na,@ag,@ci)";
insertCommand.Parameters.Add("@na", na);
insertCommand.Parameters.Add("@ag", ag);
insertCommand.Parameters.Add("@ci", ci);
insertCommand.Connection.Open();
insertCommand.ExecuteNonQuery();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.