Удалить оператор SQL не работает - PullRequest
0 голосов
/ 21 ноября 2018

Я получаю «Синтаксическая ошибка в предложении FROM»

Любая помощь / идеи приветствуются, я новичок, если вы не можете сказать!

КОД выглядит следующим образом:

Private Sub cmdDelete_click()
Dim sql As String, rCount As Integer
If me.dirty then
Me.dirty = False
End if
Set dbs = currentdb
SQL = “DELETE Item FROM item = ‘“ & me.txtItem & “‘“ &                  “WHERE ID=“ & me.txtID2

Dbs.Execute sql, dbFailOnError
rCount = dbs.RecordsAffected
If rCount >0 then
Msgbox “The item List has been updated”
List40.Requery
Clear
End if
End sub

Ответы [ 3 ]

0 голосов
/ 21 ноября 2018

Я прочитал ваш вопрос: ошибка в вашем SQL QUERY Попробуйте это:

 SqlCommand cmd = new SqlCommand();
 cmd.CommandType = CommandType.Text;
 cmd.CommandText ="DELETE FROM Item WHERE  ID='"+txtyoutextbox.Text.Trim()+"';
 cmd.ExecuteNonQuery();
0 голосов
/ 21 ноября 2018

FROM должен ссылаться на таблицу (будь то созданная вами физическая таблица, сохраненный запрос или результат встроенной строки SQL).
FROM item = ‘“ & me.txtItem & “‘“ в вашем коде не имеет значения для SQL.

Это позволяет избежать конкатенации строк для создания вашего SQL - просто передайте значение в качестве параметра и затем выполните запрос:

Private Sub cmdDelete_Click()

    Dim qdf As DAO.QueryDef

    Set qdf = CurrentDb.CreateQueryDef("", _
        "PARAMETERS Identifier TEXT (255); " & _
        "DELETE * FROM Table1 WHERE ID = Identifier")

    With qdf
        .Parameters("Identifier") = Me.txtID2
        .Execute
    End With

End Sub
0 голосов
/ 21 ноября 2018

Вы можете просто использовать DELETE в SQL следующим образом.

DELETE FROM Item WHERE ID='" + txtID2.Text + "'

Где вы можете удалить базу элементов по номеру элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...