Mysql 将listview项添加到sqlyog

Mysql 将listview项添加到sqlyog,mysql,vb.net,listview,Mysql,Vb.net,Listview,我正在学校做一个销售和库存系统。我想将listview项保存到我的数据库中,该数据库是MySQL SQLYG ultimate 这是我的连接和将listview保存到数据库的代码,但我得到错误对象变量或with block变量未设置 Imports MySql.Data.MySqlClient Module modconnector Public sqlcmd As New MySqlCommand Public sqlcon As New MySqlConnection

我正在学校做一个销售和库存系统。我想将listview项保存到我的数据库中,该数据库是MySQL SQLYG ultimate

这是我的连接和将listview保存到数据库的代码,但我得到错误
对象变量或with block变量未设置

Imports MySql.Data.MySqlClient

Module modconnector
    Public sqlcmd As New MySqlCommand
    Public sqlcon As New MySqlConnection
    Public sqladapter As New MySqlDataAdapter
    Public sqlreader As MySqlDataReader
    Public strsql As String

    Sub connect()
        sqlcon.ConnectionString = ("server=localhost;user id=root;password= ;database=sais")
        sqlcon.Open()
    End Sub



    Sub savelistview()

        sqlcon.Close()
        connect()


        iCount = ListView1.Items.Count()
        If Not ListView1.Items.Count = 0 Then
            Do Until iLoop = ListView1.Items.Count
                With lvitem
                    lvitem = ListView1.Items.Item(iLoop)

                    strsql = "insert into transaction(prod_code,prod_description,prod_price,order,quantity,date) values('" _
    & .Items(0).Text & "','" _
    & .SubItems(1).Text & "','" _
    & .SubItems(2).Text & "','" _
    & .SubItems(3).Text & "','" _
    & .SubItems(4).Text & "','" _
    & .SubItems(5).Text & "','" _
    & Label26.Text & "')"
                    sqlcmd.CommandText = strsql
                    sqlcmd.Connection = sqlcon
                    sqladapter.SelectCommand = sqlcmd
                    sqlcmd.ExecuteNonQuery()
                End With
                lvitem = Nothing
                iLoop = iLoop + 1

            Loop
        End If
        MessageBox.Show("Record Saved!")
        sqlcon.Close()
    End Sub
End Module

大家好,欢迎来到Stack Overflow。您必须解决代码中的一些问题:
Items
集合是基于零的,这意味着您必须执行
直到iLoop=ListView1.Items.Count-1
否则您将得到一个
索引自动失效
异常。2) 我没有看到名为
lvitem
的变量,您必须声明它,并在使用
块的
之前设置它:
Dim lvitem作为ListViewItem=ListView1.Items.Item(iLoop)
。3) 您应该使用SQL参数而不是普通的字符串连接,因为现在使用所谓的SQLInjection可能会对系统造成错误。4)您可以使用DataGridView和DataAdapter,因此几乎不需要代码来更新数据库。顺便说一句,sqlyog不是DB,只是它的一个管理UI。您好,谢谢您欢迎我加入这个组织。我遵循第一步和第二步,但我不理解第三步。我试过数字1和2,当我运行它时。如果我有一行,它说记录保存了,但当我查看数据库时,它没有保存。但如果我有多行,则表示语法错误。你能教我第三步吗?老实说,我是一名编程初学者,我学到的所有代码都来自学校的课程。