我正在尝试将SQL行数字加载到多个文本框中。基本上该行包含由“;”分隔的数字。我怎样才能得到它,以便每个数字用“;”分隔时在他们自己的文本框中?
SqlConnection conn = new SqlConnection("Data Source=LAURA-PC;Initial Catalog=Sudoku;Integrated Security=True");
conn.Open();
SqlCommand command = conn.CreateCommand();
command.CommandText = "Select puzzle from Puzzle";
command.CommandType = CommandType.Text;
SqlDataReader reader = command.ExecuteReader();
if (reader.Read())
{
textBox1.Text = reader.GetValue(0).ToString();
textBox2?
textbox3?
}
conn.Close();
答案 0 :(得分:1)
假设puzzle
列具有以分号分隔的数字:
...
SqlDataReader reader = command.ExecuteReader();
if (reader.Read())
{
string[] tokens = ((string)reader[0]).Split(';');
textBox1.Text = tokens[0];
textBox2.Text = tokens[1];
// etc...
}
...
答案 1 :(得分:1)
假设您拥有与TextBox相同数量(或更少)的数字,您可以将TextBox放入数组并使用以下代码:
...
SqlDataReader reader = command.ExecuteReader();
if (reader.Read())
{
string[] tokens = reader.GetString(0).Split(';');
for(int i = 0; i < tokens.Length; i++)
{
textBoxes[i].Text = tokens[i];
}
}
...