Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 01.07.2017
Сообщений: 35
1

Операторы IN и CASE в Recordset (ADO)

25.11.2017, 12:31. Показов 666. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я использую оператор IN в свойстве Filter объекта Recordset (ADO) и оператор CASE ... WHEN ... THEN в свойстве Sort. Оба случая вызывают ошибку. Recordset не поддерживает эти операторы?
Больше всего мне не ясно с оператором IN. Ведь его поддерживает и T-SQL и Jet.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.11.2017, 12:31
Ответы с готовыми решениями:

Создание ADO Recordset
Привет, есть такая проблема - при использовании для работы с ADO используются adoid.h и adoint.h ...

Не обновляется ADO Client Recordset
А именно, как решить следующую проблему: Я открыл ADO Recordset как клиентский. Внес изменения....

Неправильная работа Recordset с ADO
Добрый день. Имею БД Access (Users_base.accdb) в которой таблица Users с полями ID и FName (все по...

ADO Recordset и временные таблицы
ADO.RecordSet не хочет работать с временными таблицами. Есть запрос: CREATE TABLE #EntsLeav...

5
775 / 256 / 43
Регистрация: 09.12.2016
Сообщений: 855
25.11.2017, 14:24 2
Цитата Сообщение от Vavaev Посмотреть сообщение
Больше всего мне не ясно с оператором IN. Ведь его поддерживает и T-SQL и Jet.
Оператор in поддерживается только в SQL. Использовать его в выражениях в форме нельзя. Там необходимо использовать Or.

А у вас видно причина не в операторе in, а чем-то другом. Если бы вы привели конкретный пример, я думаю, что вам бы помогли.
0
Мы один, давай на "ты"
3421 / 1299 / 312
Регистрация: 16.06.2016
Сообщений: 3,046
25.11.2017, 14:35 3
Цитата Сообщение от Vavaev Посмотреть сообщение
CASE ... WHEN ... THEN
однозначно не поддерживается диалектом SQL с которым может работать Jet.
Цитата Сообщение от Vavaev Посмотреть сообщение
оператор IN
не плохо привести строку.
Цитата Сообщение от Vavaev Посмотреть сообщение
Recordset не поддерживает эти операторы
Ему вообще плевать на эти и другие операторы, это набор данных, а уж чего втуда напихают...
0
1 / 1 / 0
Регистрация: 01.07.2017
Сообщений: 35
25.11.2017, 15:20  [ТС] 4
Я разобрался. Решил проблему другим путем.
Recordset действительно ничего этого не поддерживает.
Из справки по свойству Filter: Operator must be one of the following: <, >, <=, >=, <>, =, or LIKE.
0
Мы один, давай на "ты"
3421 / 1299 / 312
Регистрация: 16.06.2016
Сообщений: 3,046
25.11.2017, 15:36 5
Vavaev, вообще, как уверяют компетентные специалисты, "дешевле" получить новый набор с обновлёнными ограничениями.
1
10472 / 5458 / 1375
Регистрация: 05.10.2016
Сообщений: 15,461
26.11.2017, 12:17 6
Цитата Сообщение от Vavaev Посмотреть сообщение
Больше всего мне не ясно с оператором IN. Ведь его поддерживает и T-SQL и Jet
Правильно поддерживают, но только в SQL запросах.
Вы же работаете с Recordset-ом который имеет источником SQL запрос.
И правильно заметил уважаемый Панург, проще запрос переопределить и открыть Recordset по новой.

Надеюсь был понятен.
0
26.11.2017, 12:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2017, 12:17
Помогаю со студенческими работами здесь

Ускорение поиска в ADO recordset
Здравствуйте! Ситуация следующая - имеется локальна база с таблицей клиентов, на SQL Server имеется...

ADO recordset фильтр по нескольким полям
Здравствуйте. Помогите пожалуйста разобраться. На форме есть несколько полей, по значению которых...

ASP, Тип курсора в ADO.Recordset
Подскажите как сделать, чтобы метод Recordset.Open при использовании хранимой процедуры SQL...

MSHFlexgrid не отображает весь ADO.Recordset
Не могу отобразить в MSHFlexgrid весь набор записей ADO.Recordset. Выводится только ограниченное...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru