Операторы слияния строковых значений (конкатенации)


Стандартный значок оператора конкатенации SQL, амперсант (&), является более предпочтительным, чем значок плюса (+), хотя оба они приводят к одинаковому результату: объединению двух текстовых значений в единую строку символов. Применение значка плюс (+) двусмысленно, его основное назначение — сложение двух числовых операндов.
Пример: слияние "Visual" & "Basic" дает "Visual Basic". Обратите внимание на дополнительный пробел в первом слове, без него результат выглядел бы несколько иначе: "VisualBasic".
Операторы идентификации
Операторы идентификации применяются в качестве разделителей в ссылках на объекты (оператор "!"), их методы или свойства (оператор "."):
КлассОбъекта!ИмяОбъекта
КлассОбъекта!ИмяОбъекта.Свойство
КлассОбъекта!ИмяОбъекта.Метод()
ИмяОбъекта.Свойство
ИмяОбъекта.Метод().
Эти операторы позволяют объединять имена объектов и классов объектов для отбора специфических объектов или их свойств, различать имена объектов и их свойств, идентифицировать определенные поля в таблицах.
Например:

  • Forms!Категории, Tables ! Категории — идентификация формы и таблицы с одинаковыми именами;
  • MyTextbox.Caption = "Будьте внимательны!" — здесь MyTextbox — объект управления, a Caption — свойство;
  • Заказы! [Код клиента] — определяет поле "Код клиента" (CustomerlD) в таблице "Заказы" (Customers).

Благодаря наличию операторов идентификации можно присваивать полям разных объектов одни и те же имена (поэтому, например, свойство Caption есть у большинства объектов).
 
Операторы сравнения с образцом
Остальные операторы Access упрощают создание выражений для выборки записей в запросах и относятся к операторам сравнения с образцом. Эти операторы возвращают True или False, в зависимости от соответствия значения в поле выбранной спецификации оператора. Наличие этих операторов в условиях на значение позволяет либо включать запись в запрос, если логическое значение, возвращаемое выражением, равно True, либо отвергать, если это значение — False.
Таблица 4.7. Другие операторы, используемые в выражениях Access

Оператор

Пример

Описание

Between

Between (-100) And (100)

Определяет, находится ли числовое значение в определенном диапазоне значений

Is

Is Null Is Not Null

При использовании вместе с Null определяет, является ли значение Null или Not Null

In

In ("Москва", "Киев", "Санкт-Петербург")

Определяет, является ли строковое значение элементом списка значений

Like

Like "Ив*" Like "db??"

Определяет, начинается ли строковое значение с указанных символов (для правильной работы Like нужно добавить символ шаблона "*" или один или несколько символов "?")

Для пользователей, знакомых с шаблонами командной строки DOS, применение знаков (символов шаблона) "*" и "?" в операторах Like не вызовет затруднений. Точно так же, как в DOS, символ "*" замещает любое число знаков, а символ шаблона "?" замещает только один знак, поэтому Like "Ив*" вернет True для значений "Иванов", "Иващенко", "Иволгин". Для "dbl" или "dbl00" значение оператора Like "db??" будет False, но тот же оператор вернет для "dbl0" и "dbXX" значение True. Символы шаблона "*" и "?" могут стоять в любом месте шаблонной строки, . например:

  • Like "*ms* . ?*" — возвращает True только для значений, содержащих в своем теле подстроку "ms", после которой (может быть сразу, а может быть через несколько символов) следует не менее двух символов, первый из которых точка (.);
  • Like "?1???*" — возвращает True только для значений, состоящих не менее чем из пяти символов, вторым из которых является "1".

 

 

Идентификаторы объектов
Любой объект Access имеет имя, по которому его можно однозначно идентифицировать в некоторой системе объектов. Кроме обозначения коротким именем объекта, идентификатор можно обозначить квалифицированным (или полным} именем, когда объект идентифицируется как один из объектов в семействе объектов. В этом случае имя идентификатора состоит из имени семейства (класс объекта), отделенного от присвоенного имени (имени объекта) восклицательным знаком или точкой (символами операции идентификации "!" и "."). Поэтому имена объектов не должны содержать символов "!" и "." В SQL разделитель имен объектов — точка, в Access для разделения имен таблиц и имен полей используется "!", а точка разделяет объекты и их свойства. Используя идентификаторы, можно возвращать значения полей в объекты форм и отчетов, а также строить новые выражения.
Пример идентификаторов объектов в базе данных "Борей" (Northwind):
[Заказы]![ДатаНазначения]

идентификатор поля "ДатаНазначения", находящегося в таблице "Заказы" (Orders).