获取SQL数据并将其显示在文本框中?

时间:2011-06-14 09:52:15

标签: c# .net sql sql-server sql-server-2008

在过去的几天里,我试图从我的SQL表中获取数据并将其放入我的文本框中。

表名:“check”。

我正在使用的代码:

SqlDataReader myReader = null;

connection = new SqlConnection(System.Configuration.ConfigurationManager
                    .ConnectionStrings["ConnectionString"].ConnectionString);
connection.Open();

var command = new SqlCommand("SELECT * FROM [check]", connection);
myReader = command.ExecuteReader();
while (myReader.Read())
{
    TextBox1.Text = myReader.ToString();
}
connection.Close();

结果我没有得到任何结果。谁知道为什么?也许我没有正确调用SQL?

3 个答案:

答案 0 :(得分:4)

 TextBox1.Text = myReader["fieldname"].ToString();

此外,我认为您可以使用while更改if,因为您的表格中的每一行都会覆盖文本框文字!

答案 1 :(得分:4)

using (var connection = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
using (var command = connection.CreateCommand())
{
    command.CommandText = "SELECT ColumnName FROM [check]";
    connection.Open();
    using (var reader = command.ExecuteReader())
    {
        while (reader.Read())
            TextBox1.Text = reader["ColumnName"].ToString();
    }
}

一些意见:

  • 请勿使用*,仅指定您需要的字段
  • 使用using - 减少代码,保证处置
  • 我认为这是一个测试程序,否则将Text重置为循环
  • 是没有意义的

答案 2 :(得分:1)

试试这个:

TextBox1.AppendText(myReader["columnname"].ToString());