Запрос на набор записей - PullRequest
       12

Запрос на набор записей

0 голосов
/ 03 декабря 2008

Будет ли такой запрос на наборе записей работать

rs.open "выбрать * из таблицы, где vd = 1; обновить набор таблиц vd1 = 1, где vd = 2 или vd = 3;"

или что-то не так

спасибо

Ответы [ 2 ]

0 голосов
/ 05 декабря 2008

Набор записей может быть определен только одним оператором SELECT (хотя, конечно, вы можете UNION множественный выбор, если они имеют одинаковое количество столбцов).

Любое действие SQL (INSERT, UPDATE, DELETE) не может быть выполнено с набором записей, но с использованием метода .Execute.

Если вы используете ADO, .Execute также может использоваться для SELECT (он возвращает строки), но собственный уровень интерфейса данных Jet, DAO, не может - .Execute работает только для запросов действий. Мне это кажется разумным, но тогда ADO всегда казался мне пустой тратой времени, лично.

Кроме того, Jet (механизм БД, используемый по умолчанию в Access), не может выполнять несколько операторов SQL одновременно, как это может делать много серверных БД. Это не такое большое ограничение, как может показаться тем, кто привык к пакетным операторам SQL - оно просто другое.

0 голосов
/ 03 декабря 2008

Это не сработает - вам придется выполнять их как отдельные команды

Предположительно, вы объявили rs в качестве набора записей, поэтому вы можете использовать его для возврата результатов оператора SELECT.

Я бы использовал команду SQL для выполнения второго оператора.

...