如何使用SQL查询填充arraylist?

时间:2011-08-12 17:19:57

标签: sql vb.net executereader

我正在开发一个VB.NET ASPX文件。此报告目前正在运行,但现在我想添加一个参数,该参数应该是一个数组列表,显示来自SQL查询的所有记录:

“通过instrument_name”

从FRUD.tblXref中选择不同的instrument_name AS instrument_name

但是这个数组列表显示了来自代码的所有可能值的“System.Data.Common”:

Sub Main()          
Dim pcSQL As String
Dim ProductList As New ArrayList()

pcSQL = " select distinct instrument_name AS instrument_name from FRUD.tblXref order by instrument_name "
Dim DBConn As SqlConnection
DBConn = New SqlConnection(ConfigurationManager.AppSettings("AMDMetricsConnectionString"))
DBConn.Open()
Dim reader As SqlDataReader
Dim DBCommand As New SqlCommand(pcSQL, DBConn)
reader = DBCommand.ExecuteReader()

dProdCodeSearch.DataSource = reader
dProdCodeSearch.DataBind()
reader.Close()

我确信我做错了,这是一个非常简单的修复。此SQL连接适用于此报告中的数据表。但这只是我设置为SQL输出的参数。

1 个答案:

答案 0 :(得分:2)

您需要创建一个Collection,它存储数据库中的值,然后将这些值读入数组。像

这样的东西
Dim instrumentNames As New List(Of String)

While reader.Read()
   instrumentNames.Add(reader.GetString("insturment_name"))
End While

dProdCodeSearch.DataSource = insturmentNames