我有一个表,我希望将所有输出存储到一个空格分隔的行中(例如“textbox1 textbox2 textbox3”。我该怎么做?目前它试图将它们放入不同的列。给我使用较少的列声明我的错误。
}
using (SqlCommand cmd = new SqlCommand("INSERT INTO [user] (solution) VALUES (@textbox1, @textbox2, @textbox3)", cn))
{
cmd.Parameters.AddWithValue("@textbox1", textBox1.Text);
cmd.Parameters.AddWithValue("@textbox2", textBox2.Text);
cmd.Parameters.AddWithValue("@textbox3", textBox3.Text);
cmd.ExecuteNonQuery(); // or int affected = cmd.ExecuteNonQuery()
MessageBox.Show("Success!");
}
}
答案 0 :(得分:2)
试试这个:
using (SqlCommand cmd = new SqlCommand("INSERT INTO [user] (solution) VALUES (@text)", cn))
{
cmd.Parameters.AddWithValue("@text", textBox1.Text + " " + textBox2.Text + " " + textBox3.Text);
cmd.ExecuteNonQuery(); // or int affected = cmd.ExecuteNonQuery()
MessageBox.Show("Success!");
}
答案 1 :(得分:1)
您在比您指定的更多列中插入数据,因此我认为您在该部分中遇到了错误。因此,在代码中进行一些修改以删除错误:
}
using (SqlCommand cmd = new SqlCommand("INSERT INTO [user] (solution) VALUES (@textbox1+' '+ @textbox2+' '+ @textbox3)", cn))
{
cmd.Parameters.AddWithValue("@textbox1", textBox1.Text);
cmd.Parameters.AddWithValue("@textbox2", textBox2.Text);
cmd.Parameters.AddWithValue("@textbox3", textBox3.Text);
cmd.ExecuteNonQuery(); // or int affected = cmd.ExecuteNonQuery()
MessageBox.Show("Success!");
}
}