首页 > 解决方案 > 为什么我的查询值和字段数不匹配?

问题描述

我一直运行此代码并收到查询数和字段数不匹配的错误,为什么会这样?

    Sub StoreInDB()
    Try
        ConnectionString.close()
         Dim arrayname() As String = import.FileNames
        For Each Trackname As String In arrayname
            Using sql As New OleDb.OleDbCommand("insert into tbplaylist (path, AlbumName)values('" & Replace(Trackname, "'", "''", albumname.ToString) & "')", ConnectionString.open)
                If import.FileName = Nothing Then
                Else
                    For Each track As String In import.FileNames
                    Next
                End If
                sql.ExecuteNonQuery()
                ConnectionString.close()
            End Using
            ConnectionString.close()
        Next
    Catch ex As Exception
        MsgBox(ex.Message)
    ConnectionString.close()
    End Try
    ConnectionString.close()
End Sub

标签: vb.net

解决方案


您的 insert into 语句有两列 path 和 albumname insert into tbplaylist (path, AlbumName)

但是您在值部分中只输入了一个值。

请试试这个:

Using sql As New OleDb.OleDbCommand("insert into tbplaylist (path, AlbumName)values('" & Replace(Trackname, "'", "''") & "','" & albumname.ToString & "')", ConnectionString.open)

推荐阅读