Автоматизированная информационная система автосалона

Автор: Пользователь скрыл имя, 13 Декабря 2011 в 19:15, курсовая работа

Описание работы

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

Работа содержит 1 файл

АИС2 Word.docx

— 430.41 Кб (Скачать)

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

После того, как  мы создали физическую модель базы данных, приступим к генерации  описания базы данных на SQL. Для этого  из меню на пакете «Schema» S_0 выполняем  команду Þ Data Modeler/Forward Engineer. Произойдет запуск генератора описания БД на SQL, после  чего нажимаем клавишу Next. На следующем  шаге мастера устанавливаем все  флажки генерации и опять жмем Next. В следующем меню в графе  «File Name» указываем имя и расположение текстового файла с результатами генерации. После чего доводим до конца работу с мастером.

После завершения генерации получаем следующий файл с описанием структуры БД на SQL:

CREATE TABLE DO (

name_option VARCHAR ( 255 ) NOT NULL,

cena INT NOT NULL,

DO_ID INT IDENTITY NOT NULL,

CONSTRAINT PK_DO13 PRIMARY KEY NONCLUSTERED (DO_ID)

)

GO

CREATE TABLE Diski (

id_Disk INT NOT NULL,

radius INT NOT NULL,

firma VARCHAR ( 255 ) NOT NULL,

Diski_ID INT IDENTITY NOT NULL,

DO_ID INT NOT NULL,

CONSTRAINT PK_Diski12 PRIMARY KEY NONCLUSTERED (Diski_ID)

)

GO

CREATE TABLE Multimedia_system (

id_system INT NOT NULL,

firma VARCHAR ( 255 ) NOT NULL,

din BIT NOT NULL,

function VARCHAR ( 255 ) NOT NULL,

Multimedia_system_ID INT IDENTITY NOT NULL,

DO_ID INT NOT NULL,

CONSTRAINT PK_Multimedia_system14 PRIMARY KEY NONCLUSTERED (Multimedia_system_ID)

)

GO

CREATE TABLE Users (

id_users BIGINT NOT NULL,

FIO VARCHAR ( 255 ) NOT NULL,

Dostup INT NOT NULL,

Users_ID INT IDENTITY NOT NULL,

CONSTRAINT PK_Users15 PRIMARY KEY NONCLUSTERED (Users_ID)

)

GO

CREATE TABLE Т_3 (

Zakazi_ID INT NOT NULL,

Clients_ID INT NOT NULL,

CONSTRAINT PK_220 PRIMARY KEY NONCLUSTERED (Zakazi_ID, Clients_ID)

)

GO

CREATE TABLE Т_2 (

Zakazi_ID INT NOT NULL,

DO_ID INT NOT NULL,

CONSTRAINT PK_119 PRIMARY KEY NONCLUSTERED (Zakazi_ID, DO_ID)

)

GO

CREATE TABLE Т_1 (

CTO_ID INT NOT NULL,

Clients_ID INT NOT NULL,

CONSTRAINT PK_018 PRIMARY KEY NONCLUSTERED (CTO_ID, Clients_ID)

)

GO

CREATE TABLE Zakazi (

id_zakaz INT NOT NULL,

number INT NOT NULL,

model_avto VARCHAR ( 255 ) NOT NULL,

data_sborki DATETIME NOT NULL,

data_oforml_zakaz DATETIME NOT NULL,

FIO_manager VARCHAR ( 255 ) NOT NULL,

predoplata INT NOT NULL,

auto_v_zachet BIT NOT NULL,

Zakazi_ID INT IDENTITY NOT NULL,

New_auto_ID INT NOT NULL,

Users_ID INT NOT NULL,

CONSTRAINT TC_Zakazi4 UNIQUE NONCLUSTERED (New_auto_ID),

CONSTRAINT PK_Zakazi17 PRIMARY KEY NONCLUSTERED (Zakazi_ID)

)

GO

CREATE TABLE Utilization (

Id_Utiliz BIGINT NOT NULL,

Marka VARCHAR ( 255 ) NOT NULL,

God_v INT NOT NULL,

VIN INT NOT NULL,

Vladelec VARCHAR ( 255 ) NOT NULL,

Utilization_ID INT IDENTITY NOT NULL,

Zakazi_ID INT NOT NULL,

CONSTRAINT PK_Utilization16 PRIMARY KEY NONCLUSTERED (Utilization_ID)

)

GO

