【问题标题】:Add data from database in a drop down in vb.net在 vb.net 的下拉列表中添加数据库中的数据
【发布时间】:2011-12-26 05:30:38
【问题描述】:

我有一个城市下拉列表,并且我的数据库中有一些城市想要填充到下拉列表中。

在页面加载时建立了 sql 连接

 Dim s As String = "Connection String"
 sqlconn = New SqlConnection(s) 

现在在下拉加载中,我有一个运行良好的查询。如何将数据库查询的结果添加到下拉列表中?

   Protected Sub Citydropdown_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Citydropdown.Load

        sqlCmd = New SqlCommand("select City from usrRegister_aunthentication", sqlconn)
        If sqlconn.State = Data.ConnectionState.Closed Then
            sqlconn.Open()
        End If
        Dim i As String = sqlCmd.ExecuteReader()

        If sqlconn.State = Data.ConnectionState.Open Then
            sqlconn.Close()
        End If
    End Sub

此外,有时会重复同一个城市。我如何只显示每个城市一次?

【问题讨论】:

  • 专业提示:如果您在问题上投入更多精力,您将获得更好的答案。请参阅编辑,了解哪些内容对于回答使用的人来说更容易。另外,我希望您对代码细节的关注比您在此处对问题的关注要多很多

标签: .net vb.net list drop-down-menu


【解决方案1】:

不要使用ExecuteNonQuery 来获取结果(行)。使用ExecuteReader获取阅读器实例。

Dim dataReader as SqlDataReader 
dataReader = sqlCmd.ExecuteReader()
While dataReader.Read
  ' Write code to insert an Item into dropdownlist
  DropDownItem1.Items.Add(dataReader("City").ToString())
End While
dataReader.Close()

【讨论】:

  • 我已经编辑了但是我必须写什么代码才能在下拉列表中填充数据,应该在while循环中写哪些代码?
  • 和更多 ova 当我使用 ExecuteReader 时,它说 SqldataReader 无法转换为字符串
  • 我可以再问你 1 个问题吗?在上述相同的问题中?
  • 你想获取不同的城市吗?从 usrRegister_authentication 中选择 DISTINCT CITY
  • 您应该发布一个包含完整问题描述的问题。
【解决方案2】:

你也可以试试这个。少了一两行。

Using dr = sqlCmd.ExecuteReader()
While dr.Read
     ' Write code to insert an Item into dropdownlist
     DropDownItem1.Items.Add(dr("City").ToString())
End While
End Using

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-23
    • 2015-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多