|
|
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Существует некая база в Акцессе. В ней таблица.В таблице текстовое поле. Случай первый: 1.Создаем connection 2.Создаем recordset Код: plaintext 1. Случай второй: 1.В акцессе создаем запрос: select pole1 from tablica where (pole like '*31*') запускаем ОК! Записей немерено (238) 2.Создаем connection 3.Создаем recordset Код: plaintext 1. То-ли лыжи не едут, то-ли я? В чем загвоздка? ADO 2.8; Jet 4.0; Access 2000; VB 6 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:10:42 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Наверно, надо заменить * на %. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:18:15 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Предположу - может стоит заменить * на % ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:19:25 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Телепатия. :^) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:22:40 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Спасибо Владимир Саныч, paparome! А ларчик просто открывался :) Пардон, видать меня заклинило :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:25:39 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
А у меня вопрос ко всем. Я хочу добавить это дело в факи, но не знаю точного ответа: когда именно вместо * и ? используются % и _? Это переход от DAO к ADO или что-то еще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:32:18 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Владимир СанычА у меня вопрос ко всем. Я хочу добавить это дело в факи, но не знаю точного ответа: когда именно вместо * и ? используются % и _? Это переход от DAO к ADO или что-то еще? ADO 2.5, АксXP, mdb - надо звезточки ставить При работе с сиквелом (adp) - % (ну это и так понятно) Предположение - может это от Jet зависит? Кстати как посмотреть его версию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:47:02 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
авторЭто переход от DAO к ADO или что-то еще? Это еще Tools - Option - Tables/Queries Tab - SQL Server Compatible Syntax (ANSI 92) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:47:58 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Serge Gavrilov авторЭто переход от DAO к ADO или что-то еще? Это еще Tools - Option - Tables/Queries Tab - SQL Server Compatible Syntax (ANSI 92) Опа - и правда :) Дык - может все дело в этой галочке? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 13:55:27 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
а справку почитать слабо? Сравнение языка SQL ядра базы данных Microsoft Jet и ANSI SQL Язык SQL ядра базы данных Microsoft Jet в основном соответствует стандарту ANSI-89 (уровень 1). Однако некоторые средства ANSI SQL не реализованы в языке SQL ядра Microsoft® Jet. Начиная с выпусков ядра Microsoft Jet версий 4.X, программа Microsoft OLE DB Provider для Jet использует дополнительно синтаксис ANSI-92 SQL. И наоборот, язык SQL ядра Microsoft Jet использует зарезервированные слова и средства, не поддерживаемые ANSI SQL. Основные различия Язык SQL ядра базы данных Microsoft Jet и ANSI SQL имеют разные наборы зарезервированных слов и типов данных. Более подробные сведения содержатся в разделах Зарезервированные слова SQL ядра базы данных Microsoft Jet и Эквивалентные типы данных ANSI SQL. При использовании программы Microsoft OLE DB Provider для Jet вместе с ядром Jet версии 4.X доступны дополнительные зарезервированные слова. Разные правила применимы к оператору Between...And, имеющему следующий синтаксис: выражение [NOT] Between значение_1 And значение_2 В языке SQL Microsoft Jet значение_1 может превышать значение_2; в ANSI SQL значение_1 должно быть меньше или равно значение_2. Язык SQL ядра Microsoft Jet поддерживает использование в операторе Like как подстановочных знаков ANSI SQL, так и подстановочных знаков ядра Microsoft Jet. Подстановочные знаки ANSI и ядра Microsoft Jet взаимно исключают друг друга. Следует пользоваться одним из наборов таких знаков, не смешивая их. Подстановочные знаки ANSI SQL доступны только в случае использования ядра Jet версии 4.X и программы Microsoft OLE DB Provider для Jet. При работе с приложениями Microsoft Access или DAO подстановочные знаки ANSI SQL воспринимаются как строковые константы. Обратное имеет место при использовании программы Microsoft OLE DB Provider для Jet и ядра Jet версии 4.X. Соответствующие знаки Язык SQL Microsoft Jet ANSI SQL Любой одиночный знак. ? _ (подчеркивание) Произвольное количество знаков. * % Язык SQL ядра Microsoft Jet обычно предоставляет пользователю большую свободу. Например, разрешается группировка и сортировка по выражениям. Язык SQL Microsoft Jet позволяет использовать более мощные выражения. Особые средства языка SQL Microsoft Jet В языке SQL Microsoft Jet поддерживаются следующие дополнительные средства: · Инструкция TRANSFORM, предназначенная для создания перекрестных запросов. Дополнительные статистические функции, такие как StDev и VarP. · Описание PARAMETERS, предназначенное для создания запросов с параметрами. Средства ANSI SQL, не поддерживаемые в языке SQL Microsoft Jet В языке SQL Microsoft Jet не поддерживаются следующие средства ANSI SQL: Зарезервированное слово DISTINCT в качестве описания аргумента статистической функции. Например, в языке SQL Microsoft Jet нельзя использовать выражение SUM(DISTINCT имяСтолбца). Предложение LIMIT TO nn ROWS, используемое для ограничения количества строк, возвращаемых в результате выполнения запроса. Для ограничения количества возвращаемых запросом строк можно использовать только предложение WHERE. См. также Эквивалентные типы данных ANSI SQL Зарезервированные слова SQL ядра базы данных Microsoft Jet Оператор Like (язык SQL Microsoft Jet) Статистические функции SQL (язык SQL) Типы данных SQL ядра базы данных Microsoft Jet Использование подстановочных знаков при сравнении строк ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 14:29:45 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
2 ищ: Ответ, конечно, длинный, но вопрос все равно остается. Чем определяется выбор между двумя стандартами языка SQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 14:37:12 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
разработчиком ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 15:17:02 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
из справки режим ANSI SQL-92 Режим учитывающий расширенный синтаксис SQL и обеспечивающий большую совместимость с SQL-92 и Microsoft® SQL Server™. Этот режим доступен только в случае использования программы Microsoft OLE DB Provider для Jet. Его невозможно установить с помощью объектов доступа к данным (DAO). Новые средства относятся преимущественно к языку определения данных (DDL). Поддержка подстановочных знаков ANSI, т.е. знак процента (%) и символа подчеркивания (_), также является частью режима ANSI SQL-92. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 15:29:18 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
То есть начиная с какой-то версии Аксесса можно переключаться между этими двумя режимами произвольно? Или тоже нет? В adp вроде нельзя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 15:34:37 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
по моему с версии а2000(нет под рукой, надоть утонить) в adp уже исп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 15:48:17 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Кто такой исп? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 15:52:34 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
cv. справку Работа с запросами->Работа в режиме запроса ANSI SQL ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 16:19:04 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Что такое уже исп? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 16:27:31 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
используется. прям допрос какой-то. поставьте мне 3 и я пойду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 16:39:27 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Используется кто? С 2000-го можно переключаться между двумя режимами, а в adp - что? Если что-то знаешь, то говори. Если нет, то так и быть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 16:43:04 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
В adp менять нельзя - он просто использует синтаксис MSSQL, ибо все запросы исполняются на сервере, а сервер понимает только % ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 16:59:51 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
папа римский, давай зачетку. 5 баллов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 17:09:42 |
|
||
|
Не работает условие LIKE через MS Jet 4.0
|
|||
|---|---|---|---|
|
#18+
Логично. Мне 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.07.2004, 17:12:17 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32587691&tid=1673435]: |
0ms |
get settings: |
4ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
163ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
80ms |
get tp. blocked users: |
2ms |
| others: | 191ms |
| total: | 468ms |

| 0 / 0 |
