Остальные рефераты: Access для юристов, Учебное пособие

Содержание

Введение

Основные понятия базы данных

Реляционная модель

Иерархическая модель

Сетевая модель

Практичесэие примеры

Вопросы для самопроверки

Литература


Введение

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

Программный комплекс MS Office является самым распространенным пакетом автоматизации работы в офисе. Поэтому СУБД (Система управления базами данных) Access, входящая в комплект профессиональной версии комплекса стала де-факто стандартной базой данных, используемой в современной юриспруденции.

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

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


Основные понятия базы данных

Поле - простейший объект базы данных, предназначенный для хранения значений одного параметра реального объекта или процесса.

Запись - совокупность логически связанных полей, характеризующих типичные свойства реального объекта.

Значения записи отражают свойства конкретного объекта.

Рассмотрим структуру созданной нами таблицы. Объектом в ней, как мы уже отмечали ранее, является песня, а конкретным объектом - конкретная песня, например "Тучи". Шапка в таблице - информационная модель объекта. Запись - конкретные значения параметров (Иванушки International, Pop, 1996, Россия).

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

Таким образом, мы перешли к структурированной форме записи данных в табличной форме. Что же такое структурирование?

Структурирование данных - процесс группировки данных по определенным параметрам.

В нашем примере мы представили данные в виде таблицы, в которой записью является набор сведений об одной песне, а каждое поле содержит значения соответствующего параметра песни. Иными словами, мы с вами сформировали базу данных, в которой каждый объект расположен в особом порядке. Чтобы отличить одну базу данных от другой, каждая из них должна иметь свое имя (в нашем примере - "Любимые песни"). Таким образом, мы можем дать определение базы данных.

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

Система управления базами данных (СУБД) - комплекс программных средств для создания баз данных, хранения и поиска в них необходимой информации.

База данных может быть основана на одной модели или на совокупности нескольких моделей. Любую модель данных можно рассматривать как объект, который характеризуется своими свойствами (параметрами), и над ней, как над объектом, можно производить какие-то действия.

Существуют три основных типа моделей данных - реляционная, иерархическая и сетевая

Реляционная модель

Термин "реляционный" (от латинского relatio - отношение) указывает прежде всего на то, что такая модель хранения данных построена на взаимоотношении составляющих ее частей. В простейшем случае она представляет собой двухмерный массив или двухмерную таблицу, а при создании сложных информационных моделей составит совокупность взаимосвязанных таблиц. Рассмотрим таблицу, в которой хранятся сведения об учениках школы (фамилия, имя, отчество, год рождения, класс, номер личного дела). Каждая строка такой таблицы называется записью. Каждый столбец в такой таблице называется полем. На основании этой таблицы создадим базу данных школьников и назовем ее "Наша школа".

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

Каждый элемент таблицы - один элемент данных.

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

Каждый столбец (поле) имеет уникальное имя.

Одинаковые строки в таблице отсутствуют.

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

Рассмотрим приведенный выше пример. Данные в нем представлены в виде таблицы, которая содержит сведения об учениках школы. Раз мы хотим создать базу данных, то данной таблице необходимо присвоить имя. Пусть она называется "Школа". В столбцах данной таблицы будем записывать параметры, характеризующие каждого ученика, а в строках будем записывать сведения об одном конкретном ученике. Каждый столбец (поле) также должен иметь свое имя. В нашем случае это: номер личного дела, класс, фамилия, имя, отчество, дата рождения. Имена полей в одной таблице не могут повторяться. Если вы хотите поместить в таблицу телефоны (домашний и рабочий родителей), вы должны создать два поля с разными названиями, например: Телдом и Телраб.

Над этой моделью базы данных удобно производить следующие действия:

сортировку данных (например, по алфавиту);

выборку данных по группам (например, по датам рождения или по фамилиям);

поиск записей (например, по фамилиям) и т.д.

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

Ключ - поле, которое однозначно определяет соответствующую запись.

В нашем примере в качестве ключа может служить номер личного дела учащегося.

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

Иерархическая модель

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

Узел - информационная модель элемента, находящегося на данном уровне иерархии.

Рассмотрим иерархическую модель на примере базы данных "Наша школа", построенной нами ранее. С точки зрения иерархической модели, она должна принять следующий вид: в состав школы входят классы; параллельные классы делятся по буквам, в состав каждого класса входят конкретные ученики. Модель может быть представлена в виде схемы


Уровень 1                                       Школа


Уровень 2          Первые классы   Вторые классы   Третьи классы

