Используйте данные в поле списка в запросе SQL

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

DELETE *
FROM Client
WHERE
(([Client].[ClientID])=[Forms]![UpdateDeleteClientInformationForm]![ClientFullNameListBox]);

Проблема в том, что я не уверен, как получить доступ к текущему ClientID из выбора в списке. Как получить доступ к данным в каждом из столбцов в списке для выбранного элемента в запросе SQL?

Мне не очень комфортно с Access в данный момент.

1 ответ

Решение

Вы можете построить свой запрос в VBA. Список элементов, которые нужно удалить, можно получить из списка с несколькими вариантами выбора, например:

For Each itm In AListBox.ItemsSelected
    srem = srem & "," & itm
Next

srem = Mid(srem, 2)

sSQL ="DELETE FROM ATable WHERE ID IN (" & srem & ")"
CurrentDB.Execute sSQL, dbFailOnError

Обратите внимание, что вам понадобятся элементы в кавычках для текстового типа данных.

Другие вопросы по тегам