int
Таблица
6
|
Наименование поля
|
Название поля
|
Тип данных
|
Длина
|
1.
|
Код учреждения
|
id_uch
|
int
|
|
2.
|
Название
|
nazvanie
|
varchar
|
50
|
3.
|
Адрес учреждения
|
add_uch
|
varchar
|
50
|
4.
|
Сайт
|
website
|
varchar
|
50
|
5.
|
Телефон 1
|
tel1
|
varchar
|
50
|
6.
|
Телефон 2
|
tel2
|
varchar
|
50
|
Таким образом, реляционная модель базы данных выглядит следующим образом
(рис. 2):
Рис. 2. Реляционная модель базы данных.
4. Создание и разработка базы данных
.1 Создание базы данных
база реляционный электронный записной
После завершения этапа даталогического проектирования приступаем к
созданию базы данных в MS SQL Server.
Создание таблиц БД производится с помощью мастера создания таблиц. На
главной странице в поле Databases выбираем New Database, вводим имя новой базы данных «book» .
Новая созданная БД отобразится в списке баз данных (рис. 3).
Рис. 3. Создание новой БД
4.2 Создание таблиц
Для создания таблиц в списке баз данных открываем узел book и щелкаем правой кнопкой мыши на
пункт Tables. В появившемся меню выбираем пункт New Table. На экране появится диалоговое окно для создания
структуры новой таблицы. В столбце Column Name указываются
атрибуты таблицы, в столбце Data Type - типы данных
и их длины, в столбце Allow NULL - допускаются
ли пустые значения в конкретном поле или нет.
При создании таблицы обязательно нужно указывать ее первичный ключ, т.к.
ключи (и первичные и внешние) - это средство обеспечения целостности базы
данных.
Выбираем столбец, который будет первичным ключом и нажимаем кнопку Set Primary Key. Если в таблице первичный ключ составной, то выделяем
одновременно столбцы, входящие в состав первичного ключа, и также нажимаем Set Primary Key.
Типы и размеры атрибутов таблиц представлены на рис. 4.
Рис. 4.a. Проект таблицы Sotrudnik
Рис. 4.b. Проект таблицы Rabotaet
Рис. 4.c. Проект таблицы Organiz
Рис. 4.d. Проект таблицы Friend
Рис. 4.e. Проект таблицы Uchat
Рис. 4.f. Проект таблицы Zanyat
4.3 Поддержка целостности данных в реляционной БД
Целостность данных - свойство БД, означающее, что она содержит полную,
непротиворечивую информацию, адекватно отражающую предметную область.
Рассмотрим основные способы поддержания целостности, используемые в
проектируемой БД.
Логическая целостность означает отсутствие логических ошибок в БД, к
которым относятся нарушение структуры БД или ее объектов, удаление или
изменение установленных связей между объектами, ввод неправильных данных. Для
обеспечения логической целостности данных накладывают ограничения целостности -
условия, которым должны удовлетворять хранимые в базе данные. Существует два
способа реализации ограничений целостности: декларативная и процедурная
поддержки. [1]
4.3.1 Декларативная поддержка целостности
Декларативная поддержка заключается в определении ограничений средствами
языка описания данных. Эти ограничения относятся к немедленно проверяемым
ограничением, которые проверяются непосредственно в момент выполнения операции,
которая может нарушить целостность.
Она включает в себя структурные ограничения и семантические.
Структурные ограничения используются для придания данным осмысленной
структуры. К ним относятся:
. Целостность сущности. При проектировании БД каждая таблица
соответствует некоторому объекту внешнего мира. В таблице присутствует
первичный ключ, который однозначно определяет каждую запись и не может быть
пустым.
. Ссылочная целостность. Значение непустого внешнего ключа должно
быть равно одному из текущих значений ключа другой таблицы.
. Функциональные зависимости определяют все возможные состояния
БД. Необходимо следить за их полнотой и по возможности избегать избыточности.
Поддержка семантической целостности процедурным путем включает все
возможные проверки не на уровне СУБД, а на уровне процедур обработки и ввода
данных средствами среды программирования, с помощью которой создается
программа. Хранимая процедура - это подпрограмма, работающая на сервере и
управляющая его процессами.
В разрабатываемой БД использовались следующие хранимые процедуры:
Информация о ближайших днях рождения:
@d AS datetime@d = getdate()FIO_dr, birthdayFriend WHERE(yy, YEAR(@d) -
YEAR(birthday), birthday) > @d(dateadd(dd, 7, @d)) > YEAR(@d)(dd, 7, @d)
> DATEADD(yy, YEAR(dateadd(dd, 7, @d)) - YEAR(birthday), birthday)
5. Разработка приложения
Для работы с базами данных через приложение используются различные
драйвера баз данных. Наиболее перспективной является технология OLE DB и в частности упрощенная ее модификация ActiveX Data Object. В качестве среды программирования приложения
рассматривается среда Borland Delphi 7.
Cреда
программирования Delphi 7.0 включает в себя полный набор визуальных
инструментов, который позволяет быстро создавать приложения, предназначенные
для работы с базами данных, различной степени сложности - от простейших
программ до профессиональных. Delphi использует структурный
объектно-ориентированный язык программирования Object Pascal, который сочетает
простоту программирования с высокой эффективностью.
5.1 Соединение с базой данных
Создаем и сохраняем новый проект Project1 в Delphi 7. В процессе работы будем использовать такие
компоненты, как:
ADOConnection (вкладка ADO) -
инкапсулирует подключение к БД;
ADOQuery - запрос к БД;
ADOTable - таблица базы данных;
DataSource (вкладка Data Access) - источник данных для визуальных
компонентов; служит для связывания визуальных компонентов с наборами данных
(вроде ADOQuery); DBGrid (вкладка DataControls) - табличное представление данных.
Для подключения к базе данных на вкладке Поставщик данных выбираем Microsoft SQL Server выберем Microsoft OLE DB provider for SQL Server. В раскрывающемся списке выбираем имя сервера. Под
пунктом два вводим имя пользователя. В третьем пункте выбираем базу данных в
раскрывшемся списке. Нажимаем кнопку Проверить подключение и затем нажимаем
кнопку Ok.
5.2 Разработка главной формы приложения
На главной форме будут располагаться только элементы Buttom, при нажатии на которые будут
осуществлять переход на другие формы. Делаем двойной щелчок по созданной кнопке
и прописываем следующий код:
procedure TForm1.Button1Click(Sender: TObject);
begin.Show;;
Помещаем на форму компонент Image. В свойстве picture вводим путь к
картинке.
Главная форма выглядит следующим образом (рис.8).
Рис. 5. Главная форма
Для связи всех остальных форм с базой данных будем использовать
компоненты ADOConnection, ADOQuery , ADOTable , DataSource. Для удобства будем использовать Data Module, в котором будут находится перечисленные выше
компоненты . Для того что бы создать Data Module щелкаем по
вкладке File, выбираем New, Data Module.
5.3 Создание второстепенных форм
.3.1 Реализация запросов на выборку данных
В приложении базы данных две второстепенные формы осуществляют выборку
данных, это Информация о конкретном лице или организации; Список организаций,
занимающихся определенной деятельностью
Для формы Информация о конкретном лице или организации. Для отображения
данных используется элемент DBGrid.
В AdoQuery2 выбираем свойство SQL и вводим следующий запрос: SELECT*FROM Organiz
Затем подключаем Form5
к DataModule2.DataSource2 и располагаем на форме компонент Edit, в котором пропишем следующее:
procedure TForm5.Edit1Change(Sender: TObject);a,b:string;
begin a:='%'+Unit5.
Form5.Edit1.Text+'%';:=QuotedStr(a); with DataModule2.
ADOQuery2 do begin close;.Clear; SQL.Add
('SELECT * FROM Organiz WHERE naimen like'+b);; end;
end;
Тоже проведем с Form7:
в AdoQuery3 выбираем свойство SQL и вводим следующий запрос: SELECT*FROM Friend
Для компонента Edit:
procedure TForm7.Edit1Change(Sender: TObject);a,b:string;
begin a:='%'+Unit7.
Form7.Edit1.Text+'%';:=QuotedStr(a); with Data
Module2.ADOQuery3 do begin close;.Clear; SQL.Add
('SELECT * FROM Friend WHERE FIO_dr like'+b);
Open; end;;
Для формы Form3, в AdoQuery1 выбираем свойство SQL и вводим следующий запрос: SELECT*FROM Sotrudnik
В расположенный на форме компонент Edit пишем код:
procedure TForm3.Edit1Change(Sender: TObject);a,b:string;
begin a:='%'+Unit3.
Form3.Edit1.Text+'%';:=QuotedStr(a); with DataModule2.
ADOQuery1 do begin close;.Clear; SQL.Add
('SELECT * FROM Sotrudnik WHERE FIO like'+b);
Open; end;;
.3.2 Реализация вставки новой записи
Добавление новой записи выполняется в формах: Сотрудники, Организации,
Друзья, Место учебы/работы друзей, Rabotaet, Uchat. Для
реализации вставки новой записи в таблицу Sotrudnik необходимо добавить в Data Module следующие компоненты: AdoQuery1, DataSource1. На форму Сотрудники
необходимо добавить DbGrid, Button.
В свойствах ADOQuery1 пишем
следующий запрос: SELECT * FROM Sotrudnik
После двойного щелчка по элементу Button пишем следующий текст:
Form4.show;.AdoQuery1.Insert;
Форма Сотрудники представлена на рис. 6.
Следующая форма, которая выполняет вставку новой записи - Новый
сотрудник.
Рис. 6. Форма Сотрудники
Форма Новый заказ представлена на рис. 7.
Рис. 7. Форма Новый сотрудник
После щелчка по элементу Edit1в
свойствах DataSourse выбираем DataModule2.DataSource1, в
свойстве DataField выбираем поле FIO. Для остальных компонентов Edit выбираем нужный DataField.
Для форм Организации, Друзья, Место учебы/работы друзей проведены такие
же процедуры, как и для формы Сотрудники.
Для реализации вставки новой записи в таблицу Rabotaet необходимо добавить в Data Module следующие компоненты: AdoQuery5, DataSource5. На форму необходимо
добавить DbGrid, Button, DBLookupComboBox1, DBLookupComboBox2
В свойствах ADOQuery1 пишем
следующий запрос:
select*from Rabotaet
В свойствах DBLookupComboBox1::
DataModule2.DataSource2: DataModule2.DataSource5: kod_org: naimen: kod_org
В свойствах DBLookupComboBox2::
DataModule2.DataSource1: DataModule2.DataSource5: kod_sotr: FIO: kod_sotr
Форма Rabotaet представлена на рис. 8.
Рис. 8. Форма Rabotaet
По аналогии создана форма Uchat.
5.3.3 Создание отчетов
В приложении осуществляется вывод двух отчетов: Информация о выбранных
организациях или частных лицах, Полный список контактных данных о любом
знакомом или организации.
Осуществим вывод этих представлений на форму с помощью компонентов ADOQuery, DataSource, DBGrid, также на форме разместим элемент Button при щелчке, по которому будет формироваться отчет в Rave Report [2]
Форма Информация о
выбранных организациях или частных лицах представлена на рис.9.
Рис.9
Рис.10
6. Инструкция по эксплуатации программы
Программа запускается двойным кликом на ярлыке el book.exe.
Открывается главная форма, на которой располагаются кнопки с возможными
действиями.
На главной форме расположено пять кнопок, позволяющие перейти в разные
разделы приложения: Сотрудники, Организации, Друзья, Место учебы/работы друзей,
Ближайшие Дни рождения друзей. В этих разделах можно проводить необходимые
манипуляции с данными.
Интерфейс приложения можно отнести к стандартному интерфейсу MS Windows.
Доступ ко всем экранным формам приложения осуществляется как из главной формы
приложения, так и из других форм и главного меню программы.
В процессе проектирования разработана двухуровневая структура
пользовательского интерфейса. На первом уровне расположена «Главная форма». На
втором уровне расположены остальные формы.
Интерфейс приложения интуитивно понятен (отсутствие у пользователя
сложностей в поиске необходимых директив или элементов интерфейса для
управления процессом решения поставленной задачи).
Список литературы
1. Базы
Данных. Методические указания к курсовой работе [Книга] / авт. Градусов А.Б.
Гришин В.С., Галкин А. А., Лагерь И. В.. - Владимир : Редакционно-издательский
комплекс Владимирского государственного университета, 2004.
2. Фаронов
В.В, Шумаков П.В. Delphi 5.
Руководство разработчика баз данных -М.:»Нолидж», 2000.-640.,ил.
. Гофман
В.Э., Хомоненко А.Д. Работа с базами данных в Delphi. СПб,: БХВ-Петербург, 2006.
656 с.
Похожие работы на - Электронная записная книжка
|