Уровень 3         1 «А»   1»Б»           2«А»   2 «Б»         3 «А» 3 «Б»
Уровень 4                  Отдельные ученики разных классов

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

несколько узлов низшего уровня связано только с одним узлом высшего уровня;

иерархическое дерево имеет только одну вершину (корень), неподчиненный никакой другой вершине;

каждый узел имеет свое имя (идентификатор);

Существует только один путь от корневой записи к более частной записи данных.

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

Сетевая модель

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

             Педагогический коллектив

Математик         Информатик       Историк

 
9 А                            9Б                              9В


СОЗДАНИЕ БАЗЫ ДАННЫХ

 

 

Подпись:

 

 

 

 

 

 

 

 

 

 

 

 

 

ОПОРНЫЕ СХЕМЫ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Практические примеры

ПРИМЕР 1:

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

Информационное описание договора можно представить в виде системы атрибутов:

1. Шифр договора (однозначно идентифицирует договор).

2. Вид договора (например, купля-продажа и т.п.).

З. Заказчик (код организации в виде аббревиатуры).

4. Исполнитель (код организации в виде аббревиатуры).

5. Дата заключения.

б. Дата окончания (срок действия).

7. Тип штрафных санкций (определяет способ начисления штрафа при ненадлежащем выполнении договора в срок: % от суммы при типе 1, или % от суммы за каждый день задержки выполнения договора при типе 2; договор может не предусматривать штрафных санкций).

8. Штрафные санкции (% от суммы договора).

9. Договорная сумма.

10. Состояние договора (Имеет два значения: "д" действующий, "о" - оконченный),

1 1. Дата выполнения (определяет день действительного выполнения договора).

12. Задержка выполнения (количество дней - определяется как разница между датой выполнения и договорной датой окончания).

13. Сумма штрафа (начисляется по просроченным договорам при наличии штрафных санкций).

