Access OLEDB сообщает о «синтаксической ошибке», но утверждение выглядит правильно

Я пишу простую страницу в ASP.net, чтобы обновить пароль в таблице доступа. Вот синтаксис для запроса SELECT, который работает:

    Dim dbConn As OleDbConnection
    Dim dbCommand As OleDbCommand
    Dim dbReader As OleDbDataReader

    'Connect to db
    dbConn = New OleDbConnection(Application("strConnectionString"))
    dbConn.Open()

    'Get user info
    strSQL = "SELECT * FROM users WHERE Username = '" & strUsername & "';"
    dbCommand = New OleDbCommand(strSQL, dbConn)
    dbReader = dbCommand.ExecuteReader()

И моя строка подключения:

    Application("strConnectionString") = _
        "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strDBPath & _
            "; Jet OLEDB:Database Password=" & strDBPassword & ";"

SELECT работает нормально, поэтому я знаю, что мое соединение в порядке. Но этот запрос дает мне синтаксическую ошибку:

strSQL = "UPDATE users SET Password = '1'"

Со всем остальным то же самое, ошибка ASP говорит, что есть ошибка с моим синтаксисом. Но когда я отвечаю. Пишу строку strSQL, это дает мне следующее:

UPDATE users SET Password = '1' 

и когда я вставляю это в редактор запросов в Access, запрос обновляет все поля «Пароль» в таблице до «1», поэтому я знаю, что синтаксис в порядке. Я попробовал это без устройства чтения данных и использования dbCommand.ExecuteNonQuery (), тот же результат.

У меня есть права доступа к файлу Access, так что у всех есть полный контроль, поэтому я не думаю, что это проблема с разрешениями.

Кто-нибудь может увидеть мою ошибку? Я действительно застрял. Благодарю.

Ответы на вопрос(1)

Ваш ответ на вопрос