Работая с некоторыми запросами на вставку/обновлении приложения сегодня и наткнулся на результат, которого я не ожидал.Почему я не могу использовать имя поля в качестве параметра в запросе параметра Access?
Запросы
Мои вставки запросов выглядеть примерно так:
PARAMETERS nm TEXT(10), st TEXT(2);
INSERT INTO park(pname, pstate)
VALUES([nm],[st]);
И их обновления компаньоны были такими:
PARAMETERS id LONG, nm TEXT(10), st TEXT(2);
UPDATE park
SET
pname = [nm], pstate = [st]
WHERE
ID = [id];
В таблице они обновляют было похоже на это :
park
ID LONG | pname TEXT(10) | pstate TEXT(2)
Неожиданный результат
Работа через написание запросов, я проверил каждый, запустив его с базой данных и предоставление тестовых значений для различных параметров. После запроса на вставку я проверил обновление, обновив вновь вставленную запись.
В большинстве случаев таблицы были пустыми, поэтому обновление просто обновило бы одну запись на месте.
Однако как только я побежал обновления на ранее населенной таблицы, я обнаружил, что запрос пытается обновить ВСЕ записи, а не только тот, чей ID был снабжен через параметр.
Вопрос почему ??