Книги, научные публикации Pages:     | 1 | 2 | 3 | 4 |   ...   | 7 |

Ирина Харитонова САМОУЧИТЕЛЬ OFFICE ACCESS 2003 Прочитав эту книгу, вы научитесь: ...

-- [ Страница 2 ] --

Однако следует учитывать, что добавление индексов к таблице влияет на ско рость сохранения записей, так как при вводе и изменении записей требуется Занятие 3. Создание таблиц / дополнительное время на обновление индексов. Поэтому индексы обычно рекомендуется создавать только для тех полей таблицы, по которым поиск записей ведется чаще всего. В Microsoft Access индексировать можно любые поля, кроме объектов OLE (OLE Object). Индекс (и простой, и составной) может быть уникальным. Уникальный индекс не позволяет хранить в индек сированном поле одинаковые значения. Уникальный индекс автоматически создается для ключевого поля таблицы.

2. Так как поиск читателя, скорее всего, будет выполняться по фамилии, имеет смысл проиндексировать эту таблицу по полю Фамилия. Установите для это го поля значение свойства Индексированное поле (Indexed) равным Да (Допус каются совпадения) (Yes (Duplicates OK)).

3. Таблица создана, и можно закрыть окно конструктора. Для этого нажмите кнопку закрытия окна. На вопрос Сохранить изменения макета или структуры таб лицы <имя таблицы>? (Do you want to save changes to the design of table <имя табли цы>?) ответьте Да (Yes). В окне Сохранить как (Save As) в поле Имя таблицы (Table Name) введите имя создаваемой таблицы Читатели и нажмите кнопку ОК.

Редактирование структуры таблицы в режиме конструктора В качестве примера изменим структуру таблицы Издания, которую вы должны были создать с помощью мастера. Нам придется изменить свойства некоторых полей и добавить недостающие поля.

1. Выделите таблицу Издания в списке и откройте ее в режиме конструктора, нажав кнопку Конструктор (Design). Структура таблицы должна быть такой, как на рис. 3.11.

2. Выделите поле КодИздания и введите значение свойства Подпись (Caption): Код издания. Тип данных поля ТиОбложки измените на Текстовый (Text), а поля КодГо рода Ч на Числовой (Number).

Добавление полей таблицы Теперь добавим несколько полей:

Х Том Ч текстовое поле, в котором будет указываться номер для периодиче ских изданий и том Ч для многотомных.

Х КодМеста Ч числовое поле, в котором будут данные о месте хранения книги в библиотеке.

Х ТипИздания Ч текстовое поле, в котором будут храниться значения: книга, журнал, газета.

1. Сначала выделите поле Название. Установите размер поля Название равным 100 символам и сделайте его обязательным, установив значение свойства Обя зательное поле (Required) равным Да (Yes).

Редактирование структуры таблицы в режиме конструктора Рис. 3.11. Структура таблицы 2. Поле Том поместим перед полем Издание. Чтобы вставить новое поле, выде лите строку, перед которой нужно вставить поле (в данном случае Издание), и нажмите клавишу Insert. Появится свободная строка, в которой нужно определить имя поля Название и тип данных Текстовый (Text). Размер поля установите равным 10 символам.

3. Поле КодМеста вставьте перед полем Цена. Это поле связывает таблицу Изда ния с таблицей МестаХранения, так как его значениями будут являться значе ния столбца КодМеста таблицы МестаХранения. Для этого поля мы определим столбец подстановок.

Создание столбца подстановок Столбец подстановок представляет собой список значений, которые могут быть введены в текстовое или числовое поле. Обычно столбец подстановок создается для тех полей, значения которых представляют собой коды из справочника (как в нашем примере), то есть это ключи из другой таблицы.

Столбец подстановок служит двум целям:

Х облегчает ввод данных в такое поле, так как он позволяет выбирать в списке не коды, а кодируемые значения (города, издательства, категории и т. д.);

Х при отображении таблицы в поле, для которого определен столбец подстано вок, тоже показываются не коды, а кодируемые значения, что значительно удобнее.

80 Занятие 3. Создание таблиц Кроме этого, столбец подстановок рекомендуется использовать для текстовых полей, которые имеют фиксированный набор значений. В этом случае в поле таблицы хранятся сами значения, но столбец подстановок позволяет контроли ровать правильность ввода этих значений.

Б таблице Издания мы создадим столбцы подстановок того и другого типа.

Столбцы подстановок рекомендуется создавать при определении структуры таблицы, тем более что для этого есть соответствующий мастер Ч мастер под становок.

1. В столбце Тип д а н н ы х (Data Type) поля КодМеста выберите в списке значение Мастер подстановок (Lookup Wizard).

2. В диалоговом окне Мастер подстановок (Lookup Wizard) по умолчанию установ лен переключатель Объект "столбец подстановки" будет использовать з н а ч е н и я из таблицы и л и запроса (I want the Lookup column to Look up the values in a table or query). Это именно то, что нам нужно, так как в данном случае мы должны использовать данные из таблицы МестаХранения. Нажмите кнопку Далее (Next).

3. В следующем диалоговом окне выберите таблицу МестаХранения и нажмите кнопку Далее (Next) (рис. 3.12).

Создание подстановки Таблица: Авторы Таблица;

Города Таблица: Издательства Гаппица: МестзХране Таблица: Разделы Таблица: Читатели Рис. 3.12. Выбор таблицы для столбиа подстановок 4. В списке Доступные поля (Available Fields) выводятся все поля таблицы Места Хранения (рис. 3.13). Переместите все эти поля в список Выбранные поля (Selected Fields) и нажмите кнопку Далее (Next).

5. В следующем диалоговом окне мастер предлагает определить порядок сор тировки значений в столбце подстановок. Установите его, как показано на рис. 3.14, и нажмите кнопку Далее (Next).

6. Теперь все столбцы справочника МестаХранения видны так, как они будут отображаться в раскрывающемся списке (рис. 3.15). Столбец КодМеста скрыт. Этого можно добиться, установив флажок Скрыть ключевой столбец Редактирование структуры таблииы в режиме конструктора (Hide Key Column) (обычно он устанавливается по умолчанию). Ширину ос тальных столбцов можно отрегулировать, перемешая мышью границы столб цов. Установив нужную ирину столбцов, нажмите кнопку Далее (Next).

Создание подстановки <омната Шкаф 22l] Полка Рис. 3.13.Выбор полей для подстановок по убывало, Е;

яючьгО<цля до л (К'юп I ;

Полка s J Рис. 3.14. Определение порядка сортировки списка 7. В последнем диалоговом окне нажмите кнопку Готово (Finish).

После этого Access автоматически создает связь между таблицами Издантя и МестаХранения.

8. Ответьте утвердительно на вопрос о сохранении таблицы и раскройте вклад ку Подстановка (Lookup) в нижней части окна конструктора. Эта вкладка со держит список свойств, которые определяют столбец подстановки:

82 Занятие 3. Создание таблии Создание подстановки Большая ко мнат а. [Сере ант ко мн ата ] Сервант Маленькая комна Рис. 3.15. Определение ширины столбцов П свойство Тип элемента у п р а в л е н и я (Display Control) Ч определяет вид поля:

обычное поле, список или поле со списком. В данном случае это Поле со списком (Combo Box).

D свойство Т и п и с т о ч н и к а строк (Row Source Type) Ч может принимать три значения: Таблица или запрос (Table/Query), Список з н а ч е н и й (Value List) и Список полей (Field List). В данном случае источником строк для поля подстановки будет запрос.

D свойство Источник строк (Row Source) - определяет источник данных, ко торый в данном случае представляет собой инструкцию языка SQL, отби рающую записи из таблицы МестаХранения.

П свойство B o u n d Column ( П р и с о е д и н е н н ы й столбец) Ч определяет номер столбца в раскрывающемся списке, значение из которого должно записы ваться в поле подстановки. В нашем случае это первый столбец, содержа щий КодМеста.

П свойство Число столбцов (Column Count) Ч определяет число выводимых столбцов в раскрывающемся списке. В нашем примере их четыре.

П свойство Заглавия столбцов (Column Heads) Ч определяет, будут ли выво диться заголовки столбцов. Так как в нашем списке будет выводиться сразу несколько столбцов, лучше, чтобы их заголовки были видны.

П свойство Ширина столбцов (Column Widths) Ч определяет ширину столбцов списка. Обратите внимание, что для первого столбца указана ширина 0 именно поэтому он и не будет отображаться.

р свойство Число строк списка (List Rows) Ч определяет максимальное число строк в списке. Если количество элементов списка превысит указанное число строк, в списке появится полоса прокрутки.

П свойство Ширина списка (List Width) - определяет ширину раскрывающе гося списка.

Редактирование структуры таблицы в режиме конструктора D свойство Ограничиться списком (Limit to List) Ч определяет, могут ли вво диться в поле значения, не являющиеся элементами списка.

9. Снова раскройте вкладку Общие (General) и удалите значение 0 из свойства Значение по умолчанию (Default Value).

10. Введите значение свойства Подпись (Caption): Место хранения.

Кроме поля КодМеста, в таблице Издания есть еще три поля, которые связаны ЗАДАНИЕ с другими таблицами-справочниками: Код Раздел а, КодИздательства, КодГорода. Для ка ждого из этих полей можно тоже определить список подстановки. Сделайте это само стоятельно.

Чтобы воспользоваться мастером подстановок, измените тип данных для ка ждого из этих полей Ч установите курсор в это поле и выберите в списке значение Мастер подстановок (Lookup Wizard). Можно также раскрыть вклад ку Подстановка (Lookup), изменить значение свойства Тип элемента управ ления (Display Control): Поле со списком (Combo Box) и установить вручную все значения свойств. На рис. 3.16 приведен пример заполнения свойств подстановки для поля КодРаздела.

Щ Издания : таблица \~Щ - :

Ипя толя ^;

:Ш5^№мых- :: - 1 [ L ^ U О ! { ХХ-ХХ' - Щ "Х гмСйл*л.1;

! lJ | j^_ КодИэданмя Счетчик Хjjfc КрдРаздела Числовой Название Текстов в и :'gi' Го дИ) дания Числовой _^_ КодИзда-ельства Числовой | КодГорода Л Числовой t_ Той Текстовый Издание Числовой ' Кс.дМеста Числовой 1^Цена '"."".'" Денежный ijfy ТипОбложки Текстовый Дата /время iiliJi ДатаПопупки з^;

ЧислоСтраниц Числовой ПопеМЕМО Замет! ' ' - - ^ | | f |. ' ;

* : ч' M|s - jll^ - - :

Х -' |p ::

! lll Общие Лодетамой) Тип зле-лнта уфавпеник Ълесоспиекрм тг Tun ^CTiHi-'nr

. |Та6лица или загрос, ". "Разделы | :,.

-: З^гтеиияЕТСлбиоа;

> : '^ :.Нет1 Х HIM rtin.3 n-:.*t, Lj.noflit ni о* SHWC* с :ys V-^втш npofanoe. Для отревем пс пиеиви ;

.Ц*рМнасто1Йаае 6см;

5см Ч-:1"*!:' OT?>V '/.пека 'Х | Ш К | 1 '.i ;

"^ РАВТО | Ш ШГ Рис. 3.16. Установка свойств поля подстановки Осталось ввести последнее поле: ТипИздания. Добавим его в конец таблицы перед полем Заметки.

84 Занятие 3. Создание таблиц 11. Вставьте чистую строку перед строкой Заметки и введите в столбец Имя поля (Field Name): ТипИздания. Это поле также будет иметь список подстановок, только значения будут браться не из другой таблицы, а задаваться непосред ственно при описании поля.

12. В столбце Тип д а н н ы х (Data Type) выберите Мастер подстановок (Lookup Wizard).

В первом окне мастера установите переключатель Будет введен ф и к с и р о в а н н ы й набор з н а ч е н и й (I will type in the values that I want).

13. В следующем окне нужно ввести список возможных значений поля. Устано вите курсор в первую строку столбца и начинайте вводить значения: книга, журнал, газета (рис. 3.17).

Создание подстановки I l О-ТОЦПВ 7ПИО;

,Я I ЖЧ!-И1Я Л "пЧГ Х!>..,,--Y.nr.!. l Рис. 3.17. Определение списка фиксированных значении 14. В последнем окне нажмите кнопку Готово (Finish).

Посмотрите значения свойств на складке Подстановка (Lookup) (рис. 3.18).

Свойство Тип источника строк (Row Source Type) имеет значение Список значе н и й (Value List), а Источник строк (Row Source) содержит сами значения.

тип этвментй упраеФеж! |поле со списком^ | 'SCnHCOK значений | I ""(!:ннга";

'У);

рнап"^"гаэета Х - :

Х2,^м Ш 1. i i 1,.;

,.-- ;

ц-.:-.:,..

Рис. 3.18. Список подстановок из фиксированных значений Редактирование структуры таблицы в режиме конструктора Контроль вводимых данных Access может осуществлять проверку данных, вводимых в поле таблицы. Чтобь:

это происходило, нужно на этапе определения структуры таблицы устано вить соответствующие свойства поля. Существует два способа выполнения проверки:

Х задать логическое условие, которое будет проверяться всякий раз, когда в это поле будут вводиться данные, а также сообщение, выдаваемое при нару шении этого условия;

Х установить маску ввода.

Например, в нашей таблице Издания есть числовое поле ГодИздания. Логично проверять, правильно ли вводятся данные в это поле. Можно проверить, что вводятся четыре цифры года и что этот год не больше текущего.

1. Выделите поле ГодИздания и найдите на вкладке Общие (General) свойств поля свойство Условие на значение (Validation Rule).

Условие должно выглядеть следующим образом:

1еп(Тпгп(5ШГодИздания)))=4 And ГодИздания<=Уеаг(Оа1еО) Здесь П Len Ч функция, определяющая длину символьной строки;

П Str Ч функция, преобразовывающая число в символьную строку;

П Trim Ч функция, обрезающая пробелы в начале и в конце строки 1 ;

П Year Ч функция, возвращающая целое число, соответствующее году в дате;

П Date Ч функция, возвращающая текущую дату.

2. Итак, введите эту строку в ячейку свойства Условие на значение (Validation Rule).

3. Значение следующего свойства Ч Сообщение об ошибке (Validation Text) Ч мо жет содержать текст сообщения, например: Необходимо ввести 4-значное чис л о, не превышающее значение текущего года!

4. Маску ввода обычно используют при вводе дат, тедефонов и других значе ний, имеющих определенный формат. Выделите поле ДатаПокупки и посмот рите значение свойства Маска ввода (Input Mask). Оно состоит из двух частей разделенных символом точка с запятой (;

).

П Первая часть, 99.99.00, состоит из символов, определяющих, что можно вводить в данную позицию поля: 9 означает, что можно вводить цифру или пробел, причем ввод не обязателен;

0 означает, что можно вводит],.

только цифры и ввод обязателен;

точка (.) является разделителем между цифрами числа, месяца и года и выводится на экран автоматически Дело в том, что функция Str, которая преобразует число в строку символов, в случае по ложительного числа возвращает строку, которая начинается с символа пробел (для отрицательных чисел на этом месте будет знак минус). Значит, при вводе четырех цифр года она вернет 5 символов, а не 4. Поэтому символ пробел нужно обрезатй.

86 Занятие 3. Создание таблиц Таким образом, указанный формат маски означает, что число и месяц можно вводить как одной, так и двумя цифрами, а год обязательно двумя цифрами.

D Вторая часть, 0, означает, что текстовые символы, в данном случае точки, сохраняются вместе с введенными значениями (в противном случае нуж но указать 1 или не вводить вторую часть совсем).

5. Маску ввода можно задать вручную или с помощью мастера. В данном слу чае лучше сделать так, чтобы год отображался не двумя, а четырьмя цифра ми. Поэтому установите вручную маску 99.99,0000;

0.

6. Нажмите кнопку с тремя точками справа в свойстве Маска ввода (Input Mask) 7. Сначала Access потребует сохранить таблицу. Подтвердите сохранение. За тем появится диалоговое окно мастера, в котором выводится список стан дартных масок для полей времени и даты (рис. 3.19). Этот список можно допол нять или изменять. Например, можно добавить маску ввода номера телефона.

Х lpof,ep-T п. работу u,.tV.a,;

, - т Щ г и чо-у Х.о Р -юл к "ГЬобд*.

1пинныи формат времени Краткий формат даты Краткий формат времени Средний формат времени Средний формат даты Рис. 3,19. Диалоговое окно мастера масок ввода 8. Закройте таблицу И з д а н и я и откройте в режиме конструктора таблицу Чита тели, которая содержит поле Телефон.

Маска ввода должна обеспечить возможность вводить только цифры номе ра, а остальные символы (скобки вокруг кода города, дефис между цифрами номера) будут добавляться автоматически. Чтобы задать маску, воспользу емся мастером масок ввода.

9. Выделите поле Телефон. Нажмите кнопку построителя Щ. В открывшемся диалоговом окне мастера (см. рис. 3.19) нажмите кнопку Список (Edit List).

Эта кнопка называется кнопкой построителя, и она будет встречаться еще во многих местах.

Редактирование структуры таблицы в режиме конструктора Появится диалоговое окно, в нижней части которого находится так называе мый навигатор записей Ч набор кнопок, которые позволяют просматривать записи таблицы в форме.

