加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 在不指定列的情况下显示数据库中的数据

发布时间:2020-12-16 01:52:14 所属栏目:百科 来源:网络整理
导读:我有一个简单的登录页面.我想要做的是当登录正确时,我想显示所有列 – 我不想手动指定在while循环中显示哪些列. 这是我使用SQL Server 2008 express在C#中的示例: private void Authenticate(string userName,string password){ string connString = "serve
我有一个简单的登录页面.我想要做的是当登录正确时,我想显示所有列 – 我不想手动指定在while循环中显示哪些列.

这是我使用SQL Server 2008 express在C#中的示例:

private void Authenticate(string userName,string password)
{
    string connString = "server=.sqlexpress; database=TestDatabase; trusted_connection=true";
    SqlConnection conn = new SqlConnection(connString);
    conn.Open();

    string sqlCommand = "select * from Registration where UserName='" + userName + "' and   Password='" + password + "'";
    SqlCommand command = conn.CreateCommand();
    command.CommandText = sqlCommand;

    SqlDataReader reader = command.ExecuteReader();          

    while (reader.Read())
    {
        lblResult.Text += reader["CourseId"] + " " + reader["CourseName"] + " " + reader["Instructor"] + "<br />";
    }

}

我知道这不是最好的实现.

如何用注册表中返回的所有内容填充lblResult?

解决方法

StringBuilder sb = new StringBuilder(1024); /* arbitrary size */
while (reader.read())
{
    for (int i = 0; i < reader.FieldCount; i++)
    {
        sb.Append(reader.GetName(i));
        sb.Append(": ");
        sb.Append(reader[i]);
    }
    sb.Append("<br />");
}
lblResult.Text = sb.ToString();

基于MSDN docs这样的东西.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读