我正在使用以下代码从数据库中选择数据,在某些情况下,这应该会返回多个结果,而且我不确定如何将所有匹配结果(例如所有预订时间)返回到数组中并且hen在列表框。
myConn.ConnectionString = connection.dbdataSource;
OleDbCommand selectServiceNo = myConn.CreateCommand();
selectServiceNo.CommandText =
"SELECT ID, BookingTime, BookingDate, Description FROM booking";
selectServiceNo.CommandText += " WHERE BookingDate = #";
selectServiceNo.CommandText += dateSelected;
selectServiceNo.CommandText += "#";
myConn.Open();
OleDbDataReader myDR2 = selectServiceNo.ExecuteReader();
while (myDR2.Read())
{
bTime = Convert.ToString(myDR2["BookingTime"]);
bDate = Convert.ToString(myDR2["BookingDate"]);
}
myConn.Close();
答案 0 :(得分:1)
创建一个类Booking
,您可以在其中创建所有相关属性,例如Time
,Date
(为什么这两个组合在一起?&){{1 }})。
然后,在Description
中,创建一个新的while
并将其添加到您在Booking
循环之外创建的列表(List<Booking>
)中。返回该列表。
(注意:也可以使用while
来处理你的命令。在命令关闭之前抛出异常时你有内存并处理泄漏。更重要的是,你的代码很容易受到SQL注入。总是使用SQL参数。)