所以我有这个:
Conn.Open();
SqlCommand Comm3 = new SqlCommand("SELECT answer" + " FROM answers" + " WHERE id_answer=5" , Conn);
SqlDataReader DR3 = Comm3.ExecuteReader();
并且有多个结果,我现在如何在不同的文本框中移动它们(我已经创建了文本框?到目前为止我只能设法得到相同的结果。
答案 0 :(得分:0)
您需要遍历Database表中的每个项目。考虑一个foreach
循环,您只需浏览每个项目并按类似方式进行处理。
以下是一个示例,
// Create new SqlDataReader object and read data from the command.
using (SqlDataReader reader = command.ExecuteReader())
{
// while there is another record present
while (reader.Read())
{
// write the data on to the screen
textBox.Text = reader[0];
}
}
这会将读者的第一列(答案)的值添加到textBox。现在确保你正在调用正确的textBox来添加值。
http://www.codeproject.com/Articles/823854/How-to-connect-SQL-Database-to-your-Csharp-program请阅读本文。
答案 1 :(得分:0)
这通常是我怎么做的....
SqlConnection cn = new SqlConnection("my connection string");
cn.Open();
string sql = "select * from table where column = whatever";
using (SqlCommand cmd = new SqlCommand(sql,cn))
{
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
myTextBox1.Text = (string)dr["Column1"];
myTextBox2.Text = (string)dr["Column2"];
myTextBox3.Text = (string)dr["Column3"];
}
dr.Close();
}
cn.Close();
只需确保在循环浏览正确的列名时瞄准正确的列名,然后正确投射。