В этом разделе приведены справочные сведения о подстановочных знаках, поддерживаемых в Access, и краткие инструкции по их использованию.
Сведения о поиске подстановочных знаков в базах данных Access см. в статьях Использование диалогового окна "Поиск и замена" для изменения данных, Создание простого запроса на выборку и Обновление данных в базе данных.
В этой статье
Поддерживаемые наборы символов
Access поддерживает два набора подстановочных знаков, так как поддерживает два стандарта для языка SQL — ANSI-89 и ANSI-92. Как правило, при выполнении запросов и операций по поиску и замене для баз данных Access (MDB- и ACCDB-файлов) используются подстановочные знаки ANSI-89. Подстановочные знаки ANSI-92 применяются при выполнении запросов для проектов Access — файлов Access, подключенных к базам данных Microsoft SQL Server. Поскольку в SQL Server используется стандарт ANSI-92, он же применяется и в проектах Access.
Однако из этого правила существует исключение. В следующей таблице перечислены методы и средства, которыми можно воспользоваться для поиска и замены данных, а также указан стандарт ANSI, используемый по умолчанию с каждым из средств.
Метод или средство поиска |
Тип файла, в котором выполняется поиск |
Используемый набор знаков |
Диалоговое окно Поиск и замена |
База данных Access (MDB- и ACCDB-файлы) |
ANSI-89 |
Диалоговое окно Поиск и замена |
Проект Access (ADP- и ACCDP-файлы) |
ANSI-92 |
Запрос на выборку или обновление |
База данных Access (MDB- и ACCDB-файлы) |
ANSI-89 |
Запрос на выборку или обновление |
Проект Access (ADP- и ACCDP-файлы) |
ANSI-92 |
Диалоговое окно Поиск и замена, запрос на выборку или обновление |
База данных Access, для которой включена поддержка стандарта ANSI-92 |
ANSI-92 |
Определение стандарта ANSI, поддерживаемого базой данных
Чтобы определить и при необходимости изменить стандарт ANSI для базы данных, выполните следующие действия:
-
Выберите Файл > Параметры.
Откроется диалоговое окно Параметры Access.
-
Выберите пункт Конструкторы объектов и в разделе Конструктор запросов в группе Синтаксис для SQL Server (ANSI 92) выполните одно из следующих действий:
-
Установите флажок Эта база данных, чтобы изменить стандарт открытой базы данных на стандарт ANSI-92.
-или-
Снимите флажок, чтобы задать для открытой базы данных стандарт ANSI-89.
-
Установите флажок По умолчанию для новых баз данных, чтобы задать для всех новых баз данных, созданных в открытом экземпляре Access, стандарт ANSI-92.
-или-
Снимите флажок, чтобы задать для всех новых баз данных стандарт ANSI-89.
-
-
Нажмите кнопку ОК.
Подстановочные знаки ANSI-89
Используйте этот набор подстановочных знаков в диалоговом окне Поиск и замена, если требуется найти или заменить данные в базе данных или проекте Access. Эти знаки также используются при выполнении запросов на выборку и обновление для базы данных Access, однако их нельзя применять в запросах для проектов Access. Дополнительные сведения об использовании запросов на выборку и обновление см. в статьях Создание простого запроса на выборку и Обновление данных в базе данных.
Символ |
Описание |
Пример |
* |
Соответствует любому количеству символов. Вы можете использовать звездочку (*) в любом месте строки символов. |
По запросу чт* будут найдены слова "что", "чтение" и "чтиво", но не "почтение" или "почта". |
? |
Соответствует любому одиночному знаку алфавита. |
По запросу ст?л будут найдены слова "стол", "стал" и "стул". |
[ ] |
Соответствует любому одиночному символу, указанному в квадратных скобках. |
По запросу ст[оу]л будут найдены слова "стол", "стул", но не "стал". |
! |
Соответствует любому символу, не указанному в квадратных скобках. |
По запросу ст[!оу]л будут найдены слова "стал" и "стыл", но не "стол" или "стул". |
- |
Соответствует любому символу из диапазона. Диапазон следует указывать в алфавитном порядке (от А до Я, а не от Я до А). |
По запросу с[а-ы]н будут найдены слова "сан", "сон" и "сын". |
# |
Соответствует любому цифровому символу. |
По запросу 1#3 будут найдены числа 103, 113 и 123. |
Подстановочные знаки ANSI-92
Данный набор подстановочных знаков используется при выполнении запросов на выборку и обновление для проектов Access (ADP-файлов) и для поиска в базе данных стандарта ANSI-92 с помощью запроса любого типа или с помощью диалогового окна Поиск и замена.
Символ |
Описание |
Пример |
% |
Соответствует любому количеству символов. Может использоваться в качестве первого или последнего символа в строке символов. |
По запросу чт% будут найдены слова "что", "чтение" и "чтиво", но не "почтение" или "почта". |
_ |
Соответствует любому одиночному символу алфавита. |
По запросу ст_л будут найдены слова "стол", "стал" и "стул". |
[ ] |
Соответствует любому одиночному символу, указанному в квадратных скобках. |
По запросу ст[оу]л будут найдены слова "стол", "стул", но не "стал". |
^ |
Соответствует любому символу, не указанному в квадратных скобках. |
По запросу ст[^оу]л будут найдены слова "стал" и "стыл", но не "стол" или "стул". |
- |
Соответствует любому символу из диапазона. Диапазон следует указывать в алфавитном порядке (от А до Я, а не от Я до А). |
По запросу с[а-ы]н будут найдены слова "сан", "сон" и "сын". |
Примечания
-
Чтобы найти подстановочный знак, находящийся в данных, его следует заключить в квадратные скобки, например так: [#]. Этому правилу нужно следовать при поиске звездочек (*), вопросительных знаков (?), знаков решетки (#), открывающих квадратных скобок ([) и дефисов (-). При поиске восклицательных знаков (!) или закрывающих квадратных скобок (]) не требуется заключать их в скобки. Чтобы найти эти знаки с помощью диалогового окна Поиск и замена, введите знак в поле Образец, не используя квадратные скобки. По такому же принципу выполняется поиск знаков с помощью запроса. Например, следующий синтаксис возвращает все записи, содержащие восклицательный знак, независимо от позиции знака в данных: Like "*!*".
Сведения об использовании диалогового окна Поиск и замена см. в статье Использование диалогового окна "Поиск и замена" для изменения данных. Сведения об использовании запросов на выборку и обновление см. в статьях Создание простого запроса на выборку и Обновление данных в базе данных.
При поиске дефиса вместе с другими знаками следует разместить его до или после всех других знаков в скобках, например: [-#*] или [#*-]. Однако если после открывающей скобки находится восклицательный знак (!), дефис следует поместить после него: [!-].
-
Чтобы найти пару открывающих и закрывающих скобок ([]), необходимо заключить оба символа в скобки, например [[]]. Это необходимо сделать, так как Access интерпретирует одну пару скобок как пустая строка.
Типы данных, для которых можно выполнять поиск с помощью подстановочных знаков
При создании таблицы для каждого ее поля задается тип данных. Например, полям, содержащим даты, присваивается тип данных "Дата/время". В следующей таблице перечислены типы данных, для которых можно выполнять поиск с помощью подстановочных знаков. Следует помнить, что в некоторых случаях подстановочные знаки можно использовать только в диалоговом окне Поиск и замена, но не в запросах, и наоборот.
Тип данных |
Где используются подстановочные знаки |
Текстовый |
Диалоговое окно Поиск и замена, запросы |
Memo |
Диалоговое окно Поиск и замена, запросы |
Числовой |
Диалоговое окно Поиск и замена, запросы |
Дата/время |
Диалоговое окно Поиск и замена, запросы Примечание: Региональные параметры могут повлиять на способ использования подстановочных знаков. Дополнительные сведения см. в примечаниях в конце раздела. |
Денежный |
Диалоговое окно Поиск и замена, запросы |
Счетчик |
Диалоговое окно Поиск и замена, запросы |
Объект OLE |
Нет. |
Логический |
Запросы, но в них нет необходимости. Дополнительные сведения см. в примечаниях в конце раздела. |
Гиперссылка |
Диалоговое окно Поиск и замена, запросы |
Мастер подстановок |
Зависит от типа данных исходного поля. |
Примечания
-
В диалоговом окне Поиск и замена можно использовать подстановочные знаки для поиска в полях даты и времени, если их формат полностью или частично отображает дату в виде текста. Например, вы можете выполнить поиск с помощью такой строки, как *бр*-10-2007, и результаты будут включать названия месяцев, содержащие буквы "бр" (сентябрь, октябрь и т. д.). Помните, что поскольку необходимо выполнить поиск, используя формат, примененный к данным, необходимо установить в диалоговом окне флажок С учетом формата полей. Дополнительные сведения см. в статье Использование диалогового окна "Поиск и замена" для изменения данных.
-
Настройки даты и времени, определенные в региональных параметрах Windows, могут повлиять на отображение данных и на способ поиска. Например, даты могут отображаться римскими цифрами (07-IX-1997, а не 07-сен-1997). Как правило, поиск выполняется на основе того, что выводится на экран, а не того, что хранится в таблице Access. Другими словами, для поиска всех записей, относящихся к сентябрю 2007 года, можно использовать строку *-IX-2007.
Кроме того, если текст в поле даты содержит диакритические знаки, такие как á или ä, необходимо включить их в строку поиска, иначе запись не удастся найти. Вместо диакритических знаков можно использовать подстановочные знаки. Например, если отображается такая дата, как 3-heinä-2007, для поиска можно использовать строку *-hein*-2007.
-
При поиске в поле логического типа с использованием диалогового окна Поиск и замена приложение Access пропускает это поле, а диалоговое окно не возвращает никаких записей. При поиске в поле логического типа с помощью запроса можно использовать подстановочные знаки, но следует помнить, что логические поля возвращают только два значения (0 — "Ложь" и -1 — "Истина"), поэтому подстановочные знаки никак не влияют на поиск. Например, условие =-1 возвращает те же результаты, что и "Like *1".
-
Поиск в полях типа "Объект OLE" не поддерживается.