如何使用赋值运算符将记录从c#保存到sql数据库?

时间:2014-03-05 10:43:02

标签: c# sql-server-2012

我想保存记录,从变量中为textbox.text赋值,然后将记录从文本框保存到数据库。我已经尝试了,但垃圾值总是保存在数据库中,而不是我分配给文本框的值。

这是我的代码行:

string r = "returned";
comboBox2 = r;

SqlConnection MySqlConnection;
MySqlConnection = new SqlConnection("Data Source=**************;Initial Catalog=lights and sounds;User ID=*****;Password=********;");
MySqlConnection.Open();
SqlDataReader dr;
SqlCommand command = new SqlCommand("Update reservation_inventory Set  status= '" + comboBox2 + "' WHERE id = '" + textBox1.Text + "'  ", MySqlConnection);
dr = command.ExecuteReader();
dr.Close();

这是保存在数据库中的垃圾值:

System.Windows.Forms.TextBox, Text: returned

您的帮助将受到高度赞赏。谢谢

3 个答案:

答案 0 :(得分:2)

我认为 comboBox2 是一个Textbox控件。然后,您需要设置控件的 .Text 属性。 在您的情况下,您应该使用:

string r = "returned";
comboBox2.Text = r;

和您的SqlCommand中的相同更改

SqlCommand command = new SqlCommand("Update reservation_inventory Set  status= '" + comboBox2.Text + "' WHERE id = '" + textBox1.Text + "'  ", MySqlConnection);

答案 1 :(得分:1)

请尝试使用

comboBox2.Text

而不是使用comboBox2。我想comboBox2是一个TextBox。所以你需要阅读它的Text属性。

你选择

是合理的
System.Windows.Forms.TextBox

因为当您尝试连接以下字符串时:

"Update reservation_inventory Set  status= '" + 
 comboBox2 + 
"' WHERE id = '" + textBox1.Text + "'  "

调用ToString()的{​​{1}}方法。因此,你得到它的类型名称。

答案 2 :(得分:0)

使用comboBox2.Text(或comboBox2.content - 取决于控制的类型)来访问控件中的文本

如果你只在字符串变量中使用comboBox2 c#将隐式调用.toString() - 控件上的方法将返回控件的名称。

在这种情况下,这是“System.Windows.Forms.TextBox”