简体   繁体   中英

InvalidArgument=Value of '11209485' is not valid for 'index'. Parameter name: index error when running SQL query in VB.NET

I keep getting this error "Failure to communicate InvalidArgument=Value of '11209485' is not valid for 'index'. Parameter name: index" when I'm trying to retrieve card numbers from a database and put them in a combo box so that the user can pick their card number in VB.NET 2012. The 11209485 is the first card number in the database, so I assume the connection is fine, but I don't understand this error at all.

I'd be grateful for any help on the matter. Thanks!

Imports MySql.Data

Imports MySql.Data.MySqlClient

Public Class Form1

Dim dbCon As MySqlConnection
Dim strQuery As String = ""
Dim SQLcmd As MySqlCommand
Dim DataReader As MySqlDataReader

' load application Form
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

    'Prepare connection and query
    Try
        dbCon = New MySqlConnection("Server=localhost;Database=***;Uid=***;Pwd=***")

        strQuery = "SELECT CardNumber " &
                   "FROM Account"

        SQLcmd = New MySqlCommand(strQuery, dbCon)

        'Open the connection
        dbCon.Open()

        ' create database reader to read information from database
        DataReader = SQLcmd.ExecuteReader

        ' fill ComboBox with account numbers
        While DataReader.Read
            cboAccountNumbers = cboAccountNumbers.Items(DataReader("CardNumber"))
        End While

        'Close the connection
        DataReader.Close()
        dbCon.Close()

    Catch ex As Exception

        MsgBox("Failure to communicate" & vbCrLf & vbCrLf & ex.Message)


    End Try
End Sub

End Class

The error is in this line:

cboAccountNumbers = cboAccountNumbers.Items(DataReader("CardNumber"))

You are attempting to read the 11209485th item in the combo box and there aren't that many items. Try this instead:

cboAccountNumbers.Items.Add(DataReader("CardNumber"))

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM