Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Еще раз про битовые операции / 15 сообщений из 15, страница 1 из 1
14.12.2004, 16:09:42
    #32827067
Еще раз про битовые операции
Собственно создаю новую базу (MSAccess 2003), создаю таблицу Table1 с полями Field1, Field2 типа Длинное целое. Далее - создаю новый запрос:
SELECT *, Field1 BAND Field2 FROM Table1
получаю ошибку:
Ошибка синтаксиса (пропущен оператор) в выражении запроса 'Field1 BAND Field2'

Собственно мне нужно использовать битовые операции в запросах из VB6 через ADO. Люди на этом форуме говорили:
> Для ADO recordset (Jet 4.0 provider) можно воспользоваться оператором band.

Но я что-то не вижу, чтобы BAND работал даже в простейших запросах даже без ADO.

Проясните ситуацию - может это работать или нет и при каких условиях?
...
Рейтинг: 0 / 0
14.12.2004, 16:23:41
    #32827100
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
Сервис-Параметры-Таблицы и запросы-Синтаксис для SQL Server
- проставить птицу
...
Рейтинг: 0 / 0
14.12.2004, 16:24:39
    #32827106
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
кстати, без адо это не должно (бы) работать
:)


(с выражением лица)
...
Рейтинг: 0 / 0
14.12.2004, 16:56:36
    #32827201
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
из любопытства проверил - работают все битовые операции
- b1 и b2 - длинные целые
SELECT Таблица1.*, (b1 band b2 ) as mband, (b1 bxor b2) as mxor, (b1 bor b2) as mbor,(bnot b2) as mbnot
FROM Таблица1;

(с выражением лица)
...
Рейтинг: 0 / 0
14.12.2004, 18:02:58
    #32827363
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
Victoshaиз любопытства проверил - работают все битовые операции
- b1 и b2 - длинные целые
SELECT Таблица1.*, (b1 band b2 ) as mband, (b1 bxor b2) as mxor, (b1 bor b2) as mbor,(bnot b2) as mbnot
FROM Таблица1;

(с выражением лица)

А чем band от and отличается?
Или я тут один отсталый?
...
Рейтинг: 0 / 0
14.12.2004, 18:05:58
    #32827368
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
кстати - насчет MS SQL Server - что-то мне подсказывает, что там это так делается

MSSQL синтаксис операция& and| or~ not
...
Рейтинг: 0 / 0
14.12.2004, 18:20:25
    #32827396
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
paparomeА чем band от and отличается?
Или я тут один отсталый?

нас двое, по крайней мере.


а отличается результатом.
(14 AND 5) = -1(True) - результат приведен к Истина/Ложь
(14 BAND 5) = 4 - целое, представляющее собой результат
побитового AND, примененного к исходным операндам.
...
Рейтинг: 0 / 0
14.12.2004, 18:47:22
    #32827447
Еще раз про битовые операции
Victosha paparomeА чем band от and отличается?
Или я тут один отсталый?

нас двое, по крайней мере.


а отличается результатом.
(14 AND 5) = -1(True) - результат приведен к Истина/Ложь
(14 BAND 5) = 4 - целое, представляющее собой результат
побитового AND, примененного к исходным операндам.

ну в VBA давно: (14 AND 5) = 4 (что можно пользовать и в 97 и в 2000).
а BAND - это начиная с 2002?
...
Рейтинг: 0 / 0
14.12.2004, 23:22:24
    #32827626
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
еще отсталеееее
<...>
а BAND - это начиная с 2002?

В смысле подддержки в пользовательском интерфейсе - наверно да.
В остальном - это больше похоже на "свойство/поддиалект"
Jet.OLDEDB.4.0 провайдера. А он с A2K живет.
То есть на АДО-рекордсетах - принимается и возвращает что надо,
на ДАО - рассказывает о недопустимом синтаксисе.
...
Рейтинг: 0 / 0
15.12.2004, 09:29:06
    #32827829
Еще раз про битовые операции
VictoshaСервис-Параметры-Таблицы и запросы-Синтаксис для SQL Server
- проставить птицу

Хорошо. А как эту опцию поставить при работе через ADO? Что нужно дописать в connection string?
...
Рейтинг: 0 / 0
15.12.2004, 10:10:10
    #32827880
Еще раз про битовые операции
В общем, по итогам раскопок в инете и своих тестов могу сказать следующее - при работе через ADO по умолчанию используется синтаксис SQL 92, поэтому бинарные операции (BAND, BOR, BXOR) работают. При этом то как была создана база - роли не играет. Для того чтобы в среде MSAccess использовался синтаксис SQL 92 и работали бинарные операции - нужно поставить вышеприведенную галку.
...
Рейтинг: 0 / 0
15.12.2004, 11:13:26
    #32828008
Еще раз про битовые операции
Victosha еще отсталеееее
<...>
а BAND - это начиная с 2002?

В смысле подддержки в пользовательском интерфейсе - наверно да.
В остальном - это больше похоже на "свойство/поддиалект"
Jet.OLDEDB.4.0 провайдера. А он с A2K живет.
То есть на АДО-рекордсетах - принимается и возвращает что надо,
на ДАО - рассказывает о недопустимом синтаксисе.

дык это (Jet 4.0) я поняв. (про то что в аде оно будет через 92 я тоже вроде как в курсе). Я просто в задумчивости по поводу галки в интерморде акс2000. Вернее ее отсутствия. То ли я плехо искал, то ли глаз у мене не там по жизни. Вот и поспрашал - есть ли галка в 2к, и где ее искать. Насколько я понял, галки в 2к таки нет.
...
Рейтинг: 0 / 0
15.12.2004, 12:10:14
    #32828167
Еще раз про битовые операции
Уважаемые,
для меня остались две непонятки:
1. как из ADO подсоединится или переключиться в режим Access SQL (НЕ-SQL92) и возможно ли это вообще
2. как программно создать базу в которой сразу стоит флажок "Синтаксис ANSI 92"
...
Рейтинг: 0 / 0
15.12.2004, 14:00:58
    #32828473
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
Никита А. ЗиминУважаемые,
для меня остались две непонятки:
1. как из ADO подсоединится или переключиться в режим Access SQL (НЕ-SQL92) и возможно ли это вообще
2. как программно создать базу в которой сразу стоит флажок "Синтаксис ANSI 92"
1 никак
2 это собственность Аксецца как приложения, а не мдб как файла определенного формата. И он (Акцесс) ее никому не отдаст.
Так что "базу создать" - тоже никак, а акцесс перевести в соответствующий
режим - ищи вокруг SetOption
...
Рейтинг: 0 / 0
15.12.2004, 14:05:17
    #32828499
Victosha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Еще раз про битовые операции
про "создать базу" - точнее будет так - базу надо создавать в 4м формате.

(с выражением лица)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Еще раз про битовые операции / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]