我想保存记录,从变量中为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
您的帮助将受到高度赞赏。谢谢
答案 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”