Свойство«сжатие Юникод». В Microsoft Access 2000 для хранения информации полей типа«Текстовый», «Поле MEMO» и «Гиперссылка» используется кодировка Юникод(Unicode). В Юникод каждый символ представляется двумя байтами, а не одним, какв традиционных кодировках. В результате для хранения данных полей типа«Текстовый», «Поле MEMO» и «Гиперссылка» требуется больше места, чем впредыдущих версиях Access.
Этотэффект использования кодировки Юникод можно сгладить, установив свойство СжатиеЮникод (Unicode Compression) поля в значение Да. При создании полей типа«Текстовый», «Поле MEMO» и «Гиперссылка» это значение свойства устанавливаетсяпо умолчанию. Когда свойство Сжатие Юникод поля имеет значение Да,все символы, первый байт которых равен 0, будут сжиматься при сохранении ивосстанавливаться при выборке. Если первый байт отдельного символа не равеннулю, этот символ не будет сжиматься.
Числовыеполя обладают, в основном, теми же свойствами, что и текстовые, за некоторымиотличиями. Тип числового поля может принимать значения из следующего списка:
Байт – целые числа в пределах от 0 до 255;
Целое – целые числа от –32768 до 32767;
Длинное целое – целые числа от -2147483648 до 2147483647;
С плавающей точкой (4 байт) – числа в пределах от–3.402823ЕЗ8 до 3.402823ЕЗ8;
С плавающей точкой (8 байт) – числа в пределах от–1.79769313486232ЕЗ08 до 1.79769313486232ЕЗ08;
Код репликации – глобально уникальный идентификатор (GUID)длиной 16 байт.
Форматчислового поля может определяться следующими кодовыми символами:
. – точка используется вкачестве десятичного разделителя;
, – запятая применяетсякак разделитель групп разрядов;
0 – вывод цифры или нуля,если разряд незначащий; # – вывод цифры;
$ – знак доллара; %– вывод числа в процентном формате;
Е или е – выводчисла в экспоненциальной форме.
Присоздании числового формата могут быть заданы четыре группы кодов:
первая– для вывода положительных чисел, вторая – для отрицательных значений, третья –для представления нулевого значения, четвертая – для пустых полей.
Группыразделяются знаком «точка с запятой». Основой для определения числового форматаможет служить следующая конструкция: # ##0,00
Вэтом формате указано не только расположение обязательных и факультативныхразрядов, но и отмечено, что в числе должно проводиться разделение группразрядов пробелами. Так, например, число 123456,789 в этом формате выглядело быследующим образом: 123 456,78
Вформате можно задавать и цвет выводимых символов. Допустим, надо представитьзначения температуры так, чтобы величины больше нуля были красного цвета, аменьше нуля – синего. В этом случае формат может быть таким:
#[Красный]; -#[Синий]; 0[Зеленый]; 'Нет данных"
Какможно использовать последнюю, четвертую группу формата? Во-первых, можносоздать фразу-напоминание (Введи число!), которая покажет, что в некоторойячейке отсутствуют данные, которые на самом деле должны там быть. Во-вторых,используя четвертую группу формата, можно из числового поля сделать «как бытекстовое», то есть позволить программе заполнять ячейку неким текстом приотсутствии числовых данных.
Длятипа данных Дата/Время существует набор форматов поля, приведенный нижевместе с примерами:
Полный формат (устанавливается по умолчанию) | 15.04.94 05:30:10 РМ |
Длинный формат даты | Среда 15 Апрель 1994 |
Средний формат даты | 15-апр-94 |
Краткий формат даты | 15.04.94 |
Длинный формат времени | 17:30:10 |
Средний формат времени | 05:30 РМ |
Краткий формат времени | 17:30 |
Поумолчанию денежный формат представляет собой числа, записанные с двумя знакамипосле запятой, с разделением групп разрядов и обозначением «р.» в конце.Пользователь может записать в строке Формат поля шаблон для своегоформата. Допустим, необходимо вводить суммы в долларах. Тогда надо установитькурсор на слово Денежный и заменить его шаблоном формата, например,таким: # ###$.
Этотформат предполагает, что сумма записана как целое число, с разделением групп изтрех разрядов пробелами (чтобы легче было отличать единицы от тысяч, а тысячиот миллионов) и знаком доллара в конце числа, как принято в России, но не вСША.
Полятипа «счетчик» выполняют определенную функцию – автоматическую идентификациюзаписей таблицы. Поэтому свойств, которые можно было бы изменить, у такого полянемного. Во-первых, счетчик – это всегда число. Во-вторых, наращивание егозначения происходит автоматически. Access предлагает два варианта изменениясчетчика: последовательный и случайный. Первыйвариант удобен тем, что позволяет нумеровать записи. Второй вариант можноиспользовать, если надо создать систему кодирования записей в таблице,защищенную от неосторожных действий оператора. Если нумеровать записипоследовательно (1, 2, 3, и т. д.), то опечатка при вводе может легкопревратить один код в другой, и обнаружить такую ошибку будет трудно. Иначеобстоит дело, если коды выбираются случайным образом (например, 1193517479,442230790, 1742918387, и т. д.). Поскольку случайные значения счетчикапредставляют собой многоразрядные числа, то вероятность того, что один кодбудет введен вместо другого, меньше, чем в первом случае. Кроме того, имеясписок всех кодов, легко проверить сколь угодно большую таблицу на наличиеопечаток. Остается добавить, что использовать этот прием можно, если заменить вдальнейшем тип «счетчик» на другой, потому что изменять данные в поле счетчикаоператор не может.
Ячейкав поле логического типа может содержать только одно из двух значений: Даили Нет. Access предлагает еще два варианта названий логическоготипа: Истина/Ложь и Включено/Выключено. Внезависимости от того, какой формат поля вы изберете, в таблице логическое полебудет представлено в виде набора флажков. Когда вы щелкаете флажок мышью, этоприводит к тому, что в квадрате появляется изображение галочки, чтосоответствует логическому значению Да (
). Сброс флажка означаетприсвоение ячейке поля логического значения Нет. Использованиелогических полей может быть самым различным, например, в анкетах или длясоздания элементов управления.
Врежиме таблицы доступны самые разные операции с данными – просмотр, сортировка,фильтрация, обновление и печать. Однако очень часто приходится проводитьвычисления или просматривать данные из нескольких таблиц. Отобрать нужныеданные можно с помощью запросов.
Послевыполнения запроса на выборку (который отбирает информацию изтаблиц и других запросов базы данных, в то время как при выполнении запросов наизменение данные вставляются, обновляются или удаляются) Access создает наборзаписей, содержащий отобранные данные. В большинстве случаев с набором записейможно работать точно так же, как с таблицей: можно просматривать и выбиратьинформацию, печатать и даже обновлять данные. Однако в отличие от реальнойтаблицы, этот набор записей физически не существует в базе данных. Accessсоздает набор записей из данных таблицы только во время выполнения запроса.Если вы измените данные в наборе записей, Access внесет соответствующиеизменения в таблицы, на базе которой построен запрос.
Однимиз преимуществ запросов является то, что они позволяют достаточно быстроотобрать необходимые данные из нескольких связанных таблиц. Но запросы полезныи при работе с одной таблицей. Все приемы, используемые при работе сединственной таблицей, годятся и для сложных многотабличных запросов, поэтомумы начнем с запросов на выборку данных одной таблицы.
Нарис. 6.6 показан запрос в режиме конструктора. Окно конструктора запросовразделено на две части. В верхней находятся списки полей таблиц или запросов,на основе которых создается новый запрос. В нижней располагается бланк QBE(Query By Example – запрос по образцу), в котором выполняется вся работапо созданию запроса. Каждый столбец бланка представляет одно поле, используемоев запросе. Поле может просто принадлежать одной из таблиц, быть вычисляемым(иными словами, его значение рассчитывается на основе одного или несколькихполей таблицы), или итоговым, то есть использующим одну из встроенных функцийMicrosoft Access.
Перваястрока бланка запроса служит для выбора полей, которые должны присутствовать внаборе записей, используется для сортировки данных или для выбораинформации из таблицы. Полям запроса можно присвоить имена, которые будутотображаться в заголовках столбцов при выводе набора записейзапроса, а для генерации вычисляемых полей можно использовать выражения любойстепени сложности.
Еслибыла выполнена команда Вид->Имена таблиц, во второй строке бланказапроса Access выведет имя таблицы, из которой выбрано поле. В третьейстроке бланка можно задать сортировку по возрастанию или по убыванию.
Флажкив строке бланка Вывод на экран отвечают за вывод полей в наборе записей.По умолчанию выводятся все поля, включенные в бланк запроса.
Дляввода условия отбора записей используется строка Условие отбора и строкиили. На рис.6. 6 показан запрос на выборку фамилий тех студентов,которые имеют оценки от 4 до 5 баллов.