Автор: Пользователь скрыл имя, 18 Ноября 2012 в 20:43, курсовая работа
За последние 30 лет в области теории систем баз данных была проведен ряд исключительно продуктивных исследований. Полученные результаты вполне можно считать наиболее важным достижением информатики за этот период. Базы данных стали основой информационных систем и в корне изменили методы работы многих организаций.
Развитие технологии баз данных привело к созданию весьма мощных и удобных в эксплуатации программ. Благодаря этому системы баз данных стали доступными широкому кругу пользователей. В каждой области деятельности создаются собственные базы данных. Так, для кадровой службы в рамках данной курсовой работы разработаем базу данных «Увольнение сотрудников» для работы с личными данными сотрудников.
Введение……………………………………………………………….........
3
Общие сведения о базах данных …………………………………...
4
Создание и наполнение данными БД «Книжное дело»…………..
6
Освоение программирования с помощью встроенного языка Transact SQL в MS SQL Server……………………………………………
10
Разработка базы данных «Увольнение сотрудника»……………..
Постановка задачи…………………………………………….
Инфологическая модель базы данных………………………
Логическая модель базы данных…………………………….
Блок-схема…………………………………………………….
Физическая модель базы данных…………………………….
15
15
15
16
16
17
Создание клиентской части приложения для просмотра, редактирования данных БД………………………………………………..
5.1. Входные и выходные данные…………………………………
Разработка главного окна программы……………………….
Разработка меню программы………………………………...
Разработка таблиц………………………………………
Содержание
Введение………………………………………………………… |
3 |
|
4 |
|
6 |
|
10 |
|
15 15 15 16 16 17 |
5.1. Входные и выходные данные…………………………………
|
19 19 20 20 21 |
|
23 |
Заключение…………………………………………………… |
29 |
Список литературы………………………………… |
30 |
Введение
За последние 30 лет в области теории систем баз данных была проведен ряд исключительно продуктивных исследований. Полученные результаты вполне можно считать наиболее важным достижением информатики за этот период. Базы данных стали основой информационных систем и в корне изменили методы работы многих организаций.
Развитие технологии баз данных привело к созданию весьма мощных и удобных в эксплуатации программ. Благодаря этому системы баз данных стали доступными широкому кругу пользователей. В каждой области деятельности создаются собственные базы данных. Так, для кадровой службы в рамках данной курсовой работы разработаем базу данных «Увольнение сотрудников» для работы с личными данными сотрудников.
Мощность
информационной базы данных обусловлена
возможностью её постоянного пополнения
новыми данными, причем в неограниченном
количестве информации. Это является
очень удобным для
С точки зрения пользователя, база данных – это программа, которая обеспечивает работу с информацией. При запуске такой программы на экране, как правило, появляется таблица, просматривая которую пользователь может найти интересующие его сведения. Если система позволяет, то он может внести изменения в базу данных: добавить новую информацию или удалить ненужную.
Реляционная база данных – это совокупность отношений, содержащих всю информацию, которая должна храниться в базе данных. Пользователи воспринимают такую базу данных как совокупность таблиц, связанных между собой.
С точки зрения программиста, база данных – это набор файлов, содержащих информацию. Разрабатывая базу данных для пользователя, программист создает программу, которая обеспечивает работу с файлами данных.
В настоящее время существует достаточно большое количество программных систем, позволяющих создавать и использовать локальные (dBASE, FoxPro, Access, Paradox) и удаленные (Interbase, Oracle, Sysbase, Infomix, Microsoft SQL Server) базы данных.
Для выполнения данной работы воспользуемся системой Microsoft SQL Server. Она поддерживает реляционную модель данных и выполняет функции создания объектов БД (таблиц, индексов, представлений и т.д.), осуществляет проверку целостности БД и отвечает за безопасность данных в системе.
Основными задачами системы SQL Server являются: организация одновременного доступа к данным большого количества пользователей; манипуляция информацией, хранимой в БД и др.
База данных – это набор однородной, как правило, упорядоченной по некоторому критерию, информации. База данных может быть представлена в «бумажном» или в компьютерном виде. Типичным примером «бумажной» базы данных является каталог библиотеки – набор бумажных карточек, содержащих информацию о книгах. Информация в этой базе однородная (содержит сведения только о книгах) и упорядоченная (карточки расставлены, например, в соответствии с алфавитным порядком фамилий авторов). Другими примерами «бумажной» базы данных являются телефонный справочник и расписание движения поездов.
Компьютерная база данных представляет собой файл (или набор связанных файлов), содержащий информацию.
База данных состоит из записей. Каждая запись содержит информацию об одном экземпляре. Записи состоят из полей. Каждое поле содержит информацию об одной характеристике экземпляра. Следует обратить внимание, что каждая запись состоит из одинаковых полей. Некоторые поля могут быть не заполнены, однако они все равно присутствуют в записи. На бумаге базу данных удобно представить в виде таблицы. Каждая строка таблицы соответствует записи, а ячейка таблицы – полю. При этом заголовок столбца таблицы – это имя поля, а номер строки таблицы – номер записи.
Модель базы данных в Delphi
Доступ пользователя к данным обычно осуществляется с компьютера рабочей станции. Для этого создадим соответствующее приложение в среде Borland Delphi 7.
Процесс разработки в Delphi предельно упрощен. В первую очередь это относится к созданию интерфейса, на который уходит 80% времени разработки программы. Нужные компоненты помещаются на поверхность Windows-окна (форму) и настраиваются их свойства с помощью специального инструмента (Object Inspector). С его помощью можно связать события этих компонентов с кодом его обработки.
Мощность и гибкость Delphi при работе с базами данных основана на низкоуровневом ядре - процессоре баз данных Borland Database Engine (BDE). Его интерфейс с прикладными программами называется Integrated Database Application Programming Interface (IDAPI). В принципе, сейчас не различают эти два названия (BDE и IDAPI) и считают их синонимами. BDE позволяет осуществлять доступ к данным как с использованием традиционного record-ориентированного (навигационного) подхода, так и с использованием set-ориентированного подхода, используемого в SQL-серверах баз данных. Кроме BDE, Delphi позволяет осуществлять доступ к базам данных, используя технологию (и, соответственно, драйверы) Open DataBase Connectivity (ODBC) фирмы Microsoft.
Каждая таблица физически хранится в отдельном файле. Однако отождествлять базу данных и таблицу нельзя, так как довольно часто поля одной записи распределены по нескольким таблицам и, следовательно, находятся в разных файлах.
В простейшем случае источником информации для программы, работающей с базой данных, может быть вся таблица. Однако, как правило, пользователя интересует не вся информация, находящаяся в базе данных, а только какая-то ее часть. Он выбирает и просматривает только некоторые, удовлетворяющие его запросу записи. Поэтому в модель базы данных помимо таблицы, представляющей собой всю базу данных, было введено понятие запроса, являющегося выборкой, т.е. группой записей базы данных.
С помощью операторов языка Transact SQL необходимо создать базу данных «Книжное дело».
БД «Книжное дело» имеет следующую структуру (рис. 1)
Рис. 1 структура БД «Книжное дело».
Структура таблиц данной БД:
Создадим БД «Книжное дело» при помощи следующих операторов:
CREATE DATABASE DB_BOOKS
USE DB_BOOKS
CREATE TABLE Authors(Code_author INT IDENTITY (1,1) PRIMARY KEY, Name_author CHAR(30), Birthday DATETIME)
CREATE TABLE Publishing_house(Code_publish INT IDENTITY (1,1) PRIMARY KEY, Publish CHAR(30), City CHAR(20))
CREATE TABLE Books(Code_book INT IDENTITY (1,1) PRIMARY KEY, Title_book
CHAR(40), Code_author INT FOREIGN KEY REFERENCES Authors(Code_author),
Pages INT, Code_publish INT FOREIGN KEY REFERENCES Publishing_house(Code_publish)
CREATE TABLE Deliveries(Code_delivery INT IDENTITY (1,1) PRIMARY KEY, Name_delivery CHAR(30), Name_company CHAR(20), Address VARCHAR(100), Phone BIGINT, INN CHAR (13))
CREATE TABLE Purchases(Code_purchase INT IDENTITY (1,1) PRIMARY KEY, Code_book INT FOREIGN KEY REFERENCES Books(Code_book), Date_order DATETIME, Code_delivery INT FOREIGN KEY REFERENCES Deliveries(Code_delivery), Type_purchase BIT, Cost FLOAT, Amount INT)
Использованные операторы:
CREATE DATABASE – команда создания новой БД
USE – сделать активной конкретную БД
PRIMARY KEY – признак создания ключевого поля
FOREIGN KEY REFERENCES – признак создания поля связи с другой таблицей
CREATE TABLE – команда создания таблицы в текущей БД
Заполним все таблицы БД несколькими записями:
USE DB_BOOKS
INSERT INTO [Authors] (Name_author, Birthday) VALUES ('Бочков С','1976-09-12')
INSERT INTO [Authors] (Name_author, Birthday) VALUES ('Гик Е.Я.', '1971-03-01')
INSERT INTO [Authors] (Name_author, Birthday) VALUES ('Кузнецов Э', '1968-12-14')
INSERT INTO [Authors] (Name_author, Birthday) VALUES ('Николаев А', '1981-03-04')
INSERT INTO [Authors] (Name_author, Birthday) VALUES ('Симонович Д', '1961-11-30');
INSERT INTO [Publishing_house] (Publish, City) VALUES ('Альфа','Москва')
INSERT INTO [Publishing_house] (Publish, City) VALUES ('Наука','Самара')
INSERT INTO [Publishing_house] (Publish, City) VALUES ('Гелиос','Ростов')
INSERT INTO [Publishing_house] (Publish, City) VALUES ('Питер-Софт','С-Петербург')
INSERT INTO [Publishing_house] (Publish, City) VALUES ('Книга','Пермь')
INSERT INTO [Books] (Title_book, Code_author, Pages, Code_publish) VALUES ('Язык СИ','1', '230','1')
INSERT INTO [Books] (Title_book, Code_author, Pages, Code_publish) VALUES ('Шахматы и математика','2', '140','2')
INSERT INTO [Books] (Title_book, Code_author, Pages, Code_publish) VALUES ('Элементы информатики','3', '210','3')
INSERT INTO [Books] (Title_book, Code_author, Pages, Code_publish) VALUES ('Математика','4', '310','4')
INSERT INTO [Books] (Title_book, Code_author, Pages, Code_publish) VALUES ('Информатика','5', '150','5')
INSERT INTO [Deliveries] (Name_delivery, Name_company, Address, Phone, INN)
VALUES ('Иванов Н.А.','Нова','г. Москва, ул.Калинина,
д.29','234291','0195836249642'
INSERT INTO [Deliveries] (Name_delivery, Name_company, Address, Phone, INN)
VALUES ('Грачевский И.Н.','Книгаторг','г. Самара, ул.Строительная, д.2','344203','8795839249844')
INSERT INTO [Deliveries] (Name_delivery, Name_company, Address, Phone, INN)
VALUES ('Лобанов М.В.','Просвещение','г. Москва, ул.Арбат, д.8','723292','5695803240611')
INSERT INTO [Deliveries] (Name_delivery, Name_company, Address, Phone, INN)
VALUES ('Иванов Н.А.','Торговый дом книг','г.
Нижний Новгород, ул.Новая, д.19','230211','8595836149407'
INSERT INTO [Deliveries] (Name_delivery, Name_company, Address, Phone, INN)
VALUES ('Гусев Р.Б.','Арфей','г.
INSERT INTO [Purchases](Date_order, Code_delivery, Type_purchase, Cost, Amount)
VALUES ('2007-05-08','1','1','130','
INSERT INTO [Purchases] (Date_order, Code_delivery, Type_purchase, Cost, Amount)
VALUES ('2011-12-21','2','0','153','
INSERT INTO [Purchases] (Date_order, Code_delivery, Type_purchase, Cost, Amount)
VALUES ('012-01-30','3','1','330','
INSERT INTO [Purchases] (Date_order, Code_delivery, Type_purchase, Cost, Amount)
VALUES ('2011-11-24','4','0','140','
INSERT INTO [Purchases] (Date_order, Code_delivery, Type_purchase, Cost, Amount)
VALUES ('2012-03-27','5','1','180','
Использованные операторы:
INSERT INTO - добавляет одну или несколько новых строк в таблицу
встроенного языка Transact SQL в MS SQL Server
Для освоения программирования используем пример базы данных DB_BOOKS
Вариант 8: 8 13 18 23 28 33 38 43 48 53 58 63 3
Присвоение значений переменным и вывод на экран
USE DB_BOOKS
DECLARE @CostAVG INT, @a numeric
SET @CostAVG=(SELECT AVG(Cost) FROM Purchases)
SET @a=123.34
SET @CostAVG=@CostAVG*@a
PRINT @CostAVG
Сочетание ключевых слов SET и SELECT
13. Подсчитать сумму закупок книг, результат поместить в переменную.
USE DB_BOOKS
DECLARE @BookSum INT
SET @BookSum=(SELECT SUM(Cost*Amount) FROM Purchases)
PRINT @BookSum
Работа с датой и временем
18. Определить переменную Date1 типа дата/время. Присвоить ей значение даты 31.12.2006 в формате yyyy.mm.dd.
SET DATEFORMAT ymd
DECLARE @Date1 DateTime
SET @Date1='2006.12.31'
Создание временной таблицы через переменную типа TABLE
23. Создать локальную таблицу с названием TEMP и полями типа дата/время, длинное целое с автонаращиванием, динамическая строка. Добавить в нее две записи с данными и вывести результат на экран.
DECLARE @TEMP TABLE (Date SMALLDATETIME, Code BIGINT IDENTITY (1,1), Author VARCHAR(20))
INSERT INTO @TEMP(Date, Author) VALUES ('1971-03-01','Бочков С')
Информация о работе Разработка базы данных «Увольнение сотрудника»