从SQL Server检索所有行,并将其放入多行文本框中

本文关键字:文本 Server SQL 检索 | 更新日期: 2023-09-27 18:25:59

我想从SQL Server检索所有行,并将其放置在多行文本框中。查询执行了,但它加载了最后一行,可能是因为它是最后一条记录。我应该有一个"foreach"语句吗?

private void LoadComments()
{
   using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["db_TestDBConnectionString"].ConnectionString))
   {
      using (SqlCommand com = new SqlCommand("LoadNotes", con))
      {
         com.CommandType = CommandType.StoredProcedure;
         con.Open();
         com.ExecuteNonQuery();
         SqlDataReader dr = com.ExecuteReader();
         while (dr.Read() == true)
         {
            TextBox1.Text = dr.GetValue(0).ToString() + " " + dr.GetValue(1).ToString() + dr.GetValue(2).ToString();
         }
      }
   }
}

从SQL Server检索所有行,并将其放入多行文本框中

Before-Wile循环集TextBox1.Text="";然后试试这个代码。

TextBox1.Text += dr.GetValue(0).ToString() + " " + dr.GetValue(1).ToString() + 
dr.GetValue(2).ToString()+Enviroment.NewLine;

在你的代码中,你把每一行都分配给TextBox1,但你要把下一行连接到TextBox1上,所以我把+放在等号之前,这样它就连接了所有的行。

string str = "";
while (dr.Read() == true)
         {
           str+= dr.GetValue(0).ToString() + " " + dr.GetValue(1).ToString() + dr.GetValue(2).ToString();
         }
 TextBox1.Text = str;