CREATE TABLE Clients (

id_client BIGINT NOT NULL,

FIO VARCHAR ( 255 ) NOT NULL,

Tel VARCHAR ( 255 ) NOT NULL,

Adr VARCHAR ( 255 ) NOT NULL,

N_pasport VARCHAR ( 255 ) NOT NULL,

N_VU VARCHAR ( 255 ) NOT NULL,

Clients_ID INT IDENTITY NOT NULL,

CONSTRAINT PK_Clients11 PRIMARY KEY NONCLUSTERED (Clients_ID)

)

GO

CREATE TABLE CTO (

id_CTO INT NOT NULL,

nuber_zakaz-naryada SMALLINT NOT NULL,

zayavlennie_neispravnosti VARCHAR ( 255 ) NOT NULL,

data_nachala_remonta DATETIME NOT NULL,

viyavlennie_neispravnosti VARCHAR ( 255 ) NOT NULL,

gotovnost DATETIME NOT NULL,

cena INT NOT NULL,

CTO_ID INT IDENTITY NOT NULL,

CONSTRAINT PK_CTO9 PRIMARY KEY NONCLUSTERED (CTO_ID)

)

GO

CREATE TABLE New_auto (

id_New_auto INT NOT NULL,

Model VARCHAR ( 255 ) NOT NULL,

Color INT NOT NULL,

VIN INT NOT NULL,

Complectation VARCHAR ( 255 ) NOT NULL,

status VARCHAR ( 255 ) NOT NULL,

New_auto_ID INT IDENTITY NOT NULL,

CONSTRAINT PK_New_auto10 PRIMARY KEY NONCLUSTERED (New_auto_ID)

)

GO

CREATE INDEX TC_Diski6 ON Diski (DO_ID)

GO

CREATE INDEX TC_Multimedia_system8 ON Multimedia_system (DO_ID)

GO

CREATE INDEX TC_215 ON Т_3 (Zakazi_ID)

GO

CREATE INDEX TC_216 ON Т_3 (Clients_ID)

GO

CREATE INDEX TC_111 ON Т_2 (Zakazi_ID)

GO

CREATE INDEX TC_112 ON Т_2 (DO_ID)

GO

CREATE INDEX TC_00 ON Т_1 (CTO_ID)

GO

CREATE INDEX TC_01 ON Т_1 (Clients_ID)

GO

CREATE INDEX TC_Zakazi3 ON Zakazi (New_auto_ID)

GO

CREATE INDEX TC_Zakazi10 ON Zakazi (Users_ID)

GO

CREATE INDEX TC_Utilization14 ON Utilization (Zakazi_ID)

GO

ALTER TABLE Diski ADD CONSTRAINT FK_Diski3 FOREIGN KEY (DO_ID) REFERENCES DO (DO_ID)

GO

ALTER TABLE Multimedia_system ADD CONSTRAINT FK_Multimedia_system4 FOREIGN KEY (DO_ID) REFERENCES DO (DO_ID)

GO

ALTER TABLE Т_3 ADD CONSTRAINT FK_29 FOREIGN KEY (Zakazi_ID) REFERENCES Zakazi (Zakazi_ID)

GO

ALTER TABLE Т_3 ADD CONSTRAINT FK_210 FOREIGN KEY (Clients_ID) REFERENCES Clients (Clients_ID)

GO

ALTER TABLE Т_2 ADD CONSTRAINT FK_16 FOREIGN KEY (Zakazi_ID) REFERENCES Zakazi (Zakazi_ID)

GO

ALTER TABLE Т_2 ADD CONSTRAINT FK_17 FOREIGN KEY (DO_ID) REFERENCES DO (DO_ID)

GO

ALTER TABLE Т_1 ADD CONSTRAINT FK_00 FOREIGN KEY (CTO_ID) REFERENCES CTO (CTO_ID)

GO

ALTER TABLE Т_1 ADD CONSTRAINT FK_01 FOREIGN KEY (Clients_ID) REFERENCES Clients (Clients_ID)

GO

ALTER TABLE Zakazi ADD CONSTRAINT FK_Zakazi2 FOREIGN KEY (New_auto_ID) REFERENCES New_auto (New_auto_ID)

GO

ALTER TABLE Zakazi ADD CONSTRAINT FK_Zakazi5 FOREIGN KEY (Users_ID) REFERENCES Users (Users_ID)

GO

ALTER TABLE Utilization ADD CONSTRAINT FK_Utilization8 FOREIGN KEY (Zakazi_ID) REFERENCES Zakazi (Zakazi_ID)

GO

2.4 Средства, используемые  для построения  системы учета

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

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

автосалон база учет моделирование

Рис. 2.13. Структура  Клиент-сервер

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

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

Общеизвестно, что  возможности настольных СУБД серьезно ограничены - это пять-семь пользователей  и 30-50 Мб, соответственно. Цифры, разумеется, представляют собой некие средние  значения, в конкретных случаях они  могут отклоняться как в ту, так и в другую сторону. Что  наиболее существенно, эти барьеры  нельзя преодолеть за счет наращивания  возможностей аппаратуры. Системы же на основе серверов баз данных могут  поддерживать тысячи пользователей  и сотни ГБ информации - дайте  им только соответствующую аппаратную платформу.

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

Для создания базы данных было решено использовать MySQL 5.0 благодаря её функциональности и  простоте в использовании. MySQL - это  популярная система управления базами данных (СУБД), очень часто применяемая  в сочетании с PHP. MySQL - это система  управления реляционными базами данных. В реляционной базе данных данные хранятся не все скопом, а в отдельных  таблицах, благодаря чему достигается  выигрыш в скорости и гибкости. Таблицы связываются между собой  при помощи отношений, благодаря  чему обеспечивается возможность объединять при выполнении запроса данные из нескольких таблиц. SQL как часть системы MySQL можно охарактеризовать как язык структурированных запросов плюс наиболее распространенный стандартный язык, используемый для доступа к базам  данных.

MySQL - это ПО  с открытым кодом. Применять  его и модифицировать может  любой желающий. Такое ПО можно  получать по Internet и использовать  бесплатно. При этом каждый  пользователь может изучить исходный  код и изменить его в соответствии  со своими потребностями. Использование  программного обеспечения MySQL регламентируется  лицензией GPL (GNU General Public License), http://www.gnu.org/licenses/, в которой указано, что можно  и чего нельзя делать с этим  программным обеспечением в различных  ситуациях.

MySQL состоит из  двух частей: серверной и клиентской. Сервер MySQL постоянно работает на  компьютере. Клиентские программы  (например, скрипты PHP) посылают серверу  MySQL SQL-запросы через механизм  сокетов (то есть при помощи  сетевых средств), сервер их обрабатывает  и запоминает результат. То  есть скрипт (клиент) указывает, какую  информацио он хочет получить  от сервера баз данных. Затем  сервер баз данных посылает  ответ (результат) клиенту (скрипту). Почему всегда передается не  весь результат? Очень просто: дело в том, что размер результирующего  набора данных может быть слишком  большим, и на его передачу  по сети уйдет чересчур много  времени. Да и редко когда  бывает нужно получать сразу  весь вывод запроса (то есть  все записи, удовлетворяющие выражению  запроса). Например, нам может потребоваться  лишь подсчитать, сколько записей удовлетворяет тому или иному условию, или же выбрать из данных только первые 10 записей. Механизм использования сокетов подразумевает технологию клиент-сервер, а это означает, что в системе должна быть запущена специальная программа — MySQL-сервер, которая принимает и обрабатывает запросы от программ. [10]

Для создания графического интерфейса было принято решение  использовать PHP и HTML. PHP - это язык программирования, специально разработанный для написания web-приложений (сценариев), исполняющихся  на Web-сервере. PHP и HTML тесно связаны: PHP генерирует HTML, а HTML содержит информацию, которая высылается в PHP. Значительным отличием PHP от какого-либо кода, выполняющегося на стороне клиента, например, JavaScript, является то, что PHP-скрипты выполняются  на стороне сервера. Возможности PHP очень большие. Главным образом, область применения PHP сфокусирована  на написание скриптов, работающих на стороне сервера; таким образом, PHP способен выполнять всё то, что  выполняет любая другая программа CGI. Например, обрабатывать данных форм, генерировать динамические страницы, отсылать и принимать cookies. Но PHP способен выполнять и множество других задач. PHP — язык, который может  быть встроен непосредственно в html -код страниц, которые, в свою очередь  будут корректно обрабатываться PHP -интерпретатором. Очень важное преимущество PHP заключается в его «движке». «Движок» PHP не является ни компилятором, ни интерпретатором. Он является транслирующим  интерпретатором. Такое устройство «движка» PHP позволяет обрабатывать сценарии с достаточно высокой скоростью.

Информация о работе Автоматизированная информационная система автосалона