oledb异常未处理

我得到的oledb异常未处理,我找不到为什么它发生了任何人都可以注意到我

我BOLD并倾斜错误代码

在查询表达式'Product Name =''Chair''中出现语法错误(缺少运算符)。

谢谢

Imports System.Data.OleDb

Public Class Form1

    'declare the veriables

    Dim itemName As String
    Dim itemprice, average, rows, index, totalPrice
    Dim foundItem As Boolean
    Dim conectionString As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:EducationBITAssainmentL1S2VBAssesment 2Stock.accdb"
    Dim reader As OleDbDataReader
    Dim olDataConnection As New OleDbConnection(conectionString)
    Dim olCommand As OleDbCommand


    Private Sub Form1_Load(ByVal sender As System.Object, e As EventArgs) Handles MyBase.Load
        'loding data to the combo box

        totalPrice = 0
        rows = 0

        'start the connection
        olDataConnection.Open()
        olCommand = New OleDbCommand("SELECT * FROM Stock", olDataConnection)
        reader = olCommand.ExecuteReader()
        While (reader.Read())
            comDataStock.Items.Add(DirectCast(reader("Product Name"), String) & " -Rs. " & DirectCast(reader("Price"), Integer) & " /= ")
            totalPrice = totalPrice + DirectCast(reader("Price"), Integer)
            rows = rows + 1
        End While

        Try
            average = totalPrice / rows
            lblAverResult.Text = "Rs. " & average.ToString() & " /="
        Catch ex As Exception
            MessageBox.Show("Somethingg Wrong ", "Error", MessageBoxButtons.OK, MessageBoxIcon.Information)
        End Try
        olDataConnection.Close()

    End Sub

    Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
        olDataConnection.Open()
        olCommand = New OleDbCommand("DELETE FROM Stock WHERE Product Name=''" & comDataStock.SelectedItem.ToString().Split("-").GetValue(0).ToString() & "'", olDataConnection)
        reader = olCommand.ExecuteReader()
        olDataConnection.Close()
        comDataStock.Items.Clear()
        totalPrice = 0
        rows = 0

         olDataConnection.Open()
        olCommand = (New OleDbCommand("SELECT FROM Stock ", olDataConnection))
        reader = olCommand.ExecuteReader()

        While (reader.Read())
            comDataStock.Items.Add(DirectCast(reader("Price"), String) & " -Rs. " & DirectCast(reader("Price"), Integer) & " /= ")
            totalPrice = totalPrice + DirectCast(reader("Price"), Integer)
            rows = rows + 1

        End While

        Try
            average = totalPrice / rows
            lblAverResult.Text = " Rs. " & average.ToString() & " /="
        Catch ex As Exception
            MessageBox.Show(ex.ToString())
        End Try
        olDataConnection.Close()

    End Sub
End Class

如果您的名称中包含空格的字段(例如Product Name ,则必须将该名称放在方括号中。

olCommand = New OleDbCommand("DELETE FROM Stock WHERE [Product Name]='" & comDataStock.SelectedItem.ToString().Split("-").GetValue(0).ToString() & "'", olDataConnection)
链接地址: http://www.djcxy.com/p/84635.html

上一篇: oledb exception was unhandled

下一篇: Javascript : optimize data structure for chess game