Например, запись BETWEEN0 AND00 означает, что диапазон значений находится в пределах от0 до00, по - другому это можно записать (>=0 AND <=100).
LIKE - проверяет соответствие текстового или МЕМО поля заданному шаблону символов. Оператор сравнения LIKE в качестве операнда использует текстовую строку, которая определяет допустимые символы в конкретной позиции шаблона.
В качестве символов могут выступать следующие обозначения:
- соответствует одному произвольному символу.
- соответствует любому, включая нулевое, количество произвольных символов. Используется для замены последовательности символов.
# - знак числа. Соответствует одной произвольной цифре.
Примером строки с оператором LIKE может служить такая запись: LIKE ???ов?
Аналогично условия на значения можно устанавливать не только для одного поля, но и для всей таблицы в целом.
2.2.3 Создание первичного ключа и установление связей
Каждая таблица в реляционной базе данных должна иметь первичный ключ. Если при разработке базы данных уже заранее определено, какие поля будут использованы в качестве первичного ключа, то остается только установить эти поля в соответствующем статусе. Если же такой определенности нет, то Microsoft Access позволит задать в качестве первичного ключа соответствующее поле с названием «Код». Тип данных, соответствующий этому полю, выставляется « Счетчик », который генерирует уникальные для данной таблицы номера записей.
Определив несколько таблиц необходимо определить взаимосвязь их друг с другом, тогда в дальнейшем Microsoft Access сможет связывать эти таблицы при их использовании в запросах, формах или отчетах. Перед установлением связей между двумя таблицами необходимо проверить следующие условия:
1) Первичному ключу одной таблицы соответствует вторичный ключ другой таблицы.
2) Определить где находится соотношение один, а где многие.
Иллюстрацию этих условий смотри на рис..
* - будем считать, что один заказчик заказывает много товаров.
Установление связи-
Механизм установления связей между таблицами достаточно прост. Необходимо поле с соотношением один перенести в поле с соотношением многие. В результате этих действий Microsoft Access создаст связь и нарисует ее между таблицами (рис.4).
Для связи двух таблиц тип данных связываемых полей должен совпадать, исключение составляет связывание поля с типом данных « Счетчик » - ему должно соответствовать поле с типом данных «Числовой ».
При установлении связи между таблицами Microsoft Access поддерживает два вида связей: « один ко многим (1 - ) » и « один к одному (1 -) ».
1) « Один ко многим ».
Это означает, что любой записи в первой таблице может соответствовать несколько записей во второй. Однако любая запись второй таблицы соотносится только с одной записью в первой. Например, любой заказчик может иметь несколько заказов, но каждый заказ будет относиться только к одному заказчику.
2) « Один к одному ».
Любая запись в одной таблице может быть связана только с одной записью во второй и наоборот. Например, финансовое положение заказчика характеризуется такой однозначной связью.
Связи с соотношением многие ко многим Microsoft Access не поддерживает. Для того чтобы отойти от данного типа связей необходимо создавать таблицу пересечения, позволяющую свести связь - к двум связям - .
2.2.4 Создание индексов.
Чем больше данных хранится в таблицах, тем больше индексов нужно для эффективного поиска информации.
Индекс - это внутренняя таблица, состоящая из двух столбцов: значение выражения, содержащего все поля, включенные в индекс и местоположение каждой записи таблицы с данным значением индексного выражения.
Создание индекса
При условии Город = « Москва » Microsoft Access создает индексную таблицу *
Например, если очень часто осуществляется поиск заказчиков в соответствующей таблице по названию города и индекс отсутствует, а необходимо найти всех заказчиков из города Москва, Microsoft Access должен будет просмотреть все записи таблицы. Эта операция будет быстро выполняться при небольшом количестве заказчиков, если же записей несколько сотен тысяч, поиск осуществляется медленно. При наличии индекса по полю город программа сможет использовать его для ускорения поиска записей со сведениями о заказчиках, находящихся в указанном городе. Как правило, индексы содержат значения только одного поля. Microsoft Access использует этот тип индекса для ограничения количества записей, которые ему приходится просматривать для любого условия поиска по соответствующему полю. Например, реализацию условия Город = « Москва » смотри в таблице.
Если определены индексы для нескольких полей и задан критерий поиска более чем по одному полю, то Microsoft Access использует индексы совместно, что бы быстрее найти нужные записи. Например, если созданы отдельные индексы по полям « Город » и «Фамилия » и необходимо найти записи, удовлетворяющие условию Город = « Москва », Фамилия = « Иванов », то все строки индекса по полю Город, содержащие значение «Москва» Microsoft Accessсравнит со строками в индексе Фамилия = «Иванов». Результатом будет сокращение количества указателей к записям, удовлетворяющим обоим условиям.
Для установки индекса по одному полю существует две возможности:
1) Для полей, в которых создается индекс и существуют записи с повторяющимися значениями в свойстве полей « Индексированное поле » установить значение «Допускается повторение ».
2) Для этих же полей, не имеющих повторяющихся строк, Microsoft Access может создать индекс, содержащий только уникальное значение данного поля. Для этого устанавливают значение « Совпадения не допускаются ».
При частом поиске в больших таблицах по нескольким полям можно создать составные индексы, в этом случае Microsoft Access сокращает имя поиска, поскольку ему не приходится сравнивать значения из двух индексов. Например, можно объединить поля: фамилия, имя, отчество в один индекс, тогда Microsoft Access осуществит поиск быстрее.
Microsoft Access использует составные индексы даже тогда, когда поиск ведется по значениям лишь некоторых полей. Microsoft Access может использовать составной индекс в тех случаях, когда в условия поиска включается последовательность полей, начиная с первого поля индекса, т.е. поиск может осуществляться по имени, по имени и отчеству, по ФИО. Существуют, правда, ограничения на использование составных индексов: только последнее условие поиска может содержать операторы неравенства <, <=, >, >=. Например: ( Имя = « Анатолий » OR Фамилия = « Иванов »). Эта запись будет выполнена.
А эта запись неверна: ( Имя < « Анатолий » OR Фамилия = « Иванов »).
2.2.5 Ограничения для баз данных
При проектировании БД в МА существует ряд ограничений, накладываемых на БД:
1) Таблица может содержать не более55 полей.
2) Таблица не может иметь более2 индексов.
3) Составные индексы не могут включать более0 полей, причем общая их длина не должна превышать255 байт.
4) Общая длина строки таблицы без учета полей МЕМО и объектов OLE не может превышать КБ.
5) Размер поля МЕМО ограничивается ГБ, но нельзя вывести поле МЕМО размером более4 КБ в форме или в режиме таблицы.
6) Размер объекта OLE не должен превышать ГБ.
7) На число записей в таблице не существует ограничений, но размер файла базы данных Microsoft Access не может превышать ГБ. Если же существует несколько больших таблиц, то в этом случае придется создавать для каждой из них отдельную базу данных, а затем связывать их с базой данных, содержащей формы, отчеты, макросы и модули соответствующего приложения.
2.2.6 Изменение проекта базы данных
Ограничения на изменения.
Как бы тщательно не проектировалась база данных, в процессе работы неизбежно приходится столкнуться с необходимостью внесения изменений в исходный проект. Microsoft Access обеспечивает достаточную простоту при внесение изменений в проект базы данных, даже при наличии информации, находящейся в таблицах. Однако следует учитывать следующие ограничения:
1) Сделанные в таблицах изменения Microsoft Access не вносит автоматически в использующие их отчеты, формы, макросы и модули. Зависимые объекты необходимо редактировать самостоятельно.
2) Нельзя изменить тип данных поля, используемого в определении связи между таблицами. Сначала необходимо удалить соответствующую связь, затем изменить тип поля и снова определить связь.
3) Нельзя изменить определение таблицы, открытой в запросе, форме или отчете. Прежде чем открыть таблицу в режиме конструктора для внесения изменений необходимо закрыть все открытые объекты, ссылающиеся на нее. Если разрешен доступ к базе данных другим пользователям сети, то перед внесением изменений в таблицу необходимо убедиться, что ни один из них не работает с ней.
Преобразование данных.
Microsoft Access позволяет производить различные манипуляции с таблицами: удалять, переименовывать, трансформировать одни таблицы в другие. Особенно нужно отметить, что Microsoft Access позволяет изменять тип данных или размер поля даже в том случае, если поле уже содержит информацию. В этом случае возможны два варианта:
Преобразование без ограничений.
Варианты преобразования типов данных без ограничений
|
Типы преобразуемых данных |
Типы преобразованных данных |
|
|
Числовой |
Текстовый |
|
|
Дата/время |
Текстовый Поле МЕМО Числовой Денежный |
|
|
Денежный |
Текстовый Поле МЕМО |
|
|
Счетчик |
Текстовый Поле МЕМО Числовой Денежный |
|
|
Гиперссылка |
Поле МЕМО |
Преобразования, на которые накладываются ограничения.
В некоторых случаях при преобразовании одних типов данных в другие возможна трансформация информации, потеря отдельных данных, а иногда и полное исчезновение информации, поэтому изменение типов данных, с уже имеющейся информацией необходимо производить с большой осторожностью.
2.2.7 Режим таблицы
Просмотр и изменение данных.
Самый простой способ просмотреть данные, хранящиеся в таблице, это открыть ее в режиме самой таблицы. С помощью данного режима можно выполнять такие основные операции, как поиск, обновление, вставка, удаление данных. В режиме таблицы можно изменять ее параметры:
Изменять высоту строк и ширину столбцов.
Изменять порядок расположения столбцов.
Скрывать столбцы, т.е. делать размер поля равным нулю.
Это используется в том случае, когда необходимо отследить только нужные поля.
Закреплять столбцы.
Это используется, когда необходимо удерживать на экране один или несколько столбцов, а остальные прокручивать относительно их влево или вправо.
Менять внешний вид ячеек таблицы.
Изменять шрифт в таблице.
В режиме таблицы кроме просмотра данных и их форматирования можно производить следующие операции над их изменениями:
Добавлять новую запись.
Выделять и изменять данные.
Заменять одни данные на другие.
Копировать и вставлять данные.
2.2.8 Работа с гиперссылками
Начиная с Microsoft Access7 был введен новый тип данных “ Гиперссылка ”. Данный тип данных позволяет хранить в поле простые или сложные ссылки на файлы или документы, находящиеся вне базы данных. Такие ссылки могут содержать адрес, указывающий на некоторое место в Internet, корпоративной сети, либо сетевой маршрут к файлу на сервере локальной сети или на самом компьютере. Ссылка может указываться в формате языка, поддерживающего гиперссылки. В самой таблице гиперссылка на обычном фоне выделяется синим цветом.
Гиперссылка по своей сути является текстовым полем и может содержать до048 символов и состоять из трех основных частей:
Необязательное описание.
Это текст, который отображается в поле или элементе управления, может начинаться с любого символа кроме знака числа # и должен заканчиваться знаком #.
Адрес гиперссылки.
Это может быть адрес, начинающийся с имен протоколов, работающих в Internet (например, WWW…) или сетевой путь к файлу (C:\…\…\имя файла…\)
Необязательный дополнительный адрес.
Этот адрес дает именованный объект внутри файла. Например, можно указать закладку в документе Word. Дополнительный адрес отделяется от основного символом #, т.е. строка имеет вид: описание # адрес # необязательный адрес.
При активизации гиперссылки Microsoft Access запускает соответствующее приложение, работающее с указанным файлом и передает ему основной и дополнительный адреса.
2.2.9 Сортировка и поиск данных
Сортировка данных.
После открытия таблицы Microsoft Access выводит строки в последовательности, определяемой значениями первичного ключа. Если первичный ключ не был определен, то записи отображаются в том порядке, в котором они были введены в эту таблицу.
Для сортировки данных в таблице можно воспользоваться следующими способами: