我认为您可能正在尝试这样的事情
travelQuery.CommandText = "SELECt [StartLoc], [EndLoc],[TravelTime], [AvgSpeed], [Distance] FROM [TravelTimes] WHERe [TripNum] = @trip" ' Assuming trip as integer travelQuery.CommandParameters.Add(@trip, Convert.ToInt32(lblTrip.Text))
此外,如果lblTrip.Text不是数字,则上面的代码将引发错误,因此您将使用int.TryParse或类似方法。
另外,在阅读器中,检查阅读的内容
If (travelReader.Read()) Then BeginEnd If
这样,如果读者在读取数据时遇到问题,就不会引发错误。
编辑1
出于测试目的,请首先检查此
travelQuery.CommandText = "SELECt COUNT(*) FROM [TravelTimes] WHERe [TripNum] = @trip"
然后这个
travelQuery.CommandText = "SELECt COUNT(*) FROM [TravelTimes]"
第一个将获取满足您条件的行,第二个将获取表的总行数,这样您就可以确定问题是读取器还是数据源(db)