14. Штрафная задолженность (наличие долга по штрафу, имеет два значения: "да" и "нет".

Атрибуты 1-10 являются входными, т.е. их значения известны при внесении информации о договоре в базу данных; все они являются обязательными, кроме атрибутов 7-8, так как штрафные санкции могут отсутствовать. Атрибут "состояние договора" является изменяемым в отличие от входных атрибутов 1-9.

Атрибуты 11-14 являются определяемыми: их значения "вычисляются" при наступлении определенного события - выполнения договора.

Информационное описание контрагента можно представить в виде системы атрибутов:

1 Код контрагента (однозначно определяет контрагента).

2. Наименование организации.

3. Адрес организации.

4. Телефон организации.

5. Банковские реквизиты.

Все атрибуты являются входными и обязательными.

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

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

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

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

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

МВ Ассеss поддерживает следующие типы данных: текстовый, числовой, денежный, счетчик, дата/время, логический, поле МЕМО, поле объекта OLE, гиперссылка, мастер подстановок.

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

 

Текстовое поле. При вводе имени поля М Ассеss по умолчанию присваивает ему текстовый тип данных с шириной поля, равной 50. Текстовые поля могут содержать буквы, цифры и специальные символы. Максимальная ширина поля составляет 255 символов.

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

Поле денежного типа. Денежное поле аналогично числовому полю. Свойство "Формат поля" устанавливается автоматически в значение "денежный", а свойство Число десятичных знаков принимает значение, равное двум знакам после запятой. Размер поля составляет 8 байт.

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

Поле дата/время Поля даты можно вводить и отображать в нескольких форматах. Конкретный вариант устанавливается в свойстве "Формат поля". Существуют следующие форматы отображения дат и времени.

Логическое поле. Логические поля используются для хранения данных, которые могут принимать одно из двух значений. Свойство "Формат поля" позволяет использовать специальные форматы или один из трех встроенных:

<Истина/Ложь", "Да/Нет" или "Вкл/Выкл". Значения "Истина", "Да" и "Вкл" эквивалентны логическому значению "Тгuе". а значения "Ложь". "Нет" и "Выкл" логическому значению "Fаlsе".

Текстовое ноле произвольно и длины. Текстовые поля произвольной длины (поля МЕМО) могут содержать те же типы данных, что и простые текстовые поля. Отличие в том, что размер воля МЕМО не ограничен 255 символами, а может содержать до 65 535 символов.

Поле объекта ОЁЕ. Это поле используется для хранения в таблицах изображений и других двоичных данных (например, электронных таблиц МS Ехсеl, документов MS Word, рисунков, звукозаписей).

Поле гиперссылки. Поля этого типа предназначены для хранения строк, состоящих из букв и цифр и представляющих адрес ОLЕ \Wеb-объектов Интернета.

Тип данных мастер подстановок. Выбор этого поля запускает мастер подстановок, предназначенный для создания поля, в котором предлагается выбор значений из раскрывающегося списка, содержащего набор постоянных значений или значений из другой таблицы. Размер данного поля совпадает с размером ключевого поля, используемого в качестве подстановки. для рассматриваемого примера база данных "ДОГОВОР" должна содержать две таблицы: "Договоры" и "Контрагенты".


Таблица "Договоры" имеет следующую структуру:

Таблица Контрагенты имеет следующую структуру:


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

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

Чтобы создать другую таблицу в уже существующей базе данных, необходимо выполнить следующую последовательность действий (если база данных открыта):

После создания таблицы выполняется ввод данных. Для этого следует выполнить следующую последовательность действий:

Ввод данных можно осуществлять. используя форму, для чего следует выполнить следующую последовательность действий:

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

Данные в базе данных можно редактировать (изменять значения отдельных полей), а также удалять "устаревшие" записи. Чтобы изменить значения какого-либо поля в записи, необходимо установить указатель на эту запись, а затем, используя клавишу Таb выделить нужное поле и внести в него изменения.

Для удаления записи необходимо выполнить следующую последовательность действий:

1. Маркировать запись (Правка → Выделить запись).

2. Удалить запись (Правка → Удалить запись).

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

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

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


Это осуществляется следующим образом:

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

Для внесения изменений в данные таблицы целесообразно использовать форму, в которой содержатся ключевое (поисковое) поле и поля, подлежащие изменению. Например, для внесения сведений о выполнении договора форма должна содержать следующие поля: "Шифр", "СОСТ", "ДАТА ВЫП".

Поскольку не всегда удается разработать проект базы данных, полностью удовлетворяющий всем потребностям (некоторые из них появляются в процессе эксплуатации), возникает необходимость в изменении ее структуры:

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

для создания нового объекта необходимо, находясь в окне Бд, открыть соответствующую вкладку и создать объект (например, таблицу), как это было описано ранее.

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

Упорядочение данных на экране.

В процессе работы с данными в базе возникает необходимость изменить порядок их следования, сгруппировать данные по значениям определенных полей. Для упорядочения данных по одному какому-либо полю необходимо маркировать соответствующий столбец, а затем выполнить последовательность действий:

Записи - + Сортировка - По возрастанию/По убыванию

Для многоуровневой сортировки используется расширенный фильтр. Порядок действий при осуществлении многоуровневой сортировки таков:

Фильтр → Расширенный фильтр → Заполнение бланка → Выполнение

 

Упорядочение (индексирование) данных в таблице.

Одним из основных требований, предъявляемых к СУБД, является возможность быстрого поиска требуемых записей среди большого объема информации В упорядоченной последовательности данных поиск нужного данного происходит значительно быстрее, чем в неупорядоченной. Средством упорядочения записей в MS Access являются индексы. В зависимости от количества полей, используемых в индексе, различают простые и составные индексы. В MS Access допускается создание произвольного количества индексов. Индексы создаются при сохранении макета таблицы в автоматически обновляются при вводе и изменении записей. Можно в любое время добавить новые или удалить ненужные индексы в окне конструктора таблиц. Требование уникальности индекса в МS Ассеss не является обязательным. Для ускорения поиска требуемой информации могут быть использованы индексы, не являющиеся уникальными.

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

Создание составного индекса. Индексы, содержащие несколько полей, следует определять в окне индексов. для создания составного индекса следует выполнить следующую последовательность действий:

1) открыть таблицу, для которой создается составной индекс в режиме конструктора;

2) нажать кнопку Индексы на панели инструментов (на экране откроется диалоговое окно "Индексы");

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

4) выбрать первое поле индекса в столбце Имя поля той же строки;

5) выбрать имя следующего поля индекса в столбце Имя поля следующей строки (в этой строке поле столбца Индекс следует оставить пустым);

б) повторить п.5 для каждого следующего поля, включаемого в индекс (индекс может включать до 10 полей);

7) закрыть диалоговое окно.

По умолчанию задается порядок сортировки "По возрастанию". Для сортировки конкретного поля по убыванию выбрать в столбце Порядок сортировки для этого поля значение По убыванию.

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

