我在运行时这个函数有错误
Private Sub adultPay()
sql = "SELECT adultRate FROM roomType WHERE roomType = " & rumType.ToString & ""
connectDatabase()
Using da As New OleDb.OleDbDataAdapter(sql, con)
Using ds As New DataSet
Try
da.Fill(ds, "AdultRate") 'error here
Dim adultRate As String = ds.Tables("AdultRate").Rows(0).Item(0).ToString
Dim adultTotal As Integer = txtNoOfAdults.Text * Val(adultRate)
txtAdultTotal.Text = adultTotal.ToString
Catch ex As Exception
MessageBox.Show(ex.ToString, "error")
Clipboard.SetDataObject(ex)
End Try
DisconnectDB()
End Using
End Using
End Sub
该函数应该在放置成人数量后更改成人总数文本框的值。错误如下
System.Data.OleDb.OleDbException: No value given for one or more required parameters.
at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)
at Albergo.frmCheckIn.adultPay() in C:\Users\gman\Documents\Visual Studio 2008\Projects\Albergo\Albergo\frmCheckIn.vb:line 111
第 111 行是您找到的子程序中的 da.Fill(ds, "AdultRate")
请帮忙