10. Заполните поля в форме (рис. 3.20) и нажмите кнопку Закрыть (Close). В диа логовом окне со списком масок появится новое значение Телефон. Выделите это значение и нажмите кнопку Далее (Next).

В нижней части окна есть поле Проба (Try It). Можно попробовать ввести в нем !' номер телефона и увидеть, как работает маска. После этого нажмите кнопку Го тово (Finish). Сформированная символьная строка маски ввода отображается в свойстве Маска ввода (Input Mask) для поля Телефон: 000\-00\-00;

;

_.

! уi Измените или добавьте ласеи веода, отображаемые мастером.

Телефрн Описание:

tooo-oo-oo 1тёкст/свободмыи 7Т Д...,.., Щ~ Х Х Рис. 3.20. Диалоговое окно настройки масок ввода 12. Закройте таблицу Читатели.

И последняя таблица, которая нам будет нужна, Ч это таблица Формуляры, хра нящая данные о том, какие книги брал в библиотеке каждый читатель. Уже из этой фразы видно, что она должна быть связана с таблицей Читатели и с табли цей Издания. В формуляре мы хотели бы видеть для каждого читателя, какую книгу он взял, когда взял и когда вернул. Таким образом, получается, что таб лица Формуляр должна иметь следующие поля: КодИздания, КодЧитателя, Дата По л у ч е н и я, ДатаВозврата, ДатаВозвратаФакт, Примечание 1. Каждый читатель может взять в библиотеке много книг, значит, в таблице Формуляр будет много записей с одним значением в поле КодЧитателл. С другой стороны, каждое издание могут взять последовательно несколько читателей, и с одним значением в поле КодИз дания будет тоже много записей. И только пара полей КодИздания Ч КодЧитателя определяет однозначно книгу, которую читает каждый читатель. Таким обра зом, таблица Формуляр будет иметь составной ключ из двух полей: КодИздания и КодЧитателя.

ЗАДАНИЕ Создайте самостоятельно таблицу Формуляры. Создайте столбец подстановок для полей КодИздания и КодЧитателя.

В поле ДатаВозврата мы будем вводить дату, когда книгу надо вернуть, а в поле ДатаВоз вратаФакт Ч дату, когда она действительно была возвращена.

88 Занятие 3. Создание таблии Чтобы определить составной ключ, выделите в списке полей обе строки: Код Издания и КодЧитателя и нажмите кнопку Ключевое поле (Primary Key).

Значок ключевого поля одновременно появится у обеих строк.

ЗАДАНИЕ 1. Не поленитесь, и установите или измените в конструкторе таблиц значения свойства Подпись для полей таблицы Авторы, которая была создана с помощью мастера.

Это рекомендуется делать для всех полей, название которых состоит из нескольких слов.

Вы сэкономите свое время, так как впоследствии при создании запросов, форм и отчетов не нужно будет править наименования полей Ч они сразу будут создаваться такими, как вы их обозначите в свойстве Подпись, 2. Измените тип данных для полей ГодРождения и ГодСмерти. Эти поля в шаблоне имели тип Дата/Время (Data/Time). Мы будем для простоты вводить только год рождения и смер ти писателя. Поэтому это поле может иметь тип Числовой (Number), Вместо установленно го по умолчанию значения поля Размер поля (Field Size) Long Integer введите просто Integer.

3. Удалите значения свойства Маска ввода (Input Mask) для полей ГодРождения и Год Смерти, так как эти маски также подходили только для типа данных Data/Time.

4. Удалите значение 0 свойства DefaultValue для этих полей, которые по умолчанию при сваиваются полям с типом данных Number.

Связывание таблиц Теперь, когда таблицы созданы, нужно установить связи между ними. Удобнее всего это делать на схеме данных.

1. Чтобы открыть окно схемы данных, выполните команду Сервис ^ Схема дан ных (Tools > Relationships). Откроется диалоговое окно Схема д а н н ы х (Relati onships), в котором могут быть отображены некоторые таблицы 1.

2. Нужно отобразить на схеме все наши таблицы, так как все они связаны меж ду собой. Для этого щелкните правой кнопкой мыши на свободном поле на схеме и в контекстном меню выберите команду Добавить таблицу (Show Table).

3. Появится диалоговое окно Добавление таблицы (Show Table) со списком всех таблиц в базе данных (рис. 3.21), Выделите в этом списке, пользуясь клави шей Ctrl, те таблицы, которые отсутствуют на схеме, и нажмите кнопку Доба вить (Add).

Если вы не умеете пользоваться клавишей Ctrl добавляйте таблицы по оче реди.

Какие и сколько, зависит от того, как пы их создавали. Если, создавая столбцы подста новки, вы пользовались мастером, эти таблицы появятся на схеме, в противном случае они не отображаются.

Связывание таблиц Добавление таблицы | г^-ргкы ] 1.-tfifMUt I н -5?пт'0.:ы Издательства MeстаХранения Разделы Формуляры Читатели Рис. 3.21. Добавление таблии к схеме данных 4. По окончании закройте окно Добавление таблицы (Show Table), щелкнув на кнопке З а к р ы т ь (Close). Ваша схема должна выглядеть примерно так, как представлено на рис. 3.22. Необходимо теперь установить связи между таблицами 1.

Рис. 3.22. Окно связей Установим связи между таблицами Читатели и Формуляр. Эти таблицы связа ны отношением лодин-ко-многим. Связь мы будем устанавливать графиче ски, соединяя связанные поля.

5. Схватите и перетащите поле КодЧитателя в таблице Читатели (сторона лодин) к таблице Формуляр. Отпустите кнопку мыши, когда указатель окажется над полем КодЧитателя. Появится диалоговое окно И з м е н е н и е связей (Edit Relation ships) (рис. 3.23).

Некоторые связи Access устанавливает автоматически.

90 Занятие 3. Создание таблии Рис. 3.23. Диалоговое окно изменения связей 6. В первой строке таблицы отображаются связанные поля. Установите флаж ки Обеспечение целостности данных (Enforce Referential Integrity), каскадное об новление связанных полей (Cascade Update Related Fields) и каскадное удаление связанных записей (Cascade Delete Related Records). Нажмите кнопку Создать (Create).

Окно закроется, а на схеме данных появится линия, соединяющая две табли цы. На стороне лодин стоит значок 1, а на стороне многие Ч со (рис. 3.24).

КодИздатя Поджигателя КодЧттателя Фамилия ДатэПолучения я ДатзВозврата Ч8СТВО ДатаБоэератаФакт ГодРождения Примечание Адрес Телефон Рис. 3.24. Связь типа лодин-ко-многим между двумя таблииами Обеспечение целостности данных Обеспечение целостности даипых означает систему правил, используемых для поддержания связей между записями в связанных таблицах, а также защиту от случайного удаления или изменения связанных данных. При установке со ответствующего флажка работа с данными будет подчинена следующим пра вилам.

Х Невозможно ввести в связанное поле подчиненной таблицы значение, отсут ствующее в связанном поле главной таблицы. Однако можно ввести пустое значение, показывающее, что для данной записи связь отсутствует.

Х Не допускается удаление записи из главной таблицы, если существуют свя занные с ней записи в подчиненной таблице.

Обеспечение иелостности данных Х Невозможно изменить значение ключевого поля в главной таблице, если су ществуют записи, связанные с данной.

Любая попытка выполнить действие, нарушающее одно из перечисленных пра вил, приведет к выводу на экран предупреждения, а само действие выполнено не будет. Флажки каскадное обновление с в я з а н н ы х полей (Cascade Update Related Fields) и каскадное удаление с в я з а н н ы х записей (Cascade Delete Related Records) поз воляют преодолеть указанные ограничения, сохраняя при этом целостность данных.

Если установлен флажок каскадное обновление с в я з а н н ы х полей (Cascade Update Related), то при попытке изменить значение связанного поля в главной таблице это значение будут также изменено во всех связанных таблицах, во всех за писях, содержащих это значение в связанных полях. Например, вы изменили артикул у какого-то вида товара в таблице Т о в а р ы, а этот артикул уже встре чался в записях в таблицах Заказы, Доставка, Склад и т. д. Значение именно это го артикула будет автоматически изменено во всех связанных записях этих таблиц.

Если установлен флажок каскадное удаление с в я з а н н ы х з а п и с е й (Cascade Delete Related Records), то при удалении записи в главной таблице будут автоматиче ски удалены все связанные записи в связанной таблице. Например, в только что определенной связи между таблицами Читатели и Формуляры мы установили этот флажок. Значит, при удалении из таблицы Читатели какой-то записи буду:

автоматически удалены все записи из формуляра этого читателя.

Это очень мощный аппарат Access, которым следует пользоваться, чтобы обеспечить корректность данных в таблицах базы данных. Однако очень осторожным нужно быть с флажком каскадное удаление связанных за писей (Cascade Delete Related Records). В данном случае, если вы реши ли удалить из таблицы данные о каком-то читателе, скорее всего, вас уже не будет интересовать, какие книги он читал. Поэтому связанные записи из таблицы Формуляр можно вполне обоснованно удалить. Но так бывает не всегда.

ЗАДАНИЕ Постройте самостоятельно связь между таблицами Издания и Формуляр (не ошибитесь в определении, какая из этих таблиц главная, а какая Ч подчиненная).

На схеме данных можно не только создавать связи, но и редактировать их. По пробуем отредактировать связь между таблицами МестаХранения и Издания. Эта связь существует, но для нее не установлена проверка ссылочной целостности, поэтому связь на схеме имеет другой вид. Дважды щелкните на этой связи (ли нии, соединяющей таблицы). Появится уже знакомое вам окно И з м е н е н и е с в я зей (Edit Relationship). Установите в нем два флажка обеспечение целостности д а н ных: (Enforce Referential Integrity), каскадное обновление с в я з а н н ы х полей (Cascade Update Related Fields). Флажок каскадное удаление с в я з а н н ы х записей (Cascade Delete Related Records) не устанавливайте, ведь вы не хотите, чтобы при удалении 92 Занятие 3. Создание таблиц записи о каком-то шкафе из базы исчезли все данные о книгах, находящихся в этом шкафу 1.

Установите или отредактируйте самостоятельно связи междутаблицей Изда ЗАДАНИЕ ния и справочниками Разделы, Города, Издательства.

У нас осталась не установленной только связь между таблицами Авторы и Изда н и я. Связь эта, как вы понимаете, многие-ко-многим, так как у каждой книги может быть несколько авторов, а с другой стороны, в библиотеке может быть много книг одного и того же автора. Как поступить в таком случае?

Чтобы реализовать такую связь, полагается ввести дополнительную таблицу, которая бы содержала ключи обеих таблиц. Такая таблица должна иметь два поля: КодАвтора и КодИэдания. Связь между таблицей Авторы и этой таблицей будет лодин-ко-многим, и связь между таблицей Издания и этой таблицей так же будет лодин-ко-многим. Таким образом, с введением новой таблицы (назо вем ее АвторИздание) связь многие-ко-многим* преобразуется в две связи лодин-ко-многим. Так как в этой таблице не может быть несколько записей, которые имели бы одни и те же значения в обоих полях, то эти поля будут яв ляться составным ключом таблицы.

ЗАДАНИЕ Создайте самостоятельно таблицу АвторИздание. Оба поля в ней должны быть числовыми. При этом по умолчанию будет установлен размер поля Длинное це лое (Long Integer). He меняйте значение этого свойства. Оно должно быть именно таким, чтобы правильно установились связи. Создайте для того и другого поля столб цы подстановок (можно воспользоваться мастером подстановок). Теперь добавьте таблицу АвторИздание в схему данных и установите связи с таблицами Авторы и Из дания.

Вы можете, не закрывая окно схемы данных, выполнить команду Окно > Библиотека: база данных (Window > Библиотека: Database) или просто на жать клавишу F11, чтобы открыть окно базы данных, и затем, уже известным способом, с помощью конструктора создать эту таблицу. Затем либо тем же способом, либо, щелкнув на кнопке Схема данных на панели задач, вернуть ся в окно Схема данных.

В результате вы получите примерно такую картину, как представленная на рис. 3.25.

Трудно, конечно, разобраться в такой паутине. Однако все таблицы легко пере мещаются мышью, если схватить заголовок и потянуть. Размеры таблиц можно также менять стандартным образом, потянув за границу. Еще немного времени, и картина будет совсем иной (рис. 3.26).

Правда, умная система перед удалением все-таки запросит у вас подтверждение уда Обеспечение иелостности данных КодИздаия * КодЧигателя ДатаПолучен Дат а Воз врат а т Рис. 3.25, Окно схемы данных КодИэдагмя КодЧпэтелп Код'-Мгателя ДатаПолучения Название Фамилия ДатаВозерата "одИздания Имя ДатаВозвратаФа^т <ол Издательства Отчество <одГорода ГодРэждемия iм Йдрес Издание Телефон КодМеста Дена ТипОбложки КодАвтора ДатаПокупки КодИздамп ЧислоСтраниц ТипИздания Заметки КоАвтара Иия Фамилия ГодРождения Го дС мер т и Месторождения Образование Фотография Заметки Рис. 3.26. Упорядочение расположения таблиц, на поле схемы данных Надеюсь, теперь вы видите, как ясно графически отображаются и сами табли цы, и связи между ними.

7. Закройте окно схемы данных.

94 Занятие 3. Создание таблиц Подведение итогов Итак, на данном занятии вы научились:

Х создавать таблицы базы данных тремя разными способами;

Х создавать столбцы подстановок для полей, которые являются внешними клю чами других таблиц;

Х создавать столбец подстановок, содержащий фиксированный список значе ний поля;

Х задавать ключевые и индексированные поля в таблице;

Х указывать условия правильности вводимых в поле данных;

Х с помощью мастера создавать маски ввода, упрощающие ввод данных в поле;

Х создавать схемы данных, отображающие таблицы базы данных и связи меж ду ними.

Хочется еще раз обратить внимание на то, как важно грамотно выполнить все процедуры создания и связывания таблиц, описанные в этом занятии. Поэтому не пренебрегайте советами и отнеситесь к этому этапу серьезно при создании любого приложения. В этом случае вам значительно проще будет создавать другие объекты: формы, отчеты, страницы доступа к данным.

ЗАНЯТИЕ Ввод и редактирование данных ТЕМА ЗАНЯТИЯ В процессе этого занятия вы узнаете:

Х как вводить данные и таблицы Access и изменять внешний этих таблиц;

Х как перемещаться по записям в таблице, изменять и удалят]., записи;

Х как копировать данные из других таблиц, в том числе находя щихся в другой базе данных Access или даже имеющих другой формат;

Х как импортировать данные из файлов других форматов;

Х что такое присоединенные таблицы и каковы особенности ра боты с ними.

96 Занятие 4. Ввод и редактирование данных Для выполнения упражнений данного занятия вам потребуется файл Библиоте ка, mdb, а также файлы из архива примеров 1. Поэтому вспомните, в какой папке они у вас находятся.

Ввод данных в режиме таблицы Существует несколько способов ввода данных в таблицы Access:

Х ввод записей в режиме таблицы;

Х ввод данных с помощью форм Access;

Х копирование данных из других таблиц;

Х импорт данных из внешних файлов;

Х присоединение внешних таблиц.

В упражнениях этого занятия мы познакомимся почти со всеми этими способа ми, кроме ввода с помощью экранных форм Ч их мы будем создавать на Заня тиях 8, 9 и 10.

Режим таблицы обеспечивает простой и быстрый способ ввода данных в табли цу, однако он удобен только в случае небольших таблиц, когда большинство по лей или даже все они видны на экране и количество записей тоже невелико.

Кроме того, нужно хорошо знать структуру таблиц. Формы обычно обеспечива ют ввод данных по одной записи, причем форма может быть сконструирована таким образом, что пользователь вводит данные одновременно в несколько таб лиц, даже не подозревая об этом.

Чтобы освоить режим таблицы, лучше использовать таблицы, уже имеющие за писи, поэтому откройте файл БиблиотекаДанные.тс1Ь демонстрационного приме ра. Этот файл аналогичен файлу Библиотека.mdb, созданному на предыдущем занятии, но все таблицы его заполнены данными.

Дважды щелкните на таблице Издания, чтобы открыть ее в режиме таблицы (рис. 4.1). В нижней части окна таблицы видно количество записей в таблице и номер текущей записи. В таблице примера 25 записей. Текущая запись помеча ется специальным значком (>) в области выделения (серая область слева). В те кущей записи располагается курсор ввода.

В окне отображается только часть таблицы. Чтобы просмотреть записи в табли це полностью, используйте полосы горизонтальной (внизу) и вертикальной (справа) прокрутки. Если таблица большая, для быстрого перехода в начало или в конец таблицы служат кнопки перемещения на нижней границе окна. На значение кнопок перемещения приведено в табл. 4.1. Однако кнопки перемеще ния на следующую и предыдущую запись в этом режиме обычно не использу ются.

Примеры вы можете найти на сайте издательства www.piter.com на странице, посвящен ной этой книге.

Ввод данных в режиме таблицы 1 Философия : "Утешение философией" и другие трактаты 1990..

2 Религия ;

Теорения преподобного Максима Исповедника Х 1Э [3 Религия !Творения преподобного Максима Исповедника : 1993-;

;

Чтения и рассказы по истории России А История :

:!?39;

...w&l ^.Художественная литературэ ;

Белая гвардия;

Мастер и Маргарита фвдр.....

6 Философия 1989;

:Рубай 7 Поэзия 8 ХудожестБенная литература '. Медный всадник J967".

9 Драматургия Драмы 10 Худржестввнная литература 'Африка 11. Философия 0 началзх \ Счастливые родители 12 Детская литература \99ЁГ 13.Детская литература : Мы ждем ребенка 14 Художественная литература Евгений Онегин '9??

15Х Художественная[литература П.1г10.Щ?." ?ЕУ*ие 16 Фантастика Понедельник начинается е субботу 17 Детектиеы ХСовременный французский детективный роман "1989" 18 Фантастика Оправдание ВЕЧНОСТИ 1994 * !

Х;

*: Рис. 4.1. Таблииа, открытая в режиме таблииы Таблица 4.1. Кнопки перемещения по записям таблииы Кнопка Описание Перемещение на первую запись таблицы Перемещение на предыдущую запись таблицы Перемещение на следующую запись таблицы Перемещение на последнюю запись таблицы Создание повой записи Добавление записи 1. Для добавления новой записи к таблице щелкните на кнопке создания но вой записи. Курсор переместится в конец таблицы и будет установлен в пер вом поле Счетчик ( A u t o N u m b e r ) новой записи.

2. В поле типа Счетчик (AutoNumber) ввод данных запрещен, поэтому перейдите в следующее поле, нажав клавишу Tab.

3. Для следующего поля (Раздел) у нас определен столбец подстановок, поэтому как только курсор попадает в это поле, справа появляется кнопка со стрел кой. Нажмите ее и в раскрывшемся списке разделов выберите нужный раз дел, например, История (рис. 4.2).

Выбранное значение отображается в поле Раздел записи, а в области выделе ния записи слева появился значок (карандаш), который означает, что запись редактируется. Одновременно появилось значение в поле К о д И з д а н и я Ч это отработал счетчик.

4 Зак. Занятие 4. Ввод и редактирование данных т Издания: таблице.- : ':

Ш*Ш Драмы 1990!;

9:Драматургия 1982|:

10;

Художественная литература.Африка 2000;

11 : Философия ' О началах 1999;

.

12 Детская литература Счастливые родители Мы ждем ребенка 1999' 13 Детская литература "1999:':

Евгений Онегин 14 Художественная литература Прощай оружие 1999-' 15 Художественная литература Понедельник начинается в субботу 1992;

' Ш.Фантастика 1989;

;

Современный французский детективный ромэн М. Детективы.Оправдание вечности 18! Фантастика 1991 19] Детская литература : Разговор с матерью 20: Психология : Нравственные основы жизни ! Вечера с Петром Великим 21'История 22;

История : Раздумья о России 1998' 23: Искусство :Поззиясадов : Избранная поэзия 24;

Поэзия 25;

Философия ;

0 небесах, о мире духов и об аде история История Психология Философия Детская литература Детективы ХМатематика Я Художественная литератур;

| ШМУВШИШЦШа Фантастика т Рис. 4.2, Выбор в раскрывающемся списке подстановки Если попробовать перейти на следующую строку, например, нажав клавишу 4, то на экране появится сообщение: Поле Издание.Название не может содержать значение Null, так как свойство Обязательное поле этого поля имеет значение Да.

Введите значение в это поле. (The field Издание.Название cannot contain a Null value because the Required property for this field is set to True. Enter a value in this field.)- Это отработала одна из проверок правильности ввода записи в табли цу, так как именно при переходе на следующую запись Access выполняет со хранение записи в таблице. Введите значение в поле Название.

Для перехода между полями одной записи нажимайте клавишу Tab или Enter. Для перехода в начало следующей записи Ч клавишу 4-и затем Ноте, 5. Введите год издания, при этом можно проверить, как работает проверка ло гического условия, заданного для значения этого поля. Введите, например, значение 98 или 2005, и вы увидите сообщение, которое сами задали: Необхо димо ввести 4-х значную цифру, не превышающую з н а ч е н и я текущего года!

Это очень удобное свойство раскрывающихся списков в Access. Нет необхо димости всегда раскрывать списки, можно просто начинать ввод данных в поле, и по первым совпадающим буквам будет подставлено нужное значе ние. Если в списке типов изданий есть два слова, начинающихся с буквы к, и первое подставленное слово не подходит,то вы должны вводить следу ющую букву, затем следующую, пока не подберется нужное слово.

Ввод данных в режиме таблицы 6. Вводите данные в остальные поля записи. Когда дойдете до поля Дата Покуп ки, появится маска ввода, заданная для поля даты. Введите цифры в те по зиции, которые обозначены символом подчеркивания.

7. Проверка условия на значение поля выполняется при переходе к другому полю или к другой записи. Если введенное значение не соответствует задан ному условию, на экран выводится сообщение, указанное пользователем, или стандартное сообщение, если пользователь не определил свое. Таким обра зом, вы не сможете переместить курсор в другое поле, пока не исправите значение.

8. Поле Т и п И з д а н и я тоже имеет столбец подстановки. Не раскрывая список, введите первую букву: к. Сразу же в поле будет подставлено значение:

книга.

9. Закончив ввод записи, перейдите на следующую строку. Если вы вводили дан ные в последнее поле записи, для этого достаточно тоже нажать клавишу Tab.

Именно при этом переходе произойдет сохранение записи в базе данных. Та ким образом мы проверили, как работают те механизмы, которые была заданы при определении структуры таблицы.

Редактирование записи Чтобы отредактировать существующую запись, достаточно поместить указа тель на поле, данные в котором необходимо изменить, ввести новые данные и нажать клавишу Tab для перехода на следующее поле. Окончательно данные в записи будут изменены только после перехода на следующую или любую дру гую запись. До тех пор, пока работа выполняется над одной записью, все изме нения можно отменить, нажав клавишу Esc. Отмена изменения в текущем поле производится также клавишей Esc.

ЗАДАНИЕ Попробуйте отредактировать некоторые записи в таблице Издания и отменить изменения с помощью клавиши Esc.

При необходимости внести изменения сразу в несколько записей, напри- мер, изменить место хранения ряда книг, используется запрос к базе данных специального вида Ч запрос на обновление. С такими запросами мы будем знакомиться на Занятии 7.

Удаление записи Чтобы удалить записи, нужно сначала выделить их, а затем нажать клавишу Delete. При этом Access запрашивает подтверждение, чтобы предотвратить слу чайное удаление (рис. 4.3).

Если вы попали в это поле из предыдущего, нажав клавишу Tab, то сначала маски не видно. Она появится, как только ы введете первую цифру. Если нужно ввести первые числа месяца, обязательно вводите первый 0.

1 00 Занятие 4. Ввод и редактирование данных Microsoft Office Aecesj Предлринл1ае1сянотшпка уделить следующее чисто записей 1, f ;

I.'.ч. г., Х,!Х-. "Л 1- Х - Х ! - ! '... - Х ' -.-.:;

i у..'!.Х ' ^m p:-'t.--;

e-ii-'f'y/.r'i н..-г.', i" s.м > ll ;

j Нет Рис.4.3. Диалоговое окно подтверждения удаления записей Выделение записей выполняется аналогично тому, как это делается в элек тронной таблице: щелкните на области выделения первой записи и,удержи вая кнопку, переместите указатель до последней выделяемой записи и от пустите кнопку.

1. Выделите в таблице И з д а н и я введенную новую запись или записи и удали те их.

Эти записи удаляются из таблицы без труда, так как не имеют еще связан ных записей в подчиненных таблицах, например, в таблице Формуляр. Одна ко если вы попробуете удалить какую-то другую запись о книге, которая уже выдавалась читателям, Access не позволит это сделать. Чтобы удалить за пись из главной таблицы, нужно сначала удалить все связанные с ней запи си в подчиненной таблице.

2. Закройте таблицу Издания.

Ввод данных с помощью копирования Ввод данных в таблицу можно осуществлять не только непосредственно с кла виатуры, но и с помощью команд копирования.

Скопируем данные из таблицы Разделы базы данных демонстрационного при мера БиблиотекаДанные.тёЬ в соответствующую таблицу новой базы данных Библиотека.mdb.

1. Откройте таблицу Разделы в режиме таблицы.

2. Запустите еще один экземпляр Access 2003 и откройте в нем базу данных Библиотека.mdb.

3. Выделите в списке таблиц Разделы и откройте ее тоже в режиме таблицы.

4. Удалите из нее все записи, если они там есть.

5. Переключитесь в базу данных БиблиотекаДанные.гг^Ь и выделите в таблице Разделы все записи (рис. 4.4).

Если только при определении сняли между этими таблицами не был установлен флажок каскадного удаления записей. Если же флажок каскадного удаления установлен, то уда ляться будет запись в главной таблице и вес связанные с ней записи в подчиненной таб лице.

Ввод данных с помошью копирования 1ОI gua Зст^вка Формат Цапнем at u;

'-'-- $ ''Х",, (1 sJ.'lM' ^ 1 История 2. Психология 3 Философия 4 Детская литература 5 Детективы Б Математика 7 Художественная литература 8 Фантастика 9 Драматургия 10 Религия 11 Искусство 12 Поэзия (Счетчик) Рис. 4.4. Копирование записей из другой таблииы Access 6. Скопируйте выделенные записи в буфер обмена, например, нажав комби нацию клавиш Ctrl+Ins или кнопку К о п и р о в а т ь (Сору) на панели инстру ментов, 7. Переключитесь в базу данных Б и б л и о т е к а. m d b и выделите первую строку в таблице Разделы.

8. Вставьте данные из буфера, нажав Shift+Ins или кнопку Insert (Вставить) на панели инструментов. Вы увидите сообщение: Предпринимается попытка вста вить следующее число записей: 12. Вставить записи? (You are about to paste record(s). Are you sure to want to paste these records?). Нажмите кнопку Да (Yes).

Записи из буфера будут вставлены в новую таблицу.

Разумеется, можно копировать не все, а только выделенные записи, и только в том случае, если типы данных для всех полей совпадают в обеих таблицах.

Обратите внимание, что значения поля КодРаздела не копируются из буфе ра. Так происходит потому, что это поле является счетчиком и заполняется автоматически при добавлении записей в таблицу. Значение счетчика не уменьшается, когда из таблицы удаляются записи. Этим объясняются про пуски, которые могут быть в таких полях. Счетчик всегда имеет значение, ко торое было в последней записи, и при вставке новой записи оно будет уве личено на 1.

1 02 Занятие 4. Е!1вод и редактирование данных Вы не сможете установить счетчик в определенное значение, но можете сбросить его, чтобы обеспечить нумерацию кодов с 1 или со значения по следней существующей записи. Для этого нужно выполнить сжатие базы данных. Выполните команду меню Сервис > Служебные программы > Сжать и восстановить базу данных (Tools > Database Utilities > Compact and Repair Database).

Аналогично копируются данные не только из других таблиц Access, но и из таб лиц других форматов, например, Excel.

1. Откройте файл Издательства.xls из демонстрационных примеров. Выделите в нем строки со 2-й по 21-ю в столбцах А и В и скопируйте их в буфер.

2. Откройте таблицу Издательства в базе данных Библиотека.mdb. Выделите в ней первую свободную строку (рис. 4.5).

-! :1'одИздетепьство ;

Издательстес te.

I ': Х и I И!

Х i-:,-., I...-- -,.

I -' !ХХ Щ j'l I. i I 1.<>.Х!.

f |r lf : i б ив Рис. 4.5. Вставка данных из таблицы Excel Перед копированием не обязательно удалять все уже существующие записи из таблиц Разделы или Издательства, но если в новых записях окажется какой-ни будь раздел, совпадающий с имеющимся в таблице, будет выдано сообщение об ошибке, и соответствующая запись не будет вставлена. Действительно, в справочнике разделов не должно быть повторяющихся значений, поэтому поле Раздел проиндексировано таким образом, что в нем не разрешены совпа дающие значения (см. свойства этого поля). При этом все ошибочные записи попадут в специальную таблицу Ошибки вставки (Paste Errors), которая добав ляется в список таблиц. Вы можете открыть эту таблицу и посмотреть эти запи си. Пример таблицы Ошибки вставки представлен на рис. 4.6.

Ввод данных с помощью копирования 1 3. Вставьте из буфера данные. Выдается то же сообщение о попытке добавле ния записей, и все записи вставляются в таблицу Издательства.

щ Ошибки вставки : таблица Рис. 4.6. Таблииа ошибок вставки обмена (2 из 24) Чтобы вновь показать эту область задач, выберите е меню "Правка" пункт "Буфер fice" или дважды нажмите Ctr!+C Рис. 4.7. Область задач буфера обмена с 2 блоками информации Буфер обмена в Microsoft Office 2003 позволяет собирать до 24 скопирован ных блоков. Выполните команду меню П р а в к а > Буфер обмена Office (Edit Office Clipboard). Появится область задач Буфер обмена (Clipboard) (рис. 4.7).

С помощью этой панели удобно работать с содержимым буфера обмена. Все элементы, скопированные в буфер, отображаются на панели в графическом виде. При копировании двадцать пятого блока на экране появится предупре ждение о том, что буфер обмена ограничен в объеме и следующая скопирован ная информация может быть помещена в буфер обмена только путем уда ления первого вставленного элемента. В ответ на предупреждение можно 1 04 Занятие 4. Ввод и редактирование данных нажать кнопку ОК, что приведет к удалению первого элемента, смещению всех элементов вперед и добавлению на последнее место только что скопирован ной информации. При выборке информации из буфера вставляется послед ний скопированный или вырезанный блок. Чтобы вставить любой из два дцати четырех блоков буфера, необходимо щелкнуть правой кнопкой мыши на значке, соответствующем этому блоку и выбрать в контекстном меню ко манду Вставить (Paste) или просто дважды на нем щелкнуть.

Скопируйте из файла БиблиотекаДанные.тсШ справочник Города.

ЗАДАНИЕ При заполнении данными новой базы данных путем копирования данных или путем импорта из других баз данных, о котором мы будем говорить да лее, сначала нужно заполнить справочники. Только после этого можно на чинать вводить данные в основные таблицы, уже используя эти справочни ки для ускорения и облегчения ввода.

4. Закройте файл БиблиотекаДанные.тсШ. Файл Библиотека.mdb должен остать ся открытым для дальнейших упражнений.

Импорт данных Вторым удобным способом перенесения данных является импорт. Импортиро вать данные можно из файлов различных форматов: другой базы данных Ac cess, файла Excel, текстового файла, файла формата.dbf, веб-страниц и многих других.

В упражнениях этого занятия мы будем импортировать таблицы из файла Биб лиотекаДанные.тёЬ и из файла Excel, TO есть попробуем выполнить самые попу лярные операции. Если вам придется столкнуться с необходимостью импорта данных из других форматов, вы сможете сделать это с помощью навыков, полу ченных на данном занятии.

Импорт данных из таблицы Excel Сначала попробуем импортировать данные из файла Аеторы-xLs, который входит в демонстрационный пример1.

1. Выберите команду Файл > Внешние данные > Импорт (File > Get External Data V Import). Появится диалоговое окно Импорт (Import) (рис. 4.8).

2. Как и при открытии файла, по умолчанию в окне отображается содержимое папки Личная (Personal) или Мои документы {My Documents). Выберите в списке папку, в которую скопировали файлы демонстрационного примера.

Примеры иы можете найти на сайте издательства www.piter.com па странице, посвящен ной этой книге.

Импорт данных 1 ^ Mil Pictures Хj 6 иб nnoreKa.mdb jj аказы на работы!.mdb док с- Х ы ст, ad н,, \ документы Мой <.,;

-ты: Х [i Имя файле:

Г :Х..-Х '.-Ч. -.,. л Microsoft Office Access (*,mcb;

*.eclpj*,mde;

*.mde;

*.acFe)l Microsoft Office Access (*,mdbj*,adp;

*,rnda;

*.mde;

*,ade) dBASE 5 (*.dbf) dBASE III (*.dbf) dBASE IV (*.dbf) JExchanged Рис. 4.8, Диалоговое окно импорта 3. В списке Тип файла (Files of type) выберите Microsoft Excel (*.xls) (по умолча нию показываются файлы Microsoft Access). В окне отобразятся все файлы *.xU.

Обратите внимание на длинный раскрывающийся список форматов файлов.

Он как раз и содержит все типы файлов, которые возможно импортировать в Access.

4. Выберите среди этих файлов Авторы-xls и нажмите кнопку Импорт (Import).

Запускается мастер импорта электронных таблиц и выводится первое окно мастера (рис. 4.9).

5. В нижней части окна показан образец данных импортируемой таблицы. Про крутите эти данные и убедитесь, что таблица имеет те же поля, что и табли ца Access, в которую нужно импортировать данные (кроме поля КодАвтора, которого обычно в таблицах Excel не бывает). Нажмите кнопку Далее (Next).

6. В следующем диалоговом окне установите флажок Первая строка содержит за головки столбцов (First Row Contains Column Headings) (рис. 4.10). Вы увидите, что первая строка на рисунке превратилась в заголовки столбцов. Снова на жмите кнопку Далее (Next).

7. Появится новое окно мастера. Установите в нем переключатель, указываю щий, что вы хотите сохранить данные в уже существующей таблице, а в рас 1 06 Занятие 4. Ввод и редактирование данных Ш Импорт электронной тавямцЫ;

."- :-, :, /^Сг г г Х ' |, |.i.. -. : Х - Ш Х 1 /Х'.',. Х' - "од Рождения 7 од Смерти Чес то F фамилия 4мя. Боэций 480 им.: Накеим Исповедник S80 Палест I Серией Соловьев 1820 1оск.вг |Лихаил Булгаков 1391 Киев 6 Тлатон -427 Афины - *1J Рис. 4.9. Выбор объекта для импорта Ш Импорт электронной таблицы тот фпй*ок аля ncnont.so&sntiq данных из пдавом стр=жи i содержит saronoBichuii-o iuu

."Х..Х i Фамилия Х - -:. -- Х Год Рожцг кия - ГсдСнер^м d HecTof Зоэций 180 1 Максим Исповедник 580 Палест. Сергей Соловьев 1820 1879 Иосквэ 1 Них аил Булгаков 1891 Киев 1 QДП 'л Платон -427 Афины -3- тi ~ Александр 1ушкин 1799 1837 Москва _ ! i Х- Х 'Х Х j Отмена 0' Да пес >..,. т Рис. 4.10. Определение заголовков столбиов крыпающемся списке выберите имя таблицы Авторы (рис. 4.11). Нажмите кноп ку Далее (Next).

8. В последнем окне мастера нажмите кнопку Готово ( F i n i s h ).

9. Откройте таблицу Авторы и убедитесь, что все строки из таблицы Excel появились в базе данных. При этом автоматически установились значения в поле КодАвтора.

Импорт данных В данном случае таблица Excel имеет только один лист;

если их несколько, то список листов был бы виден в верхней части окна, и нужно было бы вы брать, какой лист предстоит импортировать. Кроме того, как видно из окна, можно импортировать не только лист целиком, но и именованный диапазон ячеек электронной таблицы.

При импорте в уже существующую таблицу Access очень важно, чтобы име на столбцов и типы данных в этих столбцах совпадали у обеих таблиц. Кро ме того, импортируются всегда все столбцы листа Excel (или именованного диапазона). Если таблица Excel имеет другую структуру, нужно выбрать пе реключатель в новой таблице (In a New Table). Тогда будет создана новая таблицы Access той же структуры, что и таблица Excel и в нее импортирова ны все данные. Затем можно путем копирования (например, только нужных столбцов) перенести данные из одной таблицы Access в другую.

Ш Импорт электронной таблицы и данны* дшусвдется е ноеой'ияи в с & в суи^ст^щем таблице;

' ]Авторы jj.

щ [ГодРожаения ГоВСЙефТЯ фамилия : " Х 480 Рим Зоэций 530 562 Палест Таксим Исповедник :ергей 1820 Москве Соловьев 1891 Киев Булгаков *J Михаил -427 ^347 Афины Платон 1799 Яоег.ва Пушкин 1 Александр.

т " -':*.

' Отмени | < [ 1;

нзаД | Дй^ч'- > | Г<"'Тс*о : : :

. 'У ;

."Х., ;

- i Х - - Х. - ' ' :Х Х' ' '-' ' "Х ;

Рис. 4.11. Определение имени таблииы Импорт таблицы Access Импорт таблиц из другого файла Access выполняется аналогично описанном;

.' импорту из таблицы Excel. Только импортируется всегда таблица целиком, тс есть нельзя импортировать только данные и существующую таблицу. Если в базе данных уже существует таблица с тем же именем, что и импортируе мая, создается новая таблица, которая будет иметь то же имя, но с добавлен ной в конце цифрой 1. Вы можете убедиться в этом, если попытаетесь импор тировать одну из таблиц базы данных демонстрационного примера, например МестаХранения.

I 08 Занятие 4. Ввод и редактирование данных 1. Выберите команду Файл > Внешние данные Импорт (File Get External Data > Import). Появится диалоговое окно Импорт (Import) (см. рис. 4.8). В нем теперь ото бражается папка, содержащая файлы демонстрационного примера.

2. В списке Тип файла (Files of type) выберите Microsoft Access (*.mdb,*.adp,*.mdw, *.mda, *.mde, *.ade).

3. Выберите в списке файл БиблиотекаДанные.тоЪ и нажмите кнопку Импорт (Im port). Появится диалоговое окно Импорт объектов (Import Objects).

4. Нажмите кнопку Параметры (Options), чтобы расширить окно (рис. 4.12). Диа логовое окно Импорт объектов используется для импорта любого объекта Access.

В нем несколько вкладок. По умолчанию открыта вкладка Таблицы (Tables).

В нижней части окна открылись переключатели и флажки, которые позво ляют определить параметры импорта. При импорте таблиц есть возможность импортировать только структуру таблицы или структуру вместе с данными (только данные импортировать нельзя). По умолчанию импортируется таб лица вместе с данными.

5. Выделите в списке таблицу МестаХраненил и нажмите кнопку ОК. В списке таблиц базы данных появится новая таблица МестаХранения!.

Импорт объектов Таблицы 1 Запросы Формы Отчеты Страницы i Макросы j Моду.

АвторИздэние QK Авторы Города "Отмена Издания Издательства ХзМчделить всё.

МестаХранения Разделы Формуляры Очистить see Читатели -.Импорт таблиц ~: -Импорт Импорт запросов а данных **Х*. Ешуктурэ и данные.** как загрбсрв I. Г~:змёню и панели С только структура.f как таблиц Рис. 4.12. Импорт таблиц, из файла Access 6. Откройте.новую таблицу в режиме таблицы и щелкните на маленьком сером прямоугольнике в левом верхнем углу, где сходятся строка заголовков столб цов и столбец выделения записей. Будут выделены сразу все записи таб лицы.

7. Скопируйте выделенные записи в буфер, откройте таблицу* М е с т а Х р а н е н и я и вставьте в нее записи из буфера.

8. Теперь таблицу МестаХранения! можно удалить.

Присоединение внешних таблии 1 Присоединение внешних таблиц Помимо импорта данных, Access обладает возможностью устанавливать связи с внешними таблицами, в том числе и с таблицами, отличных от Access форма тов. Это дает возможность работать с данными, расположенными в других ба зах данных или таблицах так, как если бы они находились в вашей базе данных.

Попробуем установить связь со списком новых поступлений, который содер жится в файле Н о в ы е поступления.xls.

1. Щелкните правой кнопкой мыши на свободном поле окна базы данных и вы берите в контекстном меню команду Связь с т а б л и ц а м и (Link Tables). Появится диалоговое окно Связь (Link), аналогичное окну Импорт (Import).

2. Выберите в этом окне папку с файлами демонстрационного примера и тип файла Microsoft Excel (*.xls). Затем выделите файл Новые поступлениями и на жмите кнопку Связь (Link).

3. Запускается мастер связывания электронной таблицы (Link Spreadsheet Wizard).

Первые шаги мастера аналогичны шагам мастера импорта-электронных таб лиц. Нужно указать лист Excel, с которым будет устанавливаться связь. Вы берите в списке лист Октябрь и нажмите кнопку Далее (Next).

4. Оставьте установленный по умолчанию флажок Первая строка содержит заго ловки столбцов (First Row Contains Column Headings) и нажмите кнопку Далее (Next).

5. На последнем шаге в поле Имя связанной таблицы (Linked Table Name) введите имя таблицы Новые поступления и нажмите кнопку Готово (Finish).

В списке таблиц появится новая таблица Новые п о с т у п л е н и я. Значок этой табли цы отличается от всех остальных значков Ч он указывает на формат таблицы.

Стрелочка указывает на то, что это внешняя таблица, то есть находится не в файле базы данных (рис. 4.13).

Ш Библиотека : йаза данных {чюрмат Создание таблицы в режиме конструктора Читатели ij j j| Создание таблицы с помощью мастера Таблицы Х 1Щ Создание таблицы путем ввода данным [П Авто рИ здание 3 Авторы '3 Городе цЗ Издания Ш :-(Х !, (Х " :Х L3 Издательства 3 МестаХранений >j|jj у iЩ| Ошибки вставки СЗ Разделы 1 Формуляры Рис. 4.13. Связывание с табдииеи Excel 11 0 Занятие 4. Ввод и редактирование данных Если в базе данных уже существует таблица, имя которой совпадает с име нем файла ExceL выдается вопрос: Перезаписать существующую таблицу?

При отрицательном ответе связь установлена не будет.

Основным отличием связанных таблиц от импортированных является то, что они находятся вне файла базы данных Access, поэтому изменить их структуру невозможно. При попытке открыть такую таблицу в режиме конструктора бу дет выдано сообщение об этом. В остальном работа с ними ничем не отличается от работы с таблицами, которые хранятся в текущем файле базы данных.

Можно изменять структуру только локальных таблиц, то есть тех, которые размещены в данном файле. Если вы изменили структуру таблицы в файле базы данных, например, изменили длину или тип поля, то, чтобы эти измене ния отразились в базе данных, в которой эта таблица является внешней, не обходимо обновить связь с этой таблицей. Для этого можно использовать Диспетчер связанных таблиц, который вызывается командой Сервис > Служебные программы Диспетчер связанных таблиц (Tools > Database Utili ties > Linked Table Manager), либо просто удалить ее и присоединить еще раз. При этом не беспокойтесь Ч удаляя связанную таблицу из окна базы данных, вы просто удаляете связь с этой таблицей, сама же таблица не уда ляется.

Второе, о чем нужно помнить, если вы установили связь с внешними таблица ми: при перемещении этих таблиц в другую папку связь нарушается, так как при установке связи сохраняется путь к таблице. Поэтому необходимо устано вить связь заново. Если это одна таблица, можно просто удалить ее из окна базы данных и вновь присоединить. А если переместили файл. mdb, в котором находится много внешних таблиц, то лучше также воспользоваться Диспетче ром связанных таблиц.

0 работе с Диспетчером связанных таблиц см. раздел справки Microsoft Office Access 2003 Просмотр, обновление и изменение имени файла и пути к связанной таблице в базе данных Microsoft Access в папке Работа с данными Внешние данные > Импорт и связывание данных и объектов (Working with Data > External Data >Х Importing and Linking Data or Objects).

Установка условия на значения записи Мы уже устанавливали условия на значение поля в таблице и проверяли, как Access реагирует на эти условия. Однако Access позволяет устанавливать усло вия не только на значения одного поля, но и на значение записи. Условие на значение записи проверяется при сохранении записи и обычно используется для проверки соотношений полей. Например, при вводе записи в таблицу Авто ры можно проверять, что дата рождения не превышает дату смерти.

Установка условия на значения записи 1. Откройте таблицу Авторы в режиме конструктора.

2. Щелкните правой кнопкой мыши на заголовке окна конструктора. Появится контекстное меню, в котором нужно выбрать команду Свойства (Properties) (рис. 4.14).

Режим хабл Счетчик Сводная таблица Текстовый Текстовый Сводная диаграмма Дата/время Схемаданных...

Месторождения Текстовый Образование Текстовый Еырезать ДагаСмерти Поле объекта Фотография Копировать Заметки Поле MEMO" npACfeHQBKa Д чинное целое >?Х -i ':' '?Х 'Последовательные -'.../ ;

| Кол автора ' - : Индвшфован'ибй-Лйпе;

Х/';

Да (Совпадения не л опускаются) ;

Дг;

я ";

Рис. 4.14. Контекстное меню в режиме конструктора таблии 3. Появится диалоговое окно Свойства таблицы (Table Properties) (рис. 4.15).

лил^тр. ;

>,.... [Двто] |0ем _ йысота подт ;

Нет"^ {С лева направо Рис. 4.15. Диалоговое окно свойств таблииы 112 Занятие 4. Ввод и редактирование данных Первое поле в свойствах таблицы - Описание (Description). Следующие два поля, Условие на значение (Validation Rule) и Сообщение об ошибке (Validation Text), позволяют ввести выражение и текст сообщения аналогично соответствую щим свойствам поля таблицы.

4. Введите в качестве логического условия на значение следующее выражение:

[ГодСмерти]>[ГодРождения], а в качестве сообщения об ошибке: Введите пра вильно годы рождения и смерти писателя.

5. Закройте диалоговое окно Свойства таблицы (Table Properties) и переключите таблицу в режим ввода данных, для чего нажмите первую кнопку на панели инструментов. Эта кнопка Вид (View) |J|fM позволяет быстро переключать два режима работы с таблицей.

6. Введите запись в таблицу и проверьте, как работает установленное условие.

Помните, что в данном случае проверка условия выполняется при сохране нии записи.

7. Закройте базу данных Библиотека.mdb. Для остальных упражнений этого за нятия вам понадобится база данных из демонстрационного примера Библио текаДанные.[ЫЬ 1.

Отображение подчиненных таблиц 1. Откройте базу данных БиблиотекаДанные.тЬЬ. Этот файл содержит все таб лицы, которые вы создавали на предыдущих занятиях, но уже заполненные данными.

Если таблица имеет подчиненные таблицы, то между областью выделения записи и первым столбцом таблицы существует узкий столбец, в котором для каждой записи отображается значок плюс (--).

При наличии одной подчиненной таблицы щелчок на значке открывает часть подчиненной таблицы, содержащей только записи, связанные с записью в глав ной таблице. Значок плюс при этом меняется на минус.

При наличии нескольких подчиненных таблиц щелчок на значке плюс от крывает диалоговое окно Вставка подтаблицы (Insert Subdatasheet) со списком подчиненных таблиц для указания имени таблицы.

2. Откройте таблицу Авторы и убедитесь, что в ней существует такой столбец.

Щелкните на значке плюс у любой строки таблицы. Появляется вложен ная таблица, в которой отображаются значения связанного поля, в данном случае Ч названия книг этого автора, имеющихся в библиотеке. Таким спо собом можно открыть подчиненные записи для любого автора (рис. 4.16).

3. Откройте таблицу Издания и щелкните на значке плюс. Появилось диало говое окно Вставка подтаблицы (Insert Subdatasheet) (рис. 4.17).

Примеры вы можете найти на сайте издательства www.piter.com на странице, посвящен ной этой книге.

Отображение подчиненных таблиц !Боэций 525 Рим Х Школа it 580;

Максим Испов 662/Палестина |Хрисрп<Н| 1820.

:Соловьев 1879 Москва ХМосков!

Чтения и рассказы по истории России !КиевсШ [ 1940 Киев Белая гвардия;

.Мастер и Маргарита 51 : Платон -347?Афины j Учился, ;

6: Александр Пушкин 183/Москва Евгений Онегин Медный всадник 1123:Нишапур т I Учился ;

fj :403;

Афины.

Рис. 4,16. Отображение подчиненной таблицы вставка подтаойикы Paste Errors АвтсрИэдамие Авторы "орода Издательства ЧестаХранения Рис. 4.17, Диалоговое окно вставки вложенной таблицы 4. Выберите в списке таблицу Формуляр и нажмите кнопку ОК. На экране ото бразилась вложенная таблица со связанными записями из таблицы Формуляр.

В результате прямо в таблице Издания можно посмотреть, кто из читателей брал это издание из библиотеки.

5. Выберите команду Формат > Подтаблица > Развернуть все (Format > Subdatasheet > Expand All). Развернутся подчиненные записи для всех записей основной таб лицы (рис. 4.18).

6. Обратите внимание, что Б режиме отображения подтаблицы в каждой вло женной таблице последняя строка пустая (точнее, R ней отображаются только I14 Занятие 4. Ввод и редактирование даиных значения по умолчанию), а в области выделения она помечена специальным значком Ч звездочкой (*). Это означает, что в подчиненную таблицу можно добавлять новые записи1.

Утешение философией и другие трактаты Т в о р ен и я прел о до 6 н о го_М а кс и и а И с no s e д н и к а 2 Религия Вольман Наталья Микай/ :35.09.2000| 02.10.2000 15.10.2000!

3;

Религия Творения преподобного 1у1зксима Испоеедника 30.10.2000:

Бушманова Ирина Влади 125.09.2000 02.10.2000;

"bi".i 1.2000!' Игначенко Наталия Влад1 Х15.10.2000! 30.10. 4 История Х Чтения и рассказы по истории России - ^;

^. урэдшждеш.'Х-Х' * 5 Художественная л^ература _ Белая гвардия;

Мастер и Маргарита "' " Рис. 4.18. Развернутые записи полтаблицы 7. Командой Формат > Подтаблица > Свернуть все (Format > Subdatasheet > Collapse All) можно одновременно свернуть все подчиненные записи.

Настройка внешнего вида таблиц В Microsoft Office Access 2003 существует понятие макета таблицы. Макет таблицы - это вид, в котором данные отображаются в окне в режиме таблицы.

По умолчанию формируется уже знакомый стандартный макет таблицы, но Access позволяет его изменить. При этом можно изменить его для всех таблиц базы данных, а можно настроить каждую таблицу индивидуально. Чтобы изме нить макет для всех таблиц, нужно изменить параметры Access с помощью ко манды Сервис > Параметры (Tools > Options).

Для изменения внешнего вида одной таблицы используются команды меню Формат (Format).

1. Выберите команду Формат Режим таблицы (Format > Datasheet)2. Появится диа логовое окно Формат таблицы (Datasheet Formatting) {рис. 4.19), Элементы этого окна позволяют изменить вид таблицы.

Редактировать и удалять записи в подчиненной таблице тоже можно.

Это возможно, только если на экране открыта таблица в режиме таблицы. У вас сейчас в режиме таблицы должна быть открыта таблица Издания.

Настройка внешнего вида таблиц Формат таблицы Оформление Х Линии се тки М he r;

!f..ii-.r.J Р по вертикали,;

|.

. Р,.

(. I.. I..;

*.;

i,. л.... Ffu {Граница таблицы * Сплошная линия г Рис. 4.19. Диалоговое окно форматирования таблииы 2. Установите, например, переключатель приподнятое (Raised) в группе Оформ ление (Cell Effect). Наблюдайте в поле Образец (Sample), как при этом изме нится вид таблииы. Можно убрать линии сетки и изменить их цвет, изме нить цвет фона, вид границы и линий.

Команда Формат > Шрифт (Format > Font) выводит на экран стандартное окно настройки шрифта, что позволяет выбрать нужный тип и размер шрифта, Вместо команд меню форматирования можно использовать панель инстру ментов Формат (режим таблицы) (Formatting (Datasheet)) (рис. 4.20). По умолчанию эта панель инструментов не отображается. Чтобы ее отобразить, выберите команду Вид > Панели инструментов > Настройка (View > Tool bars > Customize). В диалоговом окне Настройка (Customize) на вкладке Панели инструментов (Toolbars) установите флажок Формат (режим таблицы) (Formatting Datasheet) (рис. 4.21). Нажмите кнопку Закрыть (Close).

-:ю -:: ж к ч ХAnal ;

Код^етора Рис. 4.20. Панель инструментов форматирования 3. Высота строк таблицы легко регулируется путем перетаскивания мышью нижней границы строки. Подведите указатель к нижней границе первой строки в области выделения. Он должен превратиться в двунаправленную стрелку. Протащите границу вниз. Таблица может выглядеть так, как пока зано на рис. 4.22.

116 Занятие 4. Ввод и редактирование данных ГЬчХ'.пыИ! ч ХХХ'ХХ-> п'.Х":

Предварительный просмотр "~ Работа с исходным текстом Х Разметка страницы ?

Режим формы i.. Сводная диаграмма.;

Сводные таблицы Связь Служебная программа Служебная программа ?i Строка меню f? Таблица в режиме таблицы ""фильтр [?;

Формат (режии таблицы) П Формат (сводная таблица или диаграмм:

^ ~ Формат (страница) Г";

Формат (форма/от чет) Рис. 4,21. Диалоговое окно настройки И..гл,й?дни. Ш. "rj hl !

i i^ ', ^ -кип Л М.:1П(П1я iv.TOfVH 1 f: >ан гвардий;

I | | гчпДНЧ^, || Й | "L..

Рис. 4.22. Изменение внешнего вилатаблииы Все строки таблицы всегда имеют одну и ту же высоту, поэтому изменение высоты распространяется сразу на все строки таблицы.

4. Аналогично можно изменить ширину любого столбца таблицы. Подведите указатель к правой границе столбца Издательство в области заголовка так, чтобы указатель превратился в двунаправленную стрелку, и перетащите гра ницу вправо, пока не получите нужную ширину.

Настройка внешнего вида таблии 1 I Самый быстрый способ установить ширину столбца так, чтобы были видны полностью все данные и заголовок, Ч подвести указатель к правой границе столбца в области заголовка и дважды щелкнуть правой кнопкой. Это соот ветствует установке ширины столбца По ширине данных (Best Fit) в диало говом окне Ширина столбца (Column Width) (рис. 4.23), которое можно ото бразить, выбрав команду Формат > Ширина столбца (Format > Column Width).

Рис. 4.23. Диалоговое окно ширины столбиа Если таблица широкая и не все столбцы помещаются на экране, можно скрыть некоторые столбцы, оставив самые важные 1.

5. Выделите столбец Издательство в таблице Издания, щелкнув на его заголовке.

6. Выберите команду Формат > Скрыть столбцы (Format t Hide Columns) (рис. 4.24).

Фориат Ц\$зукх1 CJJJSHC Окно Ш ШРиФт Режим таблицы..

. у Высота строки...

! т Издания : таблица Х-'ХХС,;

Ширина столбца..

.. Переименовать столбец | 1 Фило.;

^ * J Скрыть столбиы Х '.^ Отобразить столбцы...

ffl 2 Религия Х.?'= Закрепите столбцы ffij" 3. Релягия J Освобоаить все столбцы ;

>" Поатаблица S3. 4 Истчри.н Х Ш. 5 Худ^жес^те Ш;

6 'Оилософи Ш. ' 7 Поэзия Ш;

8 Художесп Х)_ Э1лы ЛЫП ~А Рис. 4.24. Команда скрытия столбиов Так обычно делают при просмотре таблицы. При вводе данных лучше видеть tscc столбцы.

118 Занятие 4. Ввод и редактирование данных Скрыть столбец можно также, перетащив мышью правую границу столбца к левой так, чтобы они превратились в одну линию.

7. Чтобы вновь отобразить скрытый столбец, выберите команду Формат > Отобра зить столбцы (Format t Unhide Columns). Появляется диалоговое окно Отображение столбцов (Unhide Columns) (рис. 4.25).

Отображение стоябоОВ ЩвЙЯШГ"* D Раздел и Название lyii Год издания Wi Издательство [5S Место публикации ИЗ Том f?i Издание I?! Место хранения 3?!Цена (?) Тип обложки и? Дата покупки Рис. 4.25. Диалоговое окно отображения столбиов 8. В этом окне флажки установлены против всех столбцов, которые отобража ются на экране. Установите флажок у строки Издательство и нажмите кнопку Закрыть (Close), Скрытый столбец Издательство вновь появляется на экране.

9. Закройте таблицу Издания. При этом появится диалоговое окно с вопросом, хотите ли вы сохранить изменения макета. Ответьте Нет (No).

Стоит рассмотреть еще одну полезную возможность: закрепить столбцы таб лицы.

1. Откройте таблицу Авторы.

2. Скройте столбец КодАвтора, который не очень интересен и заполняется авто матически.

3. Выделите два столбца: Имя и Фамилия.

4. Выберите команду Формат * Закрепить столбцы (Format > Freeze Columns), Теперь при прокрутке таблицы вправо столбцы Имя и Фамилия будут посто янно отображаться в левой части таблицы (рис. 4.26).

5. Для освобождения закрепленных столбцов необходимо выбрать команду Формат V Освободить все столбцы (Format t Unfreeze All Columns).

6. Закройте таблицу Авторы.

7. Осталось посмотреть, как настроить одновременно вид всех таблиц базы данных.

Настройка внешнего вида таблиц I '* ;

Боэций ;

Рим Школа в Равенне ХМаксим Испов Палестина Хрисопольский монастырь Москва ;

Московский университет, философский ф;

т : Сергей Соловьев ;

Булгаков Киев ;

Киевский университет, медицинский факул;

Михаил Афины ;

Учился у Капликла, Элихарма. Сократа I Платон ;

Александр | Пушкин Москва : Царскосельский Лицей Юмар !Хайям Нишапур ;

Учился в Нишапуре, Балхе и Самарканде' Афины ^ Учился у Лампра и Эсхила ;

Софокл ХФранческе- = Петрарка Ареццо !Болонский университет Александрия : Огласительная школа в Александрии ;

0риген : Дм игр и и i Лихачев Санкт-Петербург Санкт-Петербургский университет ;

Эрнест :Хэмингуэй ;

Франциск :.Вейс Иверден, Швейцария Адам Мицкевич Новогрудкэ, Белоруссия ^Бильненский университет Эмануэль | Сведенборг Стокгольм ^Михаил Пыляев 'нивепситет lil -. ::Д.,-.

Рис, 4.26. Закрепление столбиов таблицы 8. Выберите команду Сервис > Параметры (Tools > Options). Появится диалоговое окно Параметры (Options).

9. Раскройте вкладку Режим таблицы (Datasheet) (рис. 4.27). На ней вы видсте параметры форматирования таблицы, которые мы рассматривали в преды дущих упражнениях, но все установленные в этом окне параметры действу ют на все таблицы базы данных.

10. Закройте окно Параметры (Options) и балу данных БиблиотекаДанные.тс1Ь.

йругле 1 междунарадные ;

.. |..Проверки ошибок Х. |.- С^фографк" ;

j -,[..Д.. I е>м j C'.iu-i" j :.,..!- !| -м ' "Л I белыИ с ер-бри Li;

, i и Офориг^ен! ёэ|Ф;

й | ^щгйафге й.. " 1 [обо'ЧНЬЙ ] JJ Г подзда*1^ут1=м Г" E,ypoл Отображать №арт-ти'н s tawwusx J Car.cs! j Рис. 4.27. Настройка параметров форматирования таблицы 1 20 Занятие 4. Ввод и редактирование данных Подведение итогов Итак, на данном занятии вы научились:

Х работать с таблицами в режиме таблиц: добавлять, изменять и удалять за писи;

Х вводить данные с помощью копирования из одной таблицы в другую;

Х изменять внешний вид таблиц: шрифт и оформление, фон и линии сетки;

Х изменять ширину столбцов и высоту строк, прятать лишние столбцы и за креплять те, которые должны отображаться всегда при прокрутке таблицы;

Х импортировать данные из других баз данных Access и таблиц Excel;

Х устанавливать связь с таблицами, расположенными в других файлах Access и на листах Excel.

ЗАНЯТИЕ Поиск и сортировка данных ТЕМА ЗАНЯТИЯ На этом занятии вы узнаете:

Х как отсортировать таблицу по нужному столбцу;

Х как выполнить поиск нужной записи;

Х как отобрать группу записей, удовлетворяющих заданному условию:

Х как создать, сохранить и повторно использовать фильтр, со стоящий из нескольких логических условий;

Х как напечатать таблицу или группу отобранных записей;

Х как экспортировать отобранные записи н другие файлы;

Х как разослать данные из таблицы Access по электронной почте.

1 22 Занятие 5. Поиск и сортировка данных Для выполнения упражнений данного и следующего занятии вам Потребуется файл БиблиотекаДанные.тсШ. Откройте его перед началом занятия.

Сортировка данных в таблицах На предыдущем занятии вы научились вводить данные в систему. Основная цель этого занятия Ч научиться находить интересующие данные и выводить их в нужном формате.

Таблицы могут содержать огромное число записей, и хорошая СУБД должна обеспечить возможность быстро и легко найти и отобрать среди них нужные.

СУБД Access является примером того, как при выполнении этих операций обеспечивается максимальное удобство для пользователей.

Найти нужную запись, просматривая таблицу гораздо удобнее, когда данные в этой таблице отсортированы по нужному полю: по алфавиту в текстовых по лях, по дате, если поле содержит дату, по увеличению или уменьшению число вых значений, например, в столбце Цена. Причем при различных поисках требу ется, чтобы данные в таблице можно было бы легко отсортировать по нужному столбцу. Access позволяет легко это сделать. По умолчанию, когда таблица от крывается в режиме таблицы, она упорядочивается по значению ключевого поля. Если ключевое поле для таблицы не определено, записи выводятся в по рядке их ввода в таблицу. При необходимости отсортировать записи по значе нию другого поля достаточно установить курсор на любую строку соответ ствующего столбца и нажать одну из кнопок на панели инструментов: Сортиров ка по возрастанию (Sort Ascending) или Сортировка по у б ы в а н и ю (Sort Descending).

Эти кнопки легко найти на панели инструментов Таблица в режиме таблицы (Table Datasheet) по характерным значкам (рис. 5.1) I |i| и [П Рис. 5.1. Панель инструментов таблицы в режиме таблицы 1. Откройте таблицу Издания (самую большую в нашей базе данных) в режиме таблицы.

2. Нажмите кнопку Развернуть в заголовке окна таблицы справа, чтобы устано вить максимальный размер таблиц].!. По умолчанию она отсортирована по полю КодИздания (рис. 5.2).

3. Щелкните на любой строке поля Раздел и нажмите кнопку Сортировка по воз растанию (Sort A s c e n d i n g ) на панели инструментов.

Таблица будет отсортирована по разделам (рис. 5.3).

Примеры вы можете найти па сайте издательства www.piter.com на странице, посвящен ной этой книге.

Сортировка данных в таблииах,' !

i чд I 1 '""._ 1990:Наука | j "Утешение философией" и другие трактаты 1^ Философия - Х'Х'< 1993;

Мартис 'Творения преподобного Максима Исповедника 2' Религия +Х ТЭЭЗ'Мартис ;

Х'ХХХ' 'Творения преподобного Максима Исповедника 3! Религия *.

1ЭВЭ;

Праеда ;

Чтения и рассказы по истории России 4j История *'Х;

1983;

Мастацкэя г : Белая гвардия, Мастер и Маргарита 5[ Художественная литература 1Х-. 1969|Прогресс j;

:

*;

6. Философия 1995;

Невский кур 7;

Поэзия 1 Рубай v *i Х<""J V 1967;

ениздэт : Медный всадник] 8: Художественная литература Е 1990 Чаука ;

Драмы Si! 9' Драматургия 1 *;

i '"1'э92":Наука" ' | ;

Африка 10 Художественная литература s т~" 2CDO;

.Амфора ;

0 началах 1999;

;

Счастливые родители 12;

Детская литература 1 э 1999 игюл Knaci" #Х :Мы ждем ребенка 13-Детская литература 1999. Амфора ;

Евгений Онегин 14: Художественная литература 1999;

Амфора i Прощай оружие 15' Художественная литература '*:

1992;

Гегга Fanlas = Понедельник начинается в субботу 1 Б: Фантастика t 19В9;

Правдэ i Современный французский детективный роман 17:Детективы *:.

i- 199Д:Ди-дик : Оправдание вечности 18 Фантастика ' 1991;

ИздательстЕ ' t;

| ;

Разговор с матерью 19;

Детская литература " i Нравственные основы жизни 20- Психология 2000;

Эксмо-Прес : Вечера с Петром Великим 21 История *"l 1999[3олотая алл f 'Раздумья о России 22 История 1998- Согласие,.

: Поэзия садов.+:. 23 Искусство -i -!

- - - -.. ( В i Ч J F'WMM feulMlt.

Рис. 5.2. Таблица, развернутая до максимального размера I -, S X;

л,:=,-Х №<:<.

см СЗРЯИС Окно rpawa i ч Л. ~* ^i 'Х s.^ '"' Хi -*. ^1 -* J "S ч-Л *d-^ *^ t Л ~VJ f о;

, >1-ц шил.-"-з^згельсч * ? члдйздалир) l-ai-^.T Hi^-MHin 1989 Правда |;

' :

Соереиеннын французский детективный рсман 1993 Рипол Knacil;

Мы ждеи ребенка '*;

i 13: Детская.литература " Счастливые родители ^j 12;

Детская литература 1991 Иэдате/ьстЕ?.

Разговор с матерью * | 19: Детская литература ".1330 Наука ' ' ', ' Драмы | fl.Э^Драматургия 1998 Согласие '*il 23 Искусство Поэзия садов 1999. Золотая а."л Х;

:+;

' 22 История Раздумья о России 2000 Эксмо-Прес '% Щ 21;

История Вечера с Петроы Великим 1989 Правда -,'а 'ХК 4;

История Чтения и рассказы по истории России 5000 Панорам.*!! 24;

Поэзия Избранная поэзия 1995 Невский курЩ'.*Х! 7^ Поэзия Рубай 1994 Онацтва ;

Х Нравственные основы жизни r *;

| 20i Психология 1993 Мартис ;

'.;

its! 2: Религия Творения преподобного Максима Исповедника :

?] 1993 Мартис *'! Э'Религия Творения преподобного Максима Исповедника.. 1994 Ди-дик Х;

Оправдание вечности !л;

18;

Фантэстика 1992 Terra Fanlas Понедельник начинается в субботу '*il 16^Фантастика 1990 Наука if :

"Утешение философией" и другие трактаты Ж| 1| Философия.;

19В9 Прогресс Фадр ;

^1 6:Философия :

2000 Амфора |.;

0 началах 11 : Философия Х+- 1999 Амфора.j. Х 0 небесах, о мире духов и об аде *:: 25;

Философия 19Б7 Ле.ниэдат Медный всадник :| ^ 6;

Худ охественная. литература 1999 Амфора...

| Евгений Онегин 14! Художественная литература ;

1988 Маетэцкая i^i Белая гвардия;

Wazrep и Маргарита Х Х ;

:::;

Х;

;

.;

т -.*} 5!Художвствечиая литература iwii-t" j" "" )Г~ :

~"Т * ' *r j>+-i из а Рис. 5.3. Таблииа Издания, отсортированная по полю Разделы 1 24 Занятие 5. Поиск и сортировка данных Значения поля Раздел сортируются по наименованию раздела, хотя на са мом деле в поле Раздел содержатся не наименования разделов, а их коды, Однако при отображении таблицы на экране Access использует значения из столбца подстановки, который мы определили при создании таблицы Издания.

Б таблицах, содержащих большое количество записей, установите индекс для тех полей, по которым собираетесь выполнять сортировку, Ч эта опера ция будет выполняться значительно быстрее.

Итак, мы отсортировали таблицу И з д а н и я по текстовому полю Ч разделы отображаются в порядке алфавита.- Теперь отсортируем ее по числовому полю.

4. Щелкните на любой строке столбца Цена и нажмите кнопку Сортировка по убы ванию (Sort Descending) на панели инструментов.

Все записи в таблице выстроятся в порядке убывания цены издания (рис. 5.4).

Х [Издания :

-габяиал] Вставка ^водат" Мещ зЩ '-- Ц<НЗ Х '.,' ;

I,-, ЭЕ31 жесткая Ш Большая ко :

>+ 1998;

Согласие 'Москва _.. + 1969: Прогресс Ленинград Большая ш | 125,ррр. Джесткая, Ж 1 Большая го ] 1 24 ДОр. ' Жесткий | ' Хs-t. 1999:Рипсл Клэс( 'Москва | ;

+ 2000;

Амфора СПб Большая ко j i.Q3/Xip. жесткая | !

Большая ко ;

102.000. ^жесткая | :

2000 Панорама.МР.9М?..

74,00р. ;

жесткая,1:! ;

1994'Ди-дик Москва |1 1 Большая ко :

1999. Золотая алл СПб Большая ко ;

70.00р. ;

Ж8сткая 58,'ЭОр. : жесткая :.

Большая ко ;

У. * 1994 Юнацтва Минск Большая ко : 57,00р. ! мягкая ;

1993 Мартис ДМосква 1993 Мартис ^Москва 2 Большая ко 57,00р. ;

мягкая '| 2 Маленькая i : 55,00р мягкая 1995: Невский кур ! СПб 1999;

'ТМосква 12 Большая ко ! 50,00р. жесткая Маленькая i ;

50,00р. жесткая 2000;

Эксмо-Прес : СПб | ^ Большая ко 43,JOp жесткая Г.:;

* 1999!Аы$рра СПб 1992:Наука t Москва Большая ко 25,00р. жесткая Х ;

* 1990! Наука Москва Маленькая 24,00р. жесткая > 22,00р. мягкая '.', J -+Х 199Э Амфора " СПб -1 1 Большая ко 15,Шр. мягкая \ 1 999 Амфора СПб 1 1 Большая ко Большая ко 8,00р. жесткая 1992 Terra Fantas СПб ХЖ '+' 1990 Наука Москва Большая ко 7,00р. -жесткая #Х ;

- 2 Большая ко 1391 ИЗДЭТВЛЬСТЕ :Москва 1 7.00р. -жесткая ;

'Х.- 1983 Правда ;

Москва Маланькая t \ 4,00р. ;

жесткий ' ;

. :*.1999. Правда [Москва.1 I Большая КО. 3,90р. : твердая *.......-...-......

--..........-- j_^ Ш*р I'i |~ ! -Х 1 Х 1J J *J Рис. 5.4. Таблица Издания, отсортированная по полю Пена Таким образом можно упорядочить записи по любому столбцу таблицы. Огра ничения существуют только на тип упорядочиваемых данных Ч нельзя сорти ровать значения полей типа OLE object (объекты OLE).

Сортировка данных в таблицах I При сохранении таблицы сохраняется и ее порядок сортировки.

По полям типа MEMO и Гиперссылка в Access 2003 сортировать можно.

1. Закройте таблицу Издания. На вопрос, хотите ли вы сохранить изменения макета, нажмите кнопку Да. При этом последний установленный вами поря док сортировки сохранится.

2. Откройте таблицу И з д а н и я снова, чтобы убедиться в этом.

3. Переключитесь в режим конструктора, нажав на панели инструментов кноп ку Вид (View) j|g-:.

4. Откройте диалоговое окно Свойства т а б л и ц ы (Table Properties), выбрав в кон текстном меню команду Свойства (Properties), либо в главном меню команду Вид > Свойства (View > Properties).

5. Обратите внимание на значение свойства Порядок сортировки (Order By). В нем указывается поле, по которому выполнена сортировка (Цена) и порядок сор тировки: DESC (по убыванию) (рис. 5.5).

т* Свойства таблицы Х Режим таблицы Фипьтр,, < Порядок еортцрндаси...... Нздания.Ценэ DFSC Имяподтаблицы : 1. Щ. ;

."Таблица,Формуляры |1 ж| Подчиненные поля,. -,,, -,,. -КодИздания. -КодМзданяя 'Хм, i.i Ориентация.- Спева н.зпраьо Рис. 5.5. Диалоговое окно свойств таблииы Откройте таблицу Авторы и отсортируйте ее по столбцу Фамилия. Сохраните ЗАДАНИЕ порядок сортировки при закрытии таблицы (таблицу Издания при этом можно не закры вать).

Если при работе с таблицей нужно вернуться к порядку сортировки, опреде ленному по умолчанию, то есть по ключевому полю, достаточно выполнить ко манду меню Записи * Удалить фильтр (Records > Remove Filter/Sort).

Если в некоторых записях таблицы значения в полях сортировки отсутствуют, то есть эти поля пусты, то при сортировке в порядке возрастания они окажутся первыми. Если в поле есть тексты на английском и русском языках, например, 1 26 Занятие 5: Поиск и сортировка данных названия предприятий, то сначала сортируются и отображаются все англий ские названия, а затем все русские. Если в текстовых полях вы храните чис ла, не удивляйтесь, что при сортировке они будут отсортированы как строки символов, то есть 1, 11, 111,..., 2, 22, 222 и т. д. Часто про это правило забыва ют и думают, что программа лошиблась. Если их действительно нужно хра нить в текстовых полях, а сортировать в нормальном порядке, то есть как числа, необходимо сделать так, чтобы все строки имели одинаковое количе ство символов. Для этого придется приписать в начале строки незначащие нули.

Если таблица содержит много записей и по какому-то полю часто делается сортировка, рекомендуется создать для этого поля индекс, тогда сортировка будет выполняться быстрее.

Поиск записи в таблицах Средства поиска данных в таблице не менее удобны, чем средства сортировки.

Предположим, надо найти книгу, зная ее название.

1. Нажмите на панели инструментов кнопку Вид (View), чтобы переключиться в режим таблицы.

2. Щелкните на любой строке столбца Название.

3. Нажмите на панели инструментов кнопку Найти (Find) [4|'.

Появится диалоговое окно Поиск и замена (Find and Replace) (рис. 5.6).

Х\ Х>,Х, ШШЙ в ;

. Г '.С учетом регистра Рис. 5.6. Диалоговое окно поиска и замены 4. На вкладке Поиск (Find) в поле Образец (Find what) введите значение, которое хотите найти, например, Онегин. Остальные поля на этой вкладке позволяют определить различные типы поиска.

П Раскрывающийся список Поиск в (Look in) содержит два значения (рис. 5.7). Одно из них Ч название выбранного столбца, второе Ч назва ние таблицы. При выборе первого значения поиск введенного текста бу 1 2. Поиск записи в таблицах дет выполняться только в выбранном столбце, при втором Ч по всей таб лице.

Рис. 5.7, Поиск по выбранному полю или по таблице П Б поле со списком Совпадение (Match) можно задать один из трех вариан тов совпадения образца со значением поля Ч Слюбой частью поля (Any Part of Field), Поля целиком (Whole Field), С начала поля (Start of Field).

D Поле со списком Просмотр (Search) позволяет задать направление поиска:

Все (АИ), Вверх (Up), Вниз (Down).

D По умолчанию, как видно из примера, поиск на совпадение с образцо выполняется без учета регистра символов: если ввести Онегин, значение Онегин в таблице будет найдено. Если нужно найти именно лонегин, то установите флажок С учетом регистра (Match Case).

П Флажок С учетом формата полей (Search Fields as Formatted) позволяет вы полнять поиск данных в указанном формате отображения.

14;

Худо>*вственная литература ;

Евгений | 19Й'Амфора J 5;

Художественна я литература Х Прощай орухие 1?ЭЭ Амфора Понедельник начинается в субботу 16'Фантастика 1992 Terra Fantar 17:Детеиивы Современный французский детективный роман 1989^ Правда ^Оправдание вечности 1& Фантастика 1994;

Дн:(цик 19;

Детская литература : Разговор с матерью 1Э91:Издате.пьст;

20! Психология Нравственные основы жизни 1Э94;

Юнацтва | ? итт'гймШивИм 2000! Эксм^Прес!

ZZft 1998-Согласие 20рд.Панораиа 3 1999;

Амфора i^;

jc сбой частью поп Во Рис. 5.8. Поиск данных по образиу в выбранном поле 5. Выберите в списке в списке Совпадение Ч С любой частью поля. Затем нажмите кнопку Найти далее (Find Next). Первое найденное значение, которое совпадает 1 28 Занятие 5. Поиск и сортировка данных с образцом, выделяется и отображается на экране (рис. 5.8). В данном случае мы искали слово Онегин в любой части поля. Диалоговое окно Поиск и замена (Find and Replace) остается на экране. Это позволяет выполнить поиск сле дующего совпадения.

6. Введите новый образец для поиска в поле Образец (Find What): мягкая, и изме ните значение в поле Поиск в: Издания : Таблица. Снова нажмите кнопку Найти далее (Find Next). Найденное значение оказывается в столбце Тип обложки (рис. 5.9).

Поиск ведется вправо и вниз, но если в остальных записях значение не най дено, начнется просмотр снова с первых записей, так как мы выбрали значе ние Все (АИ) в поле Просмотр (Search).

" Х'-Х.Москва Наука Мартас : Москва Мартис {Москва ;

Москва Правда Мастацкая s Минск Ленинград Прогресс Невский кур Х СПБ '" Лениэдат Наука Амфора + Рипол Класс + Амфора + Амфора г & Terra Fanlаз *. Правда ;

* ИздательСТЕ * Юиацтеа *. Эксно-Прм + Золотая алл t. Согласие Рис. 5.9. Поиск значения по всей таблице Из всех видов поиска самым медленным будет поиск по совпадению с лю бой частью поля, так как при этом не используется индекс, даже если поле, по которому выполняется поиск, проиндексировано. Очень медленным яв ляется также поиск по всем полям таблицы, если в таблице много полей и много записей.

Это же диалоговое окно можно использовать для замены данных.

1 2у Использование фильтров для поиска группы записей 1. Раскройте вкладку Замена (Replace). Она аналогична вкладке Поиск (Find), но на ней есть дополнительное иоле З а м е н и т ь на (Replace With).

8. Введите в поле Заменить на (Replace With) строку мягкая в суперобложке и на жмите кнопку Заменить (Replace). В результате найденное значение будет за менено (рис. 5.10) и сразу же выделяется следующее значение. При необходи мости заменить все вхождения найденной строки Б записях таблицы нужно нажать кнопку Заменить все (Replace All).

9. Закройте диалоговое окно Поиск и з а м е н а (Find and Replace).

ЗАДАНИЕ Выполните поиск в таблице Издания по содержанию слова Борхес в поле Заметки.

J v 'ХХ* Х* "' '' " '- Х' ' --' -* Х Ц&иа Х-- < \ ;

..-... Х Х ;

Х | ;

'Х Х '. ХХХХ - :.

7,00р жесткая 01.01 1!:

Москва ;

Большая ко 11.02.1lfe1' Москва : Большая ко 57,00р мягкая в суперобложке :

Москва Х2 !Большзя ко S7,ODp. И ! ' Я? : u^.n.liS".

4,DOp жесткий Москва : Маленькая 14.05.1!^' ' Минск Большая ко 3,30р. жесткая ;

12.05.1!{' Х Ленинград ХБольшая ко ! 125,00р. жесткая, суперобложка ! 14.05.!!;

-.

2;

Маленькая t СПб 55,00р. нягкая Ленинград 02 Q2 1i.

Москва ] Q5.D6 1 ^ !

? Яоиек Звиенэ ". j Х Х. 06.061!;

Москва 22 ОЛ 1' "ХJ Наит даяа *--Х. | \ Сбк. ф-ягкэя * т Москва " 23QS.U: ' :. Эр|*К<*Н4. ": {мягкая е суперобложке Москва 21 09.1:

-.

3 o *!

n. I :

СПБ Ч 'j not***'1-" |[№дания7та5пйца _^J ' - спе 1 1203 1! Х :

: ff^f ijSS^Щ ^ '-Х ? 1 1 мная: 12 03 Г тяя- 21 09. V Москва Г" С учетам aernrrga Г~, '.- - ' Х"" -Х а 11 09.1! ' Х Минск Большая ко : жесткая :

Маленькая i СПб 50.00р. жесткая 21.09.1' СПб 2В C9.2I ХХ Большая ко 70,00р жесткая Х Москва Большая ко 150,00р женкая 15 12.1!^ ^ №лл.HJJ.J j э ' 1Ш Ш - Ш 25-;

;

| -Х JLJ.Д-A-.-j.i,.J!...JJ..A.J :. ;

.. :....J^t Рис. 5.10. Замена найденного фрагмента текста Использование фильтров для поиска группы записей Если в таблице много записей, работать с такой таблицей трудно, даже про сматривать долго. Обычно на экране отображают не все записи, а только груп пы записей, отобранных но определенному критерию. Этот процесс называется 5 Зак. 1 30 Занятие 5. Поиск и сортировка данных фильтрацией. В Microsoft Office Access 2003 предусмотрено четыре способа от бора записей с помощью фильтров: фильтр по выделенному фрагменту, фильтр по форме *, фильтр для и расширенный фильтр.

При работе с фильтрами используются три кнопки панели инструментов;

Г|*1 Ч Фильтр по выделенному (Filter by Selection);

Щ Ч Изменить фильтр (Filter by Form);

JV - Применить фильтр (Apply Filter), она же Удалить фильтр (Remove Filter).

Самым простым способом фильтрации является применение фильтра по выде ленному.

1. Щелкните на любой ячейке столбца Раздел со значением Философия.

2. Нажмите на панели инструментов кнопку Фильтр по в ы д е л е н н о м у (Filter by Se lection).

Будут отобраны все записи, имеющие в поле Раздел значение Ф и л о с о ф и я (рис. 5.11). Обратите внимание, что рядом с кнопками перемещения по записям на нижней границе окна появилось слово Ф и л ь т р (Filtered). Таким образом, глядя на таблицу, всегда можно видеть, все ли записи отобра жаются в данный момент. Число 4 указывает количество отобранных за писей.

Рис. 5.11. Применение фильтра по выделенному Фильтры сохраняются автоматически при сохранении таблицы или формы.

При повторном открытии таблицы или формы можно снова применить со храненный фильтр.

3. Нажмите кнопку В и д (View) панели инструментов, чтобы переключиться в окно конструктора.

4. Если на экране нет окна Свойства таблицы (Table Properties), нажмите на пане ли инструментов кнопку Свойства (Properties) j*.

В справке по русской версии Access 2003 он называется обычным фильтром.

Использование фильтров для поиска группы записей 1 Свойство Фильтр (Filter) таблицы имеет следующее значение (рис. 5.12):

С (1_оо)<ир_КодРаздела. Раздел="Философия")) Выражение слева от знака равенства (=) Ч значение из столбца подстановки поля Раздел.

При сохранении таблицы установленный фильтр сохраняется в свойстве Фильтр (Filter) и может быть снова применен.

5. Закройте таблицу И з д а н и я. Ответьте Да (Yes) на вопрос, нужно ли сохранять макет таблицы.

6. Откройте таблицу снова Ч отобразятся все записи.

7. Нажмите на панели инструментов кнопку Применить фильтр (Apply Filter) снова будет применен тот же фильтр. Кнопка Применить фильтр (Apply Filter) находится в положении нажата.

8. Чтобы удалить фильтр, нажмите ту же кнопку еще раз Ч она теперь превра тилась в кнопку Удалить фильтр (Remove Filter) 'Свойства таблицы РежЩ-ПО,-маячан1#с-:.,..-, -,, -. Релим таблиц Рис. 5.12. Установка свойства Фильтр таблицы Если образец для отбора записей не виден в столбце таблицы, можно приме нить фильтр по заданному условию. Он позволяет ввести вручную образец тек ста для отбора.

1. Щелкните правой кнопкой мыши на любой строке столбца Издательство. От кроется контекстное меню.

2. Введите в поле Фильтр для (Filter for) строку наука (рис. 5.13) и нажмите кла вишу Enter. Будут отобраны только книги издательства Наука (рис. 5.14).

Если нажать клавишу Tab, а не Enter, контекстное меню не исчезает с экрана и можно вводить другие критерии отбора. При нажатии клавиши Tab выбор ки все время будут обновляться.

3. Удалите фильтр.

I 32 Занятие 5. Поиск и сортировка данных В поле Фильтр для (Filter for) можно указывать не только конкретные значе ния, но и выражения, требующие вычислен и и (о выражениях см. Занятие б).

Фи.льтр по выделенному Исключить выделенное "Щ-.- УДаЛ1/ТЬ ФИЛЬТр | | Сортировка по возрастанию f \, Сортировка по убыванию !$&'Х'Х Вырезать :

"Л Копировать Рис. 5.13. Установка Фильтра для;

Африка Драмы "Утешение философией" и другие трактаты Рис. 5.14. Отфильтрованные записи При необходимости установит], более сложный фильтр, например, состоящий из двух и более условий отбора, применяют фильтр по форме.

1. Нажмите кнопку И з м е н и т ь фильтр (Filter by Form) на панели инструментов.

Появляется форма Ч специальное окно для изменения фильтра (рис.

5.15).

Форма содержит линейку полей таблицы. Б любое ил этих полей можно ввести или выбрать в списке значение, которое и будет являться услови ем отбора. Если условия внести в несколько полей, то отбираться будут те записи, которые удовлетворяют всем заданным условиям, то есть И пер вому, И второму И т. д. Для отбора записей, удовлетворяющих одному условию ИЛИ другому, раскрывается другая вкладка формы (нужно щелкнуть на ярлычке И л и (Or) н нижней части формы), и второе условие задается на ней.

Использование фильтров для поиска группы записей При вводе условий отбора в поля формы можно использовать любые выра жения, которые возможны a Access.

История Психология Философия Детская литература Детективы Математика Художественная литератур;

Фантастика !

Рис. 5.15. Окно изменения фильтра 2. Выберите в списке в поле Раздел значение История, а в списке в поле Изда тельство Ч Правда.

3. Раскройте вторую вкладку, щелкнув на ярлычке Или (Or).

4. Выберите в списке в поле Раздел значение Философия, а в списке в поле Изда тельство Ч Наука.

5. Нажмите кнопку П р и м е н е н и е фильтра (Apply Fitter) панели инструментов. Бу дут отобраны две записи (рис. 5.16).

1990'Наука "Утешение философией" и другие трактаты j Философия 1939 Правда Чтения и рассказы по истории России 4 История Рис. 5.16. Применение фильтра по форме 6. Нажмите еще раз кнопку Изменить фильтр (Filter by Form). Перед изменением условий можно очистить все поля в форме. Для этого используется кнопка панели инструментов Очистить бланк (Clear Grid) gfj.

Фильтр со сложными условиями отбора рекомендуется сохранить в виде за проса. Тогда в любой момент его можно применить снова.

7. Нажмите на панели инструментов кнопку С о х р а н и т ь как запрос Д (Save as Query).

8. Появится диалоговое окно Сохранение в виде запроса (Save as Query) (рис. 5.17).

1 34 Занятие 5. Поиск и сортировка данных ХОбразец фильтра по форме Рис. 5.17. Диалоговое окно сохранения в виде запроса 9. Введите имя запроса Образец фильтра по форме и нажмите кнопку ОК.

10. Очистите поля фильтра, нажав кнопку Очистить бланк (Clear Grid).

11. Для повторной установки сохраненного в виде запроса фильтра достаточно в форме фильтра нажать кнопку Загрузить из запроса (Load from Query) Цр.

Откроется диалоговое окно П р и м е н я е м ы й фильтр (Applicable Filter) со списком сохраненных фильтров (рис. 5.18). Выберите нужный фильтр и нажмите кноп ку ОК. Все условия фильтра снова появляются в полях формы.

12. Закройте окно изменения фильтра и удалите фильтр, нажав на панели ин :

струментов кнопку Удалить фильтр (Remove Filter) p7 Отберите все книги издательства Наука, используя фильтр по выделенному.

ЗАДАНИЕ Применяемый фильтр Рис. 5.18. Диалоговое окно применяемого фильтра Печать, экспорт и рассылка таблиц Отобранные с помощью фильтра данные (как, впрочем, и таблицы целиком) можно печатать, копировать, экспортировать и рассылать по электронной почте.

Чтобы напечатать таблицу, удобнее всего использовать кнопку Печать (Print) на панели инструментов |Ш| Печатается вся таблица или только отобранные записи, если установлен фильтр.

Но прежде чем выполнить печать, можно посмотреть, как будет выглядеть таб лица в напечатанном виде.

Печать, экспорт и рассылка таблиц 1 E|Mcioto(t Acceit -(Формуляры ибяица) Сервис QKKO Дправкэ -_вX Закрыть..ЦстансВкв \ Рис. 5.19. Окно предварительного просмотра документа Для этого воспользуйтесь кнопкой Предварительный просмотр (Print Preview) на панели инструментов !Щ На экране появляется окно предварительного просмотра и панель инструмен тов Предварительный просмотр (Print Preview) (рис. 5.19).

В нижней части окна есть кнопки перемещения по страницам, аналогичные кнопкам перемещения по записям в режиме таблицы. Указатель приобрел фор му лупы со знаком плюс (+) в центре.

1. Щелкните на таблице, масштаб изображения увеличится (рис. 5.20). Видно, что вся таблица на одной странице не помещается.

2. Нажмите на панели инструментов кнопку Две страницы (Two pages) На экране одновременно будут показаны две страницы (рис. 5.21) Ч таблица разбита на две части. Это не очень удобно. Попробуем разместить всю таб лицу на одной странице альбомной ориентации.

3Д Выберите команду меню Файл > Параметры страницы (File Page Setup). Появ ляется диалоговое окно Параметры страницы (Page Setup).

4. Раскройте вкладку Страница (Раде) (рис. 5.22). Установите на ней переклю чатель ориентации альбомная (Landscape).

1 36 Занятие 5. Поиск и сортировка данных Правка Зид t Pop*iir Записи Сгреиз Склс ^правка 21.01. Фаомуляры Творения преподобного Максима Исповедника :Больман Наталья Мнхэйлоена Творения преподобного Максима Испсеедника 'Бушманоеа Ирина Владимировна Творения преподобного Максима Исповедника Игнэченко Наталия Владимировна Аф Р"ка Вольман Наталья Михайловна Аф рикэ Файзрашэнов Айрат Фэткерахманович О началах Файзрахмансв Айрат Фаткера^^анович Понедельник на чикается в с у б б о т у.Вольыэн Наталья Сергеевна Поэзия садов Вольыэн Наталья Михайловна Поэзия садов 'Файзрахмансв Айрат Фатхерахманович Рис. 5.20. Увеличение масштаба изображения fgMicioiolt Access - [Фоциуяяры: табяила!

*осыат Сервис З-тки Окна..

Рис. 5.21. Двухстраничное отображение таблииы в окне предварительного просмотра Печать, экспорт и рассылка таблиц 1 ;

Параметры страницы i >i., Х I книжная Х ' Х:

;

подача;

;

]п0дача бумаги Х" '.';

.- Х 1 IBM I '*' *"*, ХД I Рис. 5.22. Настройка ориентации страницы 5. На вкладке Поля (Margins) уменьшите значения левого и правого полей. Уста новитс их равными 5 мм (рис. 5.23) и нажмите кнопку ОК.

йи*нее;

И 25, Отмена Рис. 5.23. Настройка полей страницы 6. Нажмите на панели инструментов кнопку Одна страница (One Page) ;

й;

.

7. Нажмите на панели инструментов кнопку Печать (Print) [Щ!. Таблица будет выведена на текущий принтер.

1 38 Занятие 5. Поиск и сортировка данных Подготовленную к печати таблицу можно экспортировать в документ Word и в таб лицу Excel. Проще всего это сделать с помощью специальной кнопки Связи с Office (OfficeLinks) на панели инструментов (рис. 5.24). Стрелка справа на этой кнопке раскрывает список из трех команд:

_ ff X няние В Microsoft Office Woid 3 И ;

Публикация в Microsoft OlliceWord Я Ms Анализа MiciosoftOfiiceExcel Рис. 5.24. Кнопка связи с Office Х Слияние с MS Word (Merge It With MS Word) Ч обеспечивает слияние данных из таблицы Access с документом Word.

Х Публикация в MS Word (Publish It With MS Word) Ч преобразует таблицу Access в документ Word.

Х Анализ в MS Excel (Analyze It With MS Excel) Ч преобразует таблицу Access в ра бочий лист Excel.

\. Выберите команду Публикация в MS Word (Publish It With MS Word). Таблица Access преобразуется в таблицу Word и вставляется в документ формата RTF. До кумент открывается и выводится на экран (рис, 5.25).

16 10.20BO Т10(мшиллгиЩю(1йли-лсмла-Ил10>м>л111 ! Во лиян-Наталья (Лизйво)мао 21.09 iMU 3D 10.2000.

IS.M 2WQ Ol'.llVlDDO ТиНииия notrxJoSwro fcлiсим-Monomwtrin HmjutHio Ншлпя-Влмичиронис 14.10 ЖС А+ряно Вольна Напльял*лаЛл01н1п wjjg.soto^ латвппнoi-йрЯ! tiералмамо " 3D.Н.2DDD' ' 24.00 idio' Л<шлд*ъ><1* чаиини Х Волыни Нал 08 ID MOD'. бояьман Или на им Х Х Ст Рис. 5.25, Экспорт данных в Word 2. Аналогично происходит экспорт таблицы в файл Excel. Выберите команду Анализ в MS Excel (Analyze It With MS Excel). Создается файл Формуляр.xLs, этот файл открывается, и в нем отображается таблица Формуляр (рис. 5.26).

Печать, экспорт и рассылка таблии Ш(*Щ 1 ls 1Ш Micioioll Excel - fopus""** * ScffBKa 1 Ф-оЕздат -" C|BS*t Данные Окно Елравкл *j Ч-aii Пг'.-вг-г, fcjti-. ffl^tttHVH. в X^ i- ;

Ж iff : Ч <. & : Sail *J. ^в.о/ ;

1 л.,')a.

р -Х.-;

' >;

;

t, Д ). v, ;

m Х - ''!', Aii^ Х t5. [5*. S3 Х Ж ( i* -_i. Х * Т, * т Издание ^Творения преподобного Максима Исповедника Всль-лан Наталья Михайловна 25.09 2000. 02.10.2000 | 1творения преподобного Максима Исгтоведнииа Бушманова Ирин Влади мир оен а 25.09 2000' р2.10.2Срр;

[Творения преподобного Максима Исповедника Игначенко Наталия Владимировна 15.10.2000;

30.10.2000;

;

|Африка'"" Вольиан Наталья Михайловна 23.09.20001 11.10, |Африка.Файзрахианов Айрат Фаткеракиэнович;

30.09.2000} 07.10.2000^,ip начал ах |ФайзрахнаноЕi Айрат ФаткерахманреичД 24.03.2000: 12.10-.2pOOj ^Понедельник начинается в субботу Вольиан Наталья Сергеевна 06.10.200JD: 13.1p,3Xp| 1Поэзня садов Вольман Наталья Мшайловна 25.09.2000;

2510.2000.:

lПоэзия садов Файзрахиэнов Айрат Фатхврахманович [ 23.09.2000: 23-10- Рис. 5,26. Экспорт данных в Excel Еще один вариант сохранения таблицы в виде отдельного файла Ч преобразо вание ее в формат HTML.

1. Выберите команду Файл > Экспорт (File > Export). Появится диалоговое окно Экспорт объекта (Export Object) (рис. 5.27).

Pictures фавитный каталог.НЫ Фав^ный каталогРадеЗ html г Документы HTML (".html, Рис. 5,27. Диалоговое окно экспорта объекта 1 40 Занятие 5. Поиск и сортировка данных 2. В поле Тип файла (Save as type) выделите элемент Документы HTML (HTML Docu ments).

3. Выберите папку, н которой необходимо сохранить экспортированный объект.

4. В поле И м я файла (File Name) введите имя файла.

5. Установите флажки Сохранить формат (Save formatted), если таблицу нужно сохранить в формате, близком ее внешнему виду н режиме таблицы, и Авто загрузка (Autostart), чтобы созданная в результате экспорта веб-страница сра зу же была открыта в программе просмотра веб-страниц.

Параметры вывода формате Hf ML:

файла:

Выберите коднро&ку дпя сохра *" по умолчанию Г Юм-год ?~ Юникод (UTF-8). -::

Рис. 5.28. Диалоговое окно параметров вывода в формате HTML щ j CADoOimenti and SeltmgsVidrripnpstrcilor^My Dосип*п1ЛФ адуляры html '| ("IT^DSMoa Ф.р. п-ляры,.;

:,';

,, Д,.';

;

!,, Х;

:;

;

;

;

;

:.: Примечание Читатель Вольман Наталья 25.09 2000: 02 10 2000 15 10. ХТворения преподобного Максима Исповедника Михайловна Бушманова Ирина 25ЖЗТОГ''Ж'1 0.2000 30. Творения преподобного Владимировна Максима Исповедника Творения преподобного Игначенко Наталич 15 10.2000: 30.102000! 01 11 ;

Максима Исповедника Владимировна Африка Вольман Наталья 23.092000- 11 10.2000;

'Х - Михайловна Африка Фэторахманов Айоат 30.09.2000: 07 10.2000;

30.10. Фаткерашанович Ю началах Фэйзрахианов Айрат 2409.2000;

12.10.2000' \f Фатхерайманпви1-!

ое 10.2000;

13Ю2000:

Вольыан Наталья Сергеевна ^'Понедельник начинается в Хсубботу.Поэзия садов Вольиан Наталья 25.09.2000;

25.102000;

Мииайловна ^Поэзия садов Файэрахмэнов Айрат 23Ю.2000Г'' 'zs'.'ib.fooo' ' ЗОЖ Фатаерашановнч РИС. 5.29. Таблииа Формуляр, экспортированная в формат HTML Подведение итогов 1 6. Нажмите кнопку Экспорт всех. На экране появится диалоговое окно Парамет ры вывода в формате HTML (HTML Output Options) (рис. 5.28).

7. В этом окне можно указать шаблон HTML, который будет использоваться для формирования веб-страницы, и тип кодировки страницы. Оставьте вес значения по умолчанию, тогда у веб-страницы будет стандартное оформле ние. Нажмите кнопку ОК.

Результат экспорта показан на рис. 5.29.

Таблицы Access, а также результаты выборки, могут быть отправлены вашш:;

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

1. Выберите команду Файл * Отправить (File > Send To).

2. В раскрывающемся меню выберите команду Сообщение как вложение (Mail Reci pient).

3. В окне Отправка по почте (Send) выберите тип файла, например, Microsoft Excel (*.xls) (рис. 5.30).

Отправка по почте ок HTML (*.htm;

*,html) J Microsoft Excel 5-7 (*.xls) Text Files (*.bd) Microsoft Excel 97-2003 (*.xis) Microsoft ExceU*.xls) Rich Text Format (*.rtf) Рис. 5.30. Диалоговое окно отправки 4. Нажмите кнопку ОК и выполните стандартную процедуру отправки почтово го сообщения.

ЗАДАНИЕ Используя фильтр по форме, отберите книги, купленные в 2000 году. Экспор тируйте результат в файл.xls.

Подведение итогов Итак, на данном занятии вы научились:

Х сортировать таблицу но разным столбцам (текстовым, числовым, дате);

Х искать нужную запись по образцу в выбранном поле и во всей таблице;

1 42 Занятие 5. Поиск и сортировка данных Х выполнять замену найденных вхождений образца;

Х устанавливать фильтр по выделенному и фильтр для;

Х создавать и применять фильтр по форме;

Х сохранять и вновь использовать фильтр;

Х печатать таблицу или группу отобранных записей;

Х экспортировать отобранные записи в документ Word, таблицу Excel, стра ницу HTML;

Х рассылать данные таблицы Access no электронной почте.

III ЗАНЯТИЕ Создание и выполнение запросов на выборку ТЕМА ЗАНЯТИЯ На этом занятии вы узнаете:

Х что такое запрос и чем он отличается от фильтра;

Х как создать новый запрос;

Х как выполнит], запрос;

Х как изменить уже существующий запрос и проверить его ре зультат;

Х как сортируются записи в запросе;

Х какими могут быть условия отбора записей в запросе;

Х как создаются выражения в Access;

Х что такое внешнее и внутреннее объединение таблиц в за просе;

Х как создавать вычисляемые поля в запросе;

Х как создать и выполнить запрос с параметрами.

Запросы и фильтры 1 Для выполнения упражнений данного занятия вам потребуется файл Библиоте каДанные.тсШ 1. Откройте его перед началом занятия.

Запросы и фильтры На прошлых занятиях мы рассмотрели, какие действия можно выполнять с таб лицами Access, открытыми в режиме таблицы. Таких действий, на первый взгляд, достаточно, чтобы решить почти все задачи, которые требуются при об работке данных. Однако таблицы Ч это только один из семи основных объектов Access. И теперь мы познакомимся со следующим объектом Ч запросом. Запрос в какой-то степени аналогичен фильтру, так как одна из основных функций запро са Ч найти и отобрать нужные данные в базе данных. Однако они позволяют выполнять и много других действий.

Запросы используются для просмотра, анализа и изменения данных одной или нескольких таблиц. Например, можно использовать запрос для отображения данных одной или нескольких таблиц и отсортировать их в определенном по рядке, выполнить вычисления над группой записей. Запросы могут служить ис точником данных для форм и отчетов Access. Сам запрос не содержит данных, по позволяет выбирать данные из таблиц и выполнять над ними операции.

В Microsoft Office Access 2003 существует несколько видов запросов:

Х запросы к серверу, позволяющие осуществлять выборку данных с сервера;

Х запросы автоподстановки, позволяющие автоматически заполнять поля но вой записи;

Х запросы выборки, осуществляющие выборку данных из таблиц;

Х запросы изменения, позволяющие модифицировать ;

шнные в таблицах (в том числе удалять, обновлять и добавлять записи);

Х запросы создания таблицы, позволяющие создать новую таблицу на основе данных одной или нескольких существующих таблиц:

Х перекрестные запросы Ч аналог сводных таблиц Excel, позволяющие анали зировать данные, содержащиеся в таблицах.

Запрос на выборку содержит условия отбора данных и возвращает выборку, со ответствующую указанным условиям, без изменения возвращаемых данных.

Основное сходство между запросами на выборку и фильтрами заключается в том, что в том и другом случае производится извлечение подмножества запи сей из базовой таблицы или запроса.

Основные отличия запросов и фильтров заключаются в следующем:

Х фильтры не позволяют отбирать данные одновременно из нескольких с ;

я занных таблиц Ч запрос главным образом для этого и используется;

Примеры вы можете найти па сайте издательства www.piter.com на странице, посвящен ной этой книге.

1 46 Занятие 6, Создание и выполнение запросов на выборку Х фильтры отображают все поля таблицы, из которой извлекаются данные в запросе можно указать, какие поля вы хотели бы видеть на экране в конеч ном результате;

Х фильтры не являются отдельным объектом в окне базы данных, поэтому если мы хотим сохранить фильтр (то есгь сохранить те условия, которые мы ука зывали в фильтре), он сохраняется в виде запроса 1 ;

Х фильтры не позволяют вычислять суммы, средние значения, подсчитывать количество записей и проводить другие вычисления над группами записей;

Х фильтры могут применяться к таблице, результатам запроса, к форме, но пе могут быть источником записей для формы или отчета Ч запросы часто ис пользуются как источник записей форм и отчетов.

Уяснив, чем отличается новый объект от уже известных нам фильтров, присту пим к его изучению.

Создание простого запроса с помощью мастера Как всегда, проще всего познакомиться с объектом, создав его с помощью мас тера. Первый запрос, который просто напрашивается, должен объединить таб лицы Издания и Авторы, так как несколько странно выглядит таблица изданий, в которой не видно авторов2.

1. Щелкните на ярлыке Запросы (Query) панели объектов окна базы данных, что бы раскрыть список запросов. Этот список пока содержит только сохранен ный нами на прошлом занятии фильтр для таблицы Ф о р м у л я р (рис. 6.1).

2. Дважды щелкните на значке Создание запроса с п о м о щ ь ю мастера (Create query by u s i n g wizard). Запускается мастер запросов, и на экране появляется диало говое окно Создание простых запросов (Simple Query Wizard) (рис. 6.2).

3. В поле со списком Таблицы и запросы (Tables/Queries) выберите таблицу Ав торы.

4. С помощью клавиш со стрелками вправо и влево переместите из списка До ступные поля (Available Fields) в список Выбранные поля (Selected Fields) два поля;

Имя и Фамилия.

Порядок выбора полей важен, так как именно в этом порядке они будут ото бражаться в результате запроса.

Вы можете сказать, что фильтр сохраняется о свойствах таблицы. Да, это так, но там со храняется только последний применяемый к пей фильтр.

С точки зрения структуры базы данных ничего странного нет Ч два разных объекта со своими атрибутами хранятся в двух разных таблицах, и это правильно.

Создание простого запроса с помощью мастера 1 4/ р БмбяиотекаДанные : база д Рис. 6,1. Раскрытый список запросов --, -'.:- Х 1 Х ;

.;

;

аыбфдае поля для запросив " ' ' ": ? - ' ;

Имя Фамилия одРо*дзнид одСмерти | Месторождения Образование -.

J Фотография готово OtHSHS Рис. 6.2. Первое диалоговое окно мастера простых запросов 5. В том же поле со списком Таблицы и запросы (Tables/Queries) выберите табли цу Издания.

6. Переместите из списка Доступные поля (Available Fields) в список Выбранные поля (Selected Fields) поля Название, ГодИздания, КодИздательства, КодГорода (рис. 6.3). На жмите кнопку Далее (Next).

7. В следующем окне требуется выбрать тип запроса: подробный или итоговый (рис. 6.4). Оставьте переключатель по умолчанию подробный (Detail) (с ито говым мы познакомимся позднее) и нажмите кнопку Далее (Next).

1 4о Занятие 6. Создание и выполнение запросов на выборку Создание простыи запросов Выберите поля для мпрюса,.;

Дог.у<зсжтя выбор несколь " |Т а б лица: Издания :,,. :--, КодИздания КодРаздела Фамилия Название Издание ГодИзданпя Код Мее т а КодИздательства Цена Тип Об ложки ДагаПокупкм Рис. 6.3. Список отобранных полей из таблии Авторы и Издания HI ' Др'.v-.Li-'H.-!''-nLir.i!.[;

iiU.r-!eT:

Х-..)>. '.л I ' j.,-'.'."i,iii.u.;

;

- ixiOl'l '..'.nii! i;

','Х Назад Рис. 6,4. Второе диалоговое окно мастера простых запросов 8. В следующем диалоговом окне мастера (рис. 6.5) в поле Задайте имя запроса (What title do you want to your query?) введите имя создаваемого запроса Изда ния&Авторы.

9. Оставьте переключатель в состоянии но умолчанию Дальнейшие действия (Do you want to open the query or modify the query's design) и нажмите кнопку Готово (Finish).

Создание простого запроса с помошью мастера 1 4У Задайте -и*йзапрет;

-'ИэдамияйЛвторы!

'ХУказаны всё сведения, неоёход"даые дня с запроса с гюмощьвэ пастера...

'.

: jtgg Рис, 6.5. Третье диалоговое окно мастера простых запросов На экране появится таблица, в которой отображаются выбранные нами поля из таблиц Авторы и И з д а н и я (рис. 6.6). Эта таблица называется результиру ющим набором запроса. Обратите внимание, что в заголовке окна выводится название запроса и фраза запрос на выборку (select query).

";

' - ^JJSJL Ш ИзданияЬАвторы : запрос на выборкч. - Название' { Год издания 1 Издзв _^ \: Имя ^.^".'Ии,'.' 1ЭЭЗ;

Мартие^;

;

Максим Испов Творения преподобного Максима Исповедника :

I 1993-Мэрти..

Максим Испов Творения преподобного Максима Исповедника Борхес 'Оправдание вечности 1394 ДИ-Д.-К : '< Хорхе Луис 1990. Наука f \ "Утешение философией и другие трактаты Боэций 1988.Маста[';

' Белая гвардия, Мастер и Маргарита Михаил Булгаков 1994 Юнацт Нравственные основы я ;

изни Франциск Вейс 1999.РИПОЛ Мы ждем ребенка Ольга Еремеева 2000;

Панор;

i Избранная поэзия Мицкевич Адам 1999;

Рипол Митрошенков Мы ждем ребенка Андрей 2000;

Амфор 0 началах Ориген 19921 Hay ка Франческо Африка Петрарка.1989:Прогрб J:

Федр Платон '1999;

Амфор.Г Евгений Онегин Александр Пушкин 14R7 Прнич, Д ЯРУ с аи п. пк....... -Пуи|шч-..^, ЬЙР Л HklU СТЯНИ'.-"!,' Х - - :-, -f^Хif млъ, м] т 1] J 1 Ч1 - Рис. 6.6. Запрос в режиме таблииы С результирующим набором запроса (далее будем говорить просто с зап' ю сом*) работают так же, как с обычной таблицей в режиме таблицы, то с<:ть записи можно сортировать, фильтровать, выполнять поиск, печатать, копи ровать и т. д.

I 50 Занятие 6. Создание и выполнение запросов на выборку 10. Щелкните на любой строке в поле Фамилия и нажмите кнопку Сортировка по возрастанию (Sort Ascending). Записи будут отсортированы по фамилиям ав торов (рис. 6.7).

:

|p И здани*ЛАвторЫ : запрос на выборку :

j f ' " Наэеая^л [ ' Щ...,, ^ },.Гой stf дани>..Издал^ \!' | Х;

Х Ц..

{Борхес ХОправдание вечности Хорхе Луис : Боэций -"Утешение философией" и другие трактаты l'99D Наука р 'Х.

193В Maciai^l;

Михаил ! Булгаков Белая гвардия;

Мастер и Маргарита Франциск ;

Вейс 1994 Юнзцт;

|^;

Нравственные основы жизни Даниил i Гранин ХВечера с Петром В-зликим 2000 ЭКСМО-Г. :

Ольга Еремеева ;

Мы ждем ребенка 1999 Золотз | Дмитрий Шихачев Х Раздумья о России :Максим Испов Цворения преподобного Максима Исповедника 1993 Марти!.-".';

Максим Испов !Творения преподобного Максима Исповедника 1993 Марти! " J Андрей Митрошенков !Мы ждем ребенка 1999 Рипол ;

.;

Адам :Мицкееич [Избранная поэзия 2000 Панор;

";

:

:0риген ;

0 началам :

2000 Амфор :? ' Франческо ;

Петрарка : Африка Наука 'llnq нТ*. - ЕШ1 ИМШ Х Х I ;

Х I Рис. 6.7. Отсортированный запрос Если книга имеет нескольких авторов, она будет отображена несколькими строками, причем они будут не рядом. Пример: Мы ждем ребенка, Ольга Еремеева и Андрей Митрошенков.

11. Закройте окно запроса. На вопрос о сохранении макета ответьте Да (Yes). На звание созданного памп запроса появилось в списке запросов.

Использование конструктора для создания запроса Второй способ создания запросов заключается в самостоятельном создании за проса в режиме конструктора. Этот способ позволяет создать более сложные за просы, но требует большей квалификации пользователя.

Допустим, вы хотите посмотреть, какие книги определенного автора есть в биб лиотеке.

1. Выберите значок Создание запроса в режиме Конструктора (Create query in Design view) и списке запросов окна базы данных. Появляется окно конструктора таблиц и поверх него диалоговое окно Д о б а в л е н и е т а б л и ц ы (Show Table) (рис. 6,8).

2. В окне Добавление таблицы (Show Table) есть три вкладки: на одной отобража ется список таблиц, на другой Ч список запросов, а на третьей для удобства Использование конструктора для создания запроса 1 J> выведен перечень таблиц и запросов вместе. Пока мы будем создавать запро сы только на базе таблиц.

Дело в том, что запрос в Access во многих случаях выступает полным анало гом таблицы, поэтому он может служить базой для другого запроса, формы или отчета.

АеторИздзние Авторы Города Издания Издательства Местахрамения Разделы Формуляры Читатели Рис. 6.8. Добавление таблииы в запрос 3. Выберите таблицы, которые должны участвовать в запросе. Выделите в спис ке на вкладке Таблицы (Tables) элементы А в т о р ы, АвторИздание, Издания и на жмите кнопку Д о б а в и т ь (Add).

Для выделения нескольких не рядом расположенных элементов списка удерживайте клавишу Ctrl.

4. Нажмите кнопку Закрыть (Close).

5. В верхней части окна конструктора отображаются все три выбранные табли цы. Переместите их в поле окна так, чтобы были видны и таблицы, и связи между ними (рис. 6.9).

Окно конструктора запроса состоит из двух областей. Верхняя область пред ставляет собой свободное поле, в котором размещаются таблицы-источники данных. Эта область напоминает окно Схемы д а н н ы х (Relationships). Нижняя часть называется бланком запроса и заполняется в процессе конструирова ния запроса.

1 52 Занятие 6. Создание и выполнение запросов на выборку ЙР Запрос! : запрос на выборки -: ' -,-.

*Х i J * ^3 ЧJ КодАвтораЖ "" - - ~ КодАвтора КодИзда(И) Имя О5 ^-'~' КодРазделс Х> КодИэда>мя Фамилия j*J

', Рис. 6.9. Окно конструктора запросов 6. Чтобы добавить поле в запрос, необходимо в таблице-источнике в верхней части окна конструктора найти нужное поле и дважды щелкнуть на нем.

При этом в бланке запроса появится столбец, соответствующий выбранно му полю. Добавьте в запрос поля Имя и Фамилия из таблицы Авторы и Назва ние, КодМеста и Заметки из таблицы Издания (рис. 6.10).

/"*"* I КодАетора-^ КодЛвтора Имя ТипИздани;

.^,.

КодИздания Фамилия Jjrj ЗаметЩ :*1, Имя Фамилия КодМеста Заметки Ч Название Авторы Авторы Издания Издания Издания "" Х 0 0 И В S т\, щ Рис. 6.10. Определение полей запроса 7. Сформировав столбцы запроса, можно определить порядок сортировки. Для этого используется строка бланка С о р т и р о в к а (Sort). Порядок сортировки вы бирается с помощью поля со списком значений: По возрастанию (Ascending), По убыванию (Descending) и отсутствует (not sorted). По умолчанию во всех полях запроса устанавливается значение отсутствует (not sorted). Щелкните Выполнение запроса 1. на строке Сортировка (Sort) столбца Название и выберите в списке значение По возрастанию (Ascending).

8. В строке У с л о в и я отбора (Criteria) можно определить критерии, по которым будут отбираться записи в запросе. Например, вы хотели бы посмотреть, какие книги Дмитрия Сергеевича Лихачева есть в библиотеке. Для этого нужно вве сти в строку Условия отбора (Criteria) столбца Фамилия слово Лихачев (рис..6.11).

^ Запрос! : запрос на выборку Г ?ЩнШ > ! П^, ' :

' ^ *;

з | " | ^ ^ ^^ t ^l fl * >' / ДатаПокупьШ:

КодАвтора JЧ ^Ч ~~Ч КодАвтара > -л-. f X,- ;

з..4ncnoCTpah ;

Имя :

1 КодИздаьмя ^^ Г ! ТипИэдани;

>ц 1.*.?'.;

. Фамилия j|*J _1,.1МЛИЛ J^j ХХч iLJ Х Поле;

Имя Фамилия название КодМеста Заметки ^ ;

м i i iisiM.ХХ' Автора Авторы Издания Издания Издания f COptk^Ji Виа: по возрастанию В 0 0 Е Х'..-ч, ",! На -.'V rglHJ /словие етборз: пиизчев| ИЛИ!

11 ^ ' *н Рис. 6.11. Установка порядка сортировки и критериев выборки в запросе Знакомство с конструктором запросов мы продолжим в разделе о редактирова нии запроса. А пока выполним созданный нами запрос.

Выполнение запроса Чтобы выполнить запрос и увидеть его результаты, можно воспользоваться од ной из двух кнопок панели инструментов:

Вид (View) и Запуск (Run) * -j.

При выполнении запроса на выборку обе эти кнопки эквивалентны.

Нажмите кнопку Запуск ( R u n ). Результат выполнения запроса представлен па рис. 6.12. Б базе данных отобраны две записи.

Поэзия садов 'Большая комната.К семантике садов>парковых спгей [Дмитрий ХЛихачев Раздумья о России '. Большая комната Дмитрий ^Лихачев Рис. 6.12. Результат выполнения запроса 1 54 Занятие 6. Создание и выполнение запросов на выборку Убедившись в том, что запрос создан правильно, его можно сохранить. Закрой те окно запроса, ответив на вопрос о сохранении макета запроса Да (Yes). После этого будет выведено стандартное диалоговое окно, в которое нужно ввести имя запроса К н и г и по авторам и нажать кнопку ОК. В списке запросов появился еще один запрос. Обратите внимание на значок справа от имени запроса: этот значок обозначает запрос на выборку. Па следующем занятии мы познакомим ся с другими видами запросов.

Теперь для повторения запроса достаточно дважды щелкнуть на имени этого запроса или выделить имя запроса в списке и нажать кнопку О т к р ы т ь (Open) на панели инструментов окна базы данных (рис. 6.13).

:

рБиблиотекаДанные: база данный (формат Access 2QSOJ ' Сознание запроса в режиме конструктора '."Ч Х f!

Создание запроса с помощью мастера J Таблицы Изйания&Авторы Х Запросы Х у Образец Фильтра по Форме Рис. 6.13. Окно базы данных со списком запросов Создайте с помощью конструктора запрос, который позволит отобрать все кни ЗАДАНИЕ ги, которые были выданы читателям в сентябре 2003 г.

Редактирование запроса Режим конструктора предназначен не только для создания, но и для изменения запросов. Выделите запрос К н и г и по авторам и нажмите кнопку Конструктор (Design) на панели инструментов окна базы данных. Вы снова увидите бланк за проса, который вы составляли. Обратите внимание, что условие отбора (слово Л и х а ч е в ) заключено в кавычки. Это конструктор сам подставил необходимые для выполнения запроса кавычки вокруг символьной строки.

Добавление таблицы в запрос Добавим в запрос еще одно поле -- Раздел. Для этого нам придется добавить в запрос таблицу Разделы.

Редактирование запроса 1 ;

> 1. Нажмите па панели инструментов кнопку Отобразить таблицу (Show Table) [р|,: Появится диалоговое окно Добавление таблицы (Show Table).

2. Выделите в списке таблицу Разделы и нажмите кнопку Д о б а в и т ь (Add).

3. Нажмите кнопку Закрыть (Close) в окне Д о б а в л е н и е т а б л и ц ы (Show Table} В верхнем поле окна конструктора появится таблица Разделы, причем сразу показывается связь этой таблицы с таблицей И з д а н и я.

Если бы вы не установили сразу все необходимые связи в окне Схема дан ных (Relationships), связи между таблицами Издания и Разделы пришлось бы установить е окне конструктора. Сделать это можно, однако установ ленная таким образом связь действует только в этом запросе, в другом за просе связь пришлось бы устанавливать заново. Поэтому рекомендую не пропускать этап установки связей между таблицам и при раз работке струк туры базы данных. Тогда запросы потом строить будет легче.

Добавление полей в бланк запроса 1. Выделите поле Раздел в таблице Разделы.

Pages:     | 1 | 2 | 3 | 4 |   ...   | 7 |    Книги, научные публикации