Запросы можно создавать самостоятельно и с помощью мастеров. Мастер запросов автоматически выполняет основные действия в зависимости от ответов пользователя на поставленные вопросы. Самостоятельно разработать запросы можно в режиме Конструктора.

В Ассеss можно создавать следующие типы запросов:

запрос на выборку;

запрос на изменение (запрос на обновление, удаление и добавление записей таблицы);

запрос с параметрами;

перекрестный запрос;

запросы SQL (запросы на объединение, запросы к серверу. Управляющие запросы. подчиненные запросы).

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

Процесс формирования запроса можно представить в виде следующей схемы:

Порядок формирования запроса в бланке:

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

2. В строке "Сортировка" указать вид упорядочения по данному полю (если оно необходимо).

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

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

Примечание. Критерии отбора для разных полей в одной строке связываются логической операцией "И", а критерии отбора в разных строках - "Или".

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

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

Задание 1. Составить календарь заключения договоров в феврале 2000 указан дату заключения, шифр договора. исполнителя и сумму. Вид запроса и ответ представлены на рис.

 

Вычисления в запросе.

Над отобранными в результате выполнения запроса данными можно производить вычисления, используя групповые функции: SUM (сумма), AVG (среднее значение), COUNT (количество), MIN (минимальное значение), МАХ (максимальное значение) и т.п. Отобранные данные могут быть разбиты на группы во значениям какого-либо поля (применяется функция группировки), и, для каждой такой группы вычисляются значения групповых функций по отдельным полям.

Порядок формирования запроса в бланке:

Внести в блок запроса дополнительную строку "Групповая операцию", используя кнопку ∑.

2. Перенести в строку "Поле" из списка полей таблиц (ы) имена полей, на которые накладываются условия, и/или относительно значений которых данные разбиваются на группы, и/или по которым вычисляются значения.

З. В строке "Условие отбора" и последующих строках задать критерии отбора в виде логических выражений.

4. В строке "Групповая операция" в "группировочных" полях указать способ разбиения на группы - функцию группировки (группировка - разбиение отобранных данных на группы, условие группа данных по критерию отбора), в обрабатываемых полях - нужную групповую функцию.

Примечание. Для определения количества записей, отвечающих условию отбора, целесообразно использовать функцию Count для ключевого поля (уникального атрибута), в строке "Групповая операция" для полей с критериями отбора указать значение "условие".

5. В строке "Сортировка" указать вил упорядочения по данному полю (если оно необходимо).

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

7. Выполнить запрос. (Результаты вычислений помещаются в столбцы с именами <имя функции> <имя поля>).

Задание 2. Определить, какое количество договоров и на какую сумму было заключено в феврале 200 г. Вид запроса и ответ представлены на рис.

 

Задание З. Определить, какое количество договоров и на какую сумму заключено с каждым исполнителем в феврале 2000 г. Вид запроса и ответ представлены на рис.

 

Обновление значений полей. В течение "жизни" объекты претерпевают изменения, которые либо вносятся в информационное описание "из вне", либо определяются (вычисляются) на основе значений некоторых атрибутов. Для определения значений "вычисляемых" полей для группы отобранных записей в MS Access используют запрос на обновление.

Порядок формирования запроса на обновление:

1. Создать и проверить запрос на отбор данных.

2. Добавить в запрос поля, подлежащие обновлению (вычислению).

З. Добавить в бланк запроса строку "Обновление", используя команду Обновление из меню Запрос.

4. Внести в строку ‚<Обновление" для каждого из обновляемых полей выражение для вычисления его значения.

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

Задание 4. Вычислить задержку по договорам, выполненным после 31 марта 2000 г. Вид запроса на обновление представлен на рис.

 

Организация связей между таблицами.

информация в базе данных, как правило, хранится в нескольких таблицах, что позволяет избежать дублирования информации. Между таблицами в базе данных существуют связи, которые позволяют согласовывать или объединять данные из нескольких таблиц. Связи между таблицами можно разбить на четыре типа с отношениями:

• один-к--одному:

• один-ко-многим;

• многие-к-одному;

• многие-ко--многим.

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

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

Связь с отношением многие-к-одному. Это на самом деле та же связь, что и один-ко-многим, только взятая с другого конца.

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

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

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

Порядок создания связей между таблiщами1:

1. Вызвать окно схемы данных (Сервис Схема данных)

2. Добавить таблицы. (Если не появилось окно добавления таблиц, следует нажать кнопку Добавить.

З. Протянуть связь от поля главной таблицы к полю связной таблицы.

4. В появившемся окне "Связи" установить (если это необходимо) флажок в поле "Обеспечение целостности данных" и нажать кнопку "ОК".

5. Повторить п.3-4 для других таблиц.

б. Закрыть окно схемы данных, сохранить результаты.

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

Формы позволяют пользователю вводить данные в таблицы в удобном виде, без обращения к самим таблицам, а также выводить результаты запросов в красивом оформлении. В отличие от таблиц и запросов, которые лучше формировать вручную, формы удобно готовить с помощью средств автоматизации. для этого есть специальное средство - Автоформы, Существует три вида автоформ: в столбец, ленточные и табличные. Автоформа "в столбец" отображает все поля одной записи (она удобна для ввода и редактирования данных). "Ленточная" автоформа отображает одновременно группу записей - ее удобно использовать для вывода данных. Табличная форма ничем не отличается от таблицы, на которой она основана.

Для создания автоформы необходимо при открытой вкладке Формы в окне "База данных" воспользоваться кнопкой Создать, В открывшемся окне Новая форма выбирают тип автоформы и таблицу (или запрос), на которой она основывается.

Создание форм с помощью Мастера. Мастер форм запускается из окна "База данных" щелчком на значке Создание формы с помощью мастера на вкладке Формы. Далее выбирают таблицы и поля, которые войдут в будущую форму. Потом выбирают вид формы. Затем выбирают стиль оформления формы. На последнем этапе выполняют сохранение формы под заданным именем. Можно включить переключатель Изменить размер формы, который открывает только что созданную форму в режиме Конструктора.

Создание формы в режиме Конструктора. Форма имеет три основных раздела; область заголовка, область данных и область примечания Линии, разделяющие разделы, перетаскиваются с помощью мыши, что позволяет изменять размеры разделов. Разделы заголовка и примечания имеют чисто оформительское назначение. В разделе данных содержатся элементы управления, с помощью которых выполняется отображение данных или их ввод. Также здесь можно разместить дополнительные элементы управления для автоматизации ввода данных (переключатели, флажки. списки и другие. типичные для приложений Windows).

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

Для графического оформления служат элементы управления Рисунок, Свободная рамка объекта и Присоединенная рамка объекта. Рисунок выбирается из графического файла и вставляется в рамку. Элемент Свободная рамка объекта отличается тем, что это не обязательно рисунок - это может быть любой другой объект ОLЕ, например мультимедийный. Элемент Присоединенная рамка объекта тоже служит для оформления, но его содержимое берется из таблицы базы данных, если она имеет поле объекта о [Е. В этом случае при переходе между записями содержимое этого элемента будет меняться.

Дизайн формы. Так как обычно формы служат для ввода и отображения данных, к ним предъявляют повышенные требования по дизайну. Элементы формы должны быть выровнены, для чего используется команда Формат - Выровнять. Для равномерного распределения элементов используют средства меню Формат-Интервал по горизонтали или Формат-Интервал во вертика.1и допускается ручное изменение размеров и положения элементов управления, однако таким путем сложно добиться качественного результата. При работе вручную используют перетаскивание маркеров, которые видны вокруг элемента управления в тот момент, когда он выделен. Особый статус имеет маркер верхнего угла.

Задание для самостоятельной работы

 

Связать две таблицы по схеме:

Внести в базы данных "Договоры" и "Контрагенты" следующую информацию:

3. Создать форму "Ввод" для внесения данных о вновь заключенных договорах. Вид формы - В столбец.

4. Внести в базу данных сведения о 5 вновь заключенных договорах с использованием формы.


Ввод:

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

6. Создать форму "Выполнено" для внесения сведений о выполнении договоров, внеся в нее поля: "ШИФР", "СОСТ", "ДАТА_ВЫП". Вид формы - В столбец.

Указание. Использовать средство Мастер форм.

7. Внести в базу данных сведения о выполненных договорах.

Указание. Использовать форму "Выполнено".

8. Упорядочить базу данных по дате окончания договора.

9. Упорядочить базу данных по заказчику.

10. Упорядочить базу данных по исполнителю.

11. Отсортировать базу данных по исполнителю и по дате окончания договора.

12. Составить календарный план окончания договоров в марте месяце, указан дату окончания, шифр, исполнителя, сумму.

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

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

15. Вычислить задержку выполнения по оконченным договорам (ДАТА_ВЫП-ДАТА_ОКОН).

16. Определить общее количество договоров, выполнение которых задержано.

17. Составить список фирм, задерживающих выполнение договоров с указанием количества просроченных договоров.

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

19. Вычислить штрафы по просроченным договорам (если ТИП Ш_С=1, то СУММА*Ш_С/100, если ТИП Ш_С=2, то СУММА*Ш_С/100*ЗД; ДОЛГ=Истина).

Указание.1. Задать условия отбора - ЗД> О и ТИП_ ШС = “1” OR “2”.

2. Для вычисления штрафа использовать функцию управления ЕСЛИ - IIf (“expr”; ”truepart”; ”falsepart”). С помощью по - строителя набрать следующее выражение:

IIf (ТИП_ШС="1"; СУММА*Ш_С/100; СУММА*Ш_С/100*ЗД)

20. Составить список договоров, по которым выставлены штрафы, указан исполнителя, шифр договора и сумму штрафа.

21. Внести сведения о выплате штрафа.

ШИФР 1441 2134 4001

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

Указание. При составлении запроса разорвать (удалить) связь:

"КОД"_ "Контрагенты" → "ИСП"_"Договоры".

23. Составить список договоров с невыплаченным штрафом, указав наименование исполнителя, адрес, телефон, шифр и сумму долга по договору.

Указание. При составлении запроса разорвать (удалить) связь:

"КОД"_ "Контрагенты" → "ЗАК"_"Договоры".

ПРИМЕР 2:

Загрузите Access.

Выберите Создание базы данных, Новая база данных, в окно Файл внесите имя karta, укажите папку диск А и щелкните на кнопку Создать.

Выберите представление Таблица, Нажмите кнопку Создать, выберите режим Конструктор и нажмите клавишу ОК.

Создайте поля:

Имя поля Тип данных
Номер дела Текстовый
Дата поступления Дата
Истец Текстовый
Ответчик Текстовый
Сущность иска Текстовый
Сумма иска Денежный
Порядок поступления иска Текстовый
Дата к слушанию Дата

Сохраните: Файл, Сохранить как, присвоить имя КАРТА1 и ОК., когда программа напомнит об отсутствии первичного ключа и предложит создать его, нажмите кнопку ДА. В первой строке описания структуры таблицы появится поле ID с типом данных Счетчик.


Переключитесь из режима Конструктора в режим Таблиц и внесите данные:

Номер Дата Истец Ответчик Сущность иска Сумма иска Порядок Дата к слушанию
2-115/к 12.02.99 Андреев Редакция О защите чести и достоинства 0 Жалоба 22.02.99
2-116/к 12.02.99 Карабанова М. Карабанова М. О признании права собственности 100000 Протест 22.02.99
2-122/т 17.02.99 Колосова Д. Отдел Об установлении факта нахождения 0 Жалоба 10.03.99
2-126/к 10.08.98 Сидорова Н Сидоров В. О принудительном обмене 3000 Жалоба 10.09.98
2-127/т 10.08.98 Петров А. Садоводческое О восстановлении в членах 0 Жалоба 17.09.98
2-1325/м 6.01.99 Малинина Н Малинин Г. О разделе имущества 9250 Жалоба 14.06.99
2-1355/к 8.01.99 АО Балашова З. О выселении 0 Протест 20.08.99
2-1386/т 12.02.99 Николаенко В. Администрация О возмещении морального вреда 30000 Жалоба 22.02.99
2-286/м 15.02.99 Белова О. Белов Д. 0 Жалоба 1.03.99
2-349/м 5.09.98 Мельников В. Нотариус 1-й 0 Жалоба 10.10.99

Улучшите вид таблицы подгоном ширины.

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


Образцы полей по примеру:

Имя поля Тип данных
Номер дела Текстовый
Откуда поступило Текстовый
Народный судья Текстовый
Председатель Текстовый
Докладчик Текстовый
Прокурор Текстовый
Дата Начала Слушания Дата
Дата Завершения Слушания Дата
Решение суда Текстовый
Результат Текстовый

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

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

В этом же окне установите первичный ключ и нажмите Следующий., выберите пункт Готово.

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

Перейдите в режим таблиц, и введите данные из таблицы:

Номер дела Откуда Судья Председатель Докладчик Прокурор

Дата

Нач

Дата

Завер

Решение Результат
2-115/к Проле-тар-ский Каме-нева Г. Коровин К. Коровин Ухин В. 22.02.99 22.02.99 Иск Оставлено
2-116/к Проле-тар-ский Цвет-ков А. Коровин К. Коровин Ухин В. 22.02.99 22.02.99 Иск Отменено
2-122/т Камен-ский Панин Л. Треплев Б Иванченко Ефремов 10.03.99 10.03.99 В иске Отменено
2-126/к Перво-май-ский Мухин И. Коровин К Абрамова Ухин В. 10.09.98 10.09.98 В иске Отменено
2-127/т Перво-май-ский Мухин И. Треплев Б. Треплев Ефремов 17.09.98 17.09.98 Иск Оставлено
2-1325/м Октя-брь-ский Свет-лова И. Треплев Б. Треплев 14.06.99 14.06.99 Иск Отменено
2-1355/к Октя-брь-ский Свет-лова И. Муравьев Н. Ногина П. 20.08.99 20.08.99 Иск Отменено
2-1386/т Нек-линов-ский Пчел-кин В. Коровин К. Абрамова 22.02.99 22.02.99 Дело Оставлено
2-286/м Некли-нов-ский Пчел-кин В. Треплев Власов В. Зосина 1.03.99 1.03.99 Иск Отменено
2-349/м Саль-ский Ильин К. Муравьев Н. Муравьев Н. 10.10.99 10.10.99 В иске Отменено

Сохраните таблицу под названием Судьи1.

ЗАНЕСЕНИЕ ДАННЫХ В ТАБЛИЦУ С ПОМОЩЬЮ ФОРМЫ

Создайте простую форму для таблицы КАРТА. Таблица, Карта1, Вставить Автоформа.


Переместитесь на вторую запись с помощью кнопки 4, измените фамилию ответчика, перейдите в поле Дата к слушанию клавишей Tab, измените дату. Добавьте новую запись в конец таблицы. Удалите последнюю запись.

СВЯЗИ В БАЗАХ ДАННЫХ.

Выберите команду Сервис Связи, дважды нажмите мышью на каждой из таблиц, а затем нажмите кнопку Закрыть. Откроется окно: Связи, которое содержит два списка полей. Чтобы установить связь между двумя таблицами, нажмите и удерживайте кнопку мыши на поле Номер дела таблицы КАРТА, перенесите это поле в список таблицы Судьи1 выше поля Номер дела. Когда появится маленький прямоугольник, отпустите кнопку мыши.

В открывшемся окне Связи нажмите кнопку Создать. Появится окно с графическим изображением связи между таблицами.

ИНФОРМАЦИОННЫЙ АНАЛИЗ НА ОСНОВЕ ЗАПРОСОВ.

Откройте базу данных Карта 1.

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

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

Нажмите на кнопку Закрыть, появится окно запросов.

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

В строке сортировки в поле Дата к слушанию установите опцию: по убыванию.

В строке критериев в поле Сумма иска занесите условие: >0.

Запустите запрос на выполнение.

Присвойте запросу имя и сохраните его на дискете. Выполните команду Файл, Сохранить как…/Экспорт. В поле ввода Новое имя поместите имя Вашего запроса, например, Сумма иска.

КОНТРОЛЬ ЗА СРОКАМИ И СОСТОЯНИЕМ ДЕЛ.

Откройте базу данных Карта 1.

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

В окне Новые запросы выберите из списка пункт Конструктор и нажмите Ок.

В окне Добавление таблицы выберите таблицу Карта и нажмите кнопку Добавить.

Нажмите на кнопку Закрыть, появится окно конструктора запросов: Запрос1: запрос на выборку.

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

В строке критериев в поле Сущность иска занесите выражение: "О взыскании*"Or "О восстановлении*". Оно автоматически преобразится к виду: Like "О взыскании*" Or Like "О восстановлении*". Бланк запроса готов.

Запустите запрос на выполнение.

Сохраните запрос с именем Запрос Или.

Вернитесь в конструктор запроса ЗапросИли, добавьте в Бланк запроса поле Дата к слушанию и занесите для этого поля критерий: Between 01.09.98 And 01.10 98.

Запустите запрос на выполнение, сохраните запрос с новым именем.

ФОРМЫ И ОТЧЕТЫ

Откройте базу данных Карта1, выберите вкладку Запросы, в списке запросов выберите Сумма иска.

В строке меню выберите Вставка Автоформа.

Сохраните форму, присвоив ей имя Форма Сум.

Создайте еще одну форму для запроса Сумма иска, используя Мастер форм.

Откройте базу данных Карта1.

Перейдите на вкладку Формы, нажмите кнопку Создать, откроется окно диалога: Новая форма со списком режимов создания форм и окошком для выбора таблиц.

Выберите таблицу Сумма иска.

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

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

Появится последний экран, занесите заголовок формы: Форма СумИск и укажите режим: просиотра и ввода информации, нажмите кнопку Готово.

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

Чтобы работать с объектом, его надо выбрать, это можно сделать в режиме Конструктора, щелкнуть мышью на поле ввода, одновременно появится значок (метка для перемещения) и над надписью.

Откройте базу данных Карта1, перейдите на вкладку Формы

Выберите поле Номер Дела, переместите это поле вместе с надписью в центр формы.

Выделите поле Дата к слушанию и нажмите клавишу Delete, поле исчезло.

Добавьте поле Дата к слушанию, которое вы удалили, нажмите кнопку Списка полей на панели инструментов и выберите поле: Дата к слушанию. Теперь нажмите кнопку мыши и, удерживая ее нажатой, перетащите это поле в форму. Отпустите кнопку мыши и посмотрите, что получилось.

Нажмите кнопку Свойства на панели инструментов. Для просмотра всех свойств переходите на разные вкладки.

Сохраните форму с именем Форма Карта.

СОЗДАНИЕ ОТЧЕТОВ.

Откройте базу данных Карта1.

Выберите вкладку Отчеты,, нажмите кнопку Создать.

В списке окна диалога Новый отчет выберите пункт Автоотчет: в столбец.

В нижнем окошке этого же окна задайте таблицу КАРТА, нажмите ОК.

Сохраните отчет и вернитесь в окно базы данных.

В окне диалога: Новый отчет из списка режимов выберите Автоотчет: в ленту.

В нижнем поле окна выберите таблицу

Запрос 2. КартаСудьи, нажмите ОК.

В окне: Просмотр выберите команду Вид Конструктор отчетов.

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

Перейдите в режим просмотра.

Дайте имя отчету и сохраните его.

СОЗДАНИЕ ФИНАНСОВЫХ ДОКУМЕНТОВ.

Откройте базу данных Карта 1.

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

В окне Новые запросы выберите из списка пункт Конструктор и нажмите кнопку ОК.

В окне диалога: Добавление таблицы выберите таблицу ДОХОД и нажмите кнопку Добавить. После чего в окне запроса появится список полей таблицы ДОХОД, нажмите на кнопку Закрыть, появится окно конструктора запросов: Запрос1: запрос на выборку.

Перенесите нужные поля (Работа и Доход) в Бланк запроса, каждое в свою ячейку.

 

Вопросы для самопроверки

1. Что такое база данных?

2. Какое применение могут найти базы данных в Вашей работе?

З. Когда бывает необходимо представить данные в виде таблицы?

4. Для чего нужны компьютерные технологии при работе с базами данных?

5. Как построить таблицу баз данных?

6. Чем столбцы отличаются от строк в базах данных?

7. Какие возможности предоставляет Ассе7.0 при работе с базами данных?

8. Какие объекты входят в базу данных?

9. Как создавать таблицы?

10. Как связывать между собой таблицы баз данных?

11. Что такое первичные ключи?

12. Как хранить и изменять данные в базах данных?

13. Как осуществляется выборка данных на основе запросов?

14. Как выбрать данные сразу из нескольких таблиц?

15. Как задавать критерии выбора в запросах?

16. Как использовать простые вычисления в запросах?

17. Как отобразить на экране данные с помощью форм?

18. Как подготовить форму к печати и распечатке?

19. Как создать простой отчет?

20. Как создать отчет с помощью Мастера отчетов?

21. Какие возможности можно использовать при печати отчета?


Литература

1. Острейковский В.А. Информатика: Учеб. для вузов. - М.: Высш. шк., 2000. - 511 с.

2. Информатика: Базовый курс / С.В. Симонович и др. - СПб.: Питер, 2002. - 640 с.

3. Информатика для юристов и экономистов / Симонович С.В. и др. - СПб: Питер, 2003. - 688 с.

4. Информатика. / А.Н. Степанов. - СПб.: Питер, 2002. - 608 с.

Информатика и математика для юристов/ Т.М. Беляева и др. - Москва, 2002.

5. Основы информатики и математики для юристов/ Д.Ф. Богатов, Ф.Г. Богатов - Москва, 2002.

6. Компьютер для юриста / Р.Е. Симонян - Феникс, Ростов-на-Дону, 1998


Еще из раздела Остальные рефераты:


 Это интересно
 Реклама
 Поиск рефератов
 
 Афоризм
Объявления в аэропорту : - Хотел совершить посадку самолет выполнявший рейс №13...
 Гороскоп
Гороскопы
 Счётчики
bigmir)net TOP 100