Как обновить поле, в котором другое поле равно определенной строке

#sql #ms-access-2010

#sql #ms-access-2010

Вопрос:

У меня есть таблица с именем tbltooling.

В нем есть поле с именем Part Description (содержащее различные описания деталей) и поле с именем CategoryID (пока ничего не содержащее).

Что я хочу сделать, так это поместить число 1 везде в таблице, где описание детали равно «пластиковой коробке».

Я добавил запрос на обновление, имеющий следующий код. Я получаю синтаксическую ошибку. Что я здесь делаю не так?

 UPDATE Copy Of TBLTOOLING
SET CategoryID = '1' 
WHERE [Part Description] = "plastic box"
  

Комментарии:

1. Что такое Copy Of TBLTOOLING ?

2. ВСЕ ЗАГЛАВНЫЕ буквы в заголовке интерпретируются как КРИЧАЩИЕ. Пожалуйста, исправьте.

3. Не лучше ли было бы сделать это как запрос? Таким образом, вы получаете последний ответ при каждом запуске запроса без изменения каких-либо таблиц БД. Данные уже существуют, и я не вижу, как добавление 1 добавляет что-либо ценное к вашим данным.

Ответ №1:

Поскольку я предполагаю, что CategoryID будет числовым:

 UPDATE [Copy Of TBLTOOLING] 
SET CategoryID = 1 
WHERE [Part Description] = "plastic box"
  

или:

 UPDATE TBLTOOLING
SET CategoryID = 1 
WHERE [Part Description] = "plastic box"