База данных "Учет автотранспортных средств в ГАИ ГИБДД"
Разработка базы данных с помощью Borland С++ Builder6, которая отражает в удобной форме учет автотранспортных средств. Проектирование инфологической, даталогической и физической моделей данных. Функции и процедуры (операции) системы, листинг программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 10.11.2011 |
Размер файла | 133,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Курсовая работа
по дисциплине “БД”
на тему:
База данных "Учет автотранспортных средств в ГАИ ГИБДД"
Содержание
Введение
1. Теоретическая часть
1.1 Анализ предметной области
1.2 Проектирование БД
1.3 Сравнительный анализ СУБД
1.4 Выбор технических средств
2. Проектная часть
2.1 Разработка БД
2.2 Описание функций систем
3. Заключение
4. Литература
Программа
Введение
Внедрение ЭВМ во все сферы человеческой и требует от специалистов разного профиля овладения навыками использования ВТ. Основой подготовки студентов является изучение таких направлений применения ЭВМ, как основы вычислительной техники и программирования, численные методы решения инженерных и экономических задач, информационные технологии, проектирование информационных систем, методы оптимизации и оптимального управления и т.д.
Данные методические указания посвящены вопросам построению приложений для работы с базами данных, использующих компоненты визуальных библиотек, методы ввода, редактирования, поиска и фильтрации данных в интегрированной среде программирования C++ Builder.
В данной работе в краткой форме приводятся основные сведения об методах поиска и фильтрации данных, о компонентах генератора отчетов. Для успешного понимания приводятся теоретические сведения, методические примеры, фрагменты программ, а также индивидуальные задания.
В нумерации параграфов, таблиц и рисунков первая цифра соответствует номеру лабораторной работы, а вторая - порядковому номеру параграфа, таблицы и рисунка.
Решение задач ориентировано на использование ПЭВМ. Указания являются полезными при выполнении лабораторных работ по курсам:
- проектирование информационных систем;
- прогнозирование социально-экономических процессов в Дагестане;
- имитационное моделирование экономических процессов;
- эконометрика;
-статистика правонарушений и экономических преступлений в Дагестане;
- информационная безопасность;
- сетевая экономика.
1.ТЕОРЕТИЧЕСКАЯ ЧАСТЬ
1.1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ ИЛИ ОБЪЕКТА УПРАВЛЕНИЯ
база данные учет инфологический процедура
Исчисление и уплата транспортного налога именно налоговыми органами осуществляется с 2003 г., до этого времени контроль за уплатой налога с владельцев автотранспортных средств (старое название этого налога) осуществлялся органами ГАИ-ГИБДД при осуществлении регистрационных действий с автотранспортным средством или прохождении государственного технического осмотра.
В связи с тем, что в Налоговом Кодексе (глава 28) говорится, что для владельцев автотранспортных средств - физических лиц налоговый орган рассчитывает сумму налога, после чего направляет им налоговое уведомление о необходимости уплаты налога. Из изложенного следует, что если налоговый орган не отправлял Вам по месту Вашего жительства соответствующее уведомление, ответственность в виде уплаты пеней к Вам применена быть не может. В случае же, если такие уведомления все-таки отправлялись, но по каким-либо причинам вручены Вам не были (Ваше отсутствие по месту жительства), пени могут быть начислены. Недоимка, не уплаченная в установленные сроки, может быть взыскана за срок не более чем за три последних года. Следовательно, за период с 2000 по середину 2002 г. задолженность взыскана быть не может, соответственно, не могут быть начислены и пени.
Что касается оставшегося периода 2002 г. (до вступления в силу изменений в порядке уплаты налога, о чем говорилось выше), то здесь необходимо отметить следующее: с начала 2003 г. органы ГИБДД приступили к осуществлению процедуры передачи налоговым органам сведений об автовладельцах и уплате ими транспортного налога, при этом лицевые счета плательщиков налога в органах ГИБДД не велись и достоверно установить факт уплаты или неуплаты конкретным физическим лицом этого налога за прошедший период оказалось практически невозможным. Учитывая это, налоговые органы практически не занимаются взысканием задолженности, возникшей до 01 января 2003 г. Таким образом, если Вы уверены в том, что своевременно получаете всю корреспонденцию, отправляемую Вам по Вашему месту жительства, беспокоиться не имеет смысла.
Настоящая Временная инструкция (далее инструкция) разработана на основании Постановления Кабинета Министров N 302 от 17.06.1997 г. "О мерах по стимулированию экспорта продукции АО "УзДЭУавто" и определяет правила вывоза, таможенного оформления и снятия с учета в органах внутренних дел транспортных средств производства СП "УзДЭУавтоКО" (далее автотранспортных средств) физическими и юридическими лицами в качестве товара.
Правила вывоза автотранспортных средств за пределы таможенной территории
2.1. Лицам, вывозящим автотранспортные средства за пределы республики (за исключением временно вывозимых), необходимо заблаговременно уведомлять территориальное таможенное Управление ГТК республики.
2.2. Каждый приграничный таможенный пост ведет прономерованную и прошнурованную книгу, в которой ведется учет автотранспортных средств вывозимых за пределы таможенной территории Республики Узбекистан.
Таможенное оформление автотранспортных средств при вывозе с таможенной территории
3.1. Все транспортные средства, вывозимые за пределы таможенной
территории Республики Дагестан, подлежат таможенному оформлению в установленном порядке.
При этом таможенное оформление производится на основании:
· договоров купли-продажи, дарения, мены, наследства, аренды, удостоверенных нотариально или счетов-справок, выдаваемых торговыми организациями, базами снабжения.
· Сертификат происхождения товара;
Данное положение не распространяется на временно вывозимые автотранспортные средства.
3.2. Таможенное оформление автотранспортных средств, вывозимых юридическими лицами, производится в соответствии с общими правилами перемещения товаров через таможенную границу Республики Дагестан.
3.3. Таможенное оформление временно вывозимых автомобилей АО "УзДЭУавто" производится с заполнением ГТД в установленном порядке с постановкой на контроль и без взимания акцизного налога. При этом оформление ГТД производится в случае превышения срока выезда более чем на пятнадцать дней.
3.4. Начисление и взимание указанных таможенных платежей производится региональными таможенными органами в соответствии с действующими нормативными актами, регламентирующими деятельность таможенных органов.
Физические лица - нерезиденты (или иностранные лица), приобретавшие автотранспортные средства в специализированных предприятиях торговли, обязаны предоставить для таможенного оформления документы, подтверждающие право на льготы по акцизному налогу (справка об обмене СКВ на национальную валюту и документ, подтверждающий ввоз СКВ для покупки автомобиля производства АО "УзДЭУавто").
Владельцы автотранспортных средств производства АО "УзДЭУавто", выезжающие на постоянное место жительства из Республики за границу (включая страны СНГ), обязаны оплачивать акцизный налог и сборы за проведение таможенных процедур в установленном порядке, за исключением случаев, предусмотренных законодательством.
3.5. При таможенном оформлении автотранспортных средств сверяются номера агрегатов (двигателя, кузова, шасси) с целью предупреждения вывоза и использования агрегатов других автотранспортных средств.
4. Нотариальное оформление автотранспортных средств, подлежащих вывозу с таможенной территории Республики Дагестан
4.1. Договора купли-продажи, мены, дарения и др. автотранспортных средств, подлежащих вывозу с территории Республики Дагестан, нотариально оформляются при наличии технического паспорта автомобиля с обязательной отметкой о регистрации в органах ГАИ МВД Республики Дагестан .
5. Порядок снятия с учета вывозимых автотранспортных средств в подразделениях ГАИ органов внутренних дел Республики Дагестан
5.1. Основанием для снятия с учета в органах ГАИ вывозимых с Республики Дагестан автотранспортных средств являются:
- договор купли-продажи, дарения, мены, наследства и др. нотариально заверенные документы;
- экземпляр грузовой таможенной декларации, оформленной в установленном порядке;
- копия сертификата происхождения товары (СТ-1).
5.2. Снятие с учета в органах ГАИ МВД по запросам и актам одиночного осмотра автотранспортных средств, направленных с других государств, не производится.
5.3. Документы, предъявленные при вывозе, являются основанием для снятия с учета автотранспортного средства и должны храниться в органах ГАИ в течение трех лет.
1.2 ПРОЕКТИРОВАНИЕ БД
Проектирование баз данных представляет собой длительный, трудоемкий и слабо формализованный процесс, от которого зависит жизнеспособность и эффективность проектируемой базы данных, ее способность к развитию. Важную роль при проектировании базы данных играет методология построения концептуальных моделей предметной области, включающая методы и средства, позволяющие спроектировать базу данных, удовлетворяющую заданным целям и требованиям пользователей и прикладных программистов.
База данных - это некоторая целевая модель предметной области, т. е. в БД находят отражения только те факты ПО, которые необходимы для функционирования автоматизированных систем, в состав которой входит БД.
Современные СУБД являются объектно-ориентированными и реляционными. Основной единицей является объект, имеющий свойства, и связи между объектами. СУБД используют несколько моделей данных: иерархическую, сетевую (с 60-х годов) и реляционную (с 70-х). Основное различие данных моделей в представлении взаимосвязей между объектами.
Иерархическая модель данных строится по принципу иерархии объектов, то есть один тип объекта является главным, все нижележащие - подчиненными. Устанавливается связь «один ко многим», то есть для некоторого главного типа существует несколько подчиненных типов объектов. Иначе, главный тип именуется исходным типом, а подчиненные - порожденными. У подчиненных типов могут быть в свою очередь подчиненные типы. Наивысший в иерархии узел (совокупность атрибутов) называют корневым.
Сетевая модель данных строится по принципу «главный и подчиненный тип одновременно», то есть любой тип данных одновременно может одновременно порождать несколько подчиненных типов (быть владельцем набора) и быть подчиненным для нескольких главных (быть членом набора).
Реляционная модель данных объекты и связи между ними представляются в виде таблиц, при этом связи тоже рассматриваются как объекты. Все строки, составляющие таблицу в реляционной базе данных должны иметь первичный ключ. Все современные средства СУБД поддерживают реляционную модель данных.
Проектирование БД начинается с предварительной структуризации предметной области: объекты реального мира подвергаются классификации, фиксируется совокупность подлежащих отображению в БД типов объектов. Для каждого типа объектов фиксируется совокупность свойств, посредством которых будут описываться конкретные объекты этого типа в БД, виды отношений (взаимосвязей) между этими объектами. Затем решаются вопросы о том, какая информация об этих объектах должна быть представлена в БД, и как ее представить с помощью данных.
Сущность инфологического подхода к проектированию информационных систем заключается в установлении соответствия между состоянием предметной области, его восприятием и представлением в базе данных. Согласно инфологическому подходу при проектировании необходимо различать:
1)явления реального мира;
2)информацию об этих явлениях;
3)представление этой информации посредством данных.
Задача инфологического этапа проектирования базы данных - получение семантических (смысловых) моделей, отражающих информационное содержание конкретной ПО.
Описание, выполненное с использованием естественного языка, математических формул, таблиц, графиков и других средств, понятных всем людям, работающих над проектированием базы данных, называют инфологической моделью данных.
Трехуровневая архитектура (инфологический, даталогический и физический уровни) позволяет обеспечить независимость хранимых данных от использующих программ.
Рис. 1.1 Уровни моделей данных.
Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).
Объект (Сущность) - элемент какой-либо системы, информация о котором сохраняется. Объект может быть как реальным (например, человек), так и абстрактным (например, событие - поступление человека в стационар).
Атрибут - информационное отображение свойств объекта. Каждый объект характеризуется набором атрибутов.
Таблица - упорядоченная структура, состоящая из конечного набора однотипных записей.
Первичный ключ - атрибут (или группа атрибутов), позволяющий однозначным образом определить каждую строку в таблице.
Таблица - упорядоченная структура, состоящая из конечного набора однотипных записей.
Связь - ассоциирование двух или более сущностей. Если бы назначением базы данных было только хранение отдельных, не связанных между собой данных, то ее структура могла бы быть очень простой. Однако одно из основных требований к организации базы данных - это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи. А так как в реальных базах данных нередко содержатся сотни или даже тысячи сущностей, то теоретически между ними может быть установлено более миллиона связей. Наличие такого множества связей и определяет сложность инфологических моделей.
Модель данных логического уровня, поддерживаемую средствами СУБД, называют даталогический моделью. Эта модель представляет собой отображение логических связей между элементами данных безотносительно к их содержанию и среде хранения. Даталогическая модель строится с учетом ограничений конкретной СУБД.
При построении даталогической модели учитываются особенности отображаемой предметной области. БД предполагает интегрированное и взаимосвязанное хранение данных, поэтому для проектирования даталогической модели необходимо иметь соответствующее описание предметной области.
Для привязывания даталогической модели в среде хранения данных используется модель данных физического уровня. Эта модель определяет используемое запоминающее устройство, способ представления данных в среде хранения. Модель физического уровня строится также с учетом возможности предоставленных СУБД. С появлением персональных компьютеров на базе IBM этот этап фактически перестал существовать, так как операционная система, СУБД автоматически проектирует физическую среду хранения информации. Так СУБД dBASE, FoxPro,Visual FoxPro создают файлы с расширением dbf, Paradox с расширением db.
В БД отражается определённая информация о предметной области.
Предметной областью называется часть реального мира, представляющая интерес для данного исследования. В автоматизированных информационных системах отражение предметной области представлено моделями данных нескольких уровней. Независимо от того поддерживаются ли в явном виде уровни модели физического и логического уровня можно выделить эти уровни модулей и соответственно к ним этапы проектирования БД.
1.3 СРАВНИТЕЛЬНЫЙ АНАЛИЗ СОВРЕМЕННЫХ СУБД
Современные СУБД в основном являются приложениями Windows, так как данная среда позволяет более полно использовать возможности персональной ЭВМ, нежели среда DOS. Выбранный программный продукт должен удовлетворять как текущим, так и будущим потребностям предприятия, при этом следует учитывать финансовые затраты на приобретение необходимого оборудования, самой системы, разработку необходимого программного обеспечения на ее основе, а также обучение персонала. Кроме того, необходимо убедиться, что новая СУБД способна принести предприятию реальные выгоды.
Снижение стоимости высокопроизводительных ПК обусловил не только широкий переход к среде Windows, где разработчик программного обеспечения может в меньше степени заботиться о распределении ресурсов, но также сделал программное обеспечение ПК в целом и СУБД в частности менее критичными к аппаратным ресурсам ЭВМ.
Среди наиболее ярких представителей систем управления базами данных можно отметить: Lotus Approach, Microsoft Access, Borland dBase, Borland Paradox, Microsoft Visual FoxPro, Microsoft Visual Basic, а также баз данных Microsoft SQL Server и Oracle, используемые в приложениях, построенных по технологии «клиент-сервер». Фактически, у любой современной СУБД существует аналог, выпускаемый другой компанией, имеющий аналогичную область применения и возможности, любое приложение способно работать со многими форматами представления данных, осуществлять экспорт и импорт данных благодаря наличию большого числа конвертеров. Общепринятыми, также, являются технологи, позволяющие использовать возможности других приложений, например, текстовых процессоров, пакетов построения графиков и т.п., и встроенные версии языков высокого уровня (чаще - диалекты SQL и/или VBA) и средства визуального программирования интерфейсов разрабатываемых приложений. Поэтому уже не имеет существенного значения, на каком языке и на основе какого пакета написано конкретное приложение, и какой формат данных в нем используется. Более того, стандартом «де-факто» стала «быстрая разработка приложений» или RAD (Rapid Application Development), основанная на широко декларируемом в литературе «открытом подходе». То есть необходимость и возможность использования различных прикладных программ и технологий для разработки более гибких и мощных систем обработки данных. Поэтому в одном ряду с «классическими» СУБД все чаще упоминаются языки программирования Visual Basic 4.0 и Visual C++, которые позволяют быстро создавать необходимые компоненты приложений, критичные по скорости работы, которые трудно, а иногда невозможно разработать средствами «классических» СУБД. Современный подход к управлению базами данных подразумевает также широкое использование технологии «клиент-сервер».
Таким образом, на сегодняшний день разработчик не связан рамками какого-либо конкретного пакета, а в зависимости от поставленной задачи может использовать самые разные приложения. Поэтому, более важным представляется общее направление развития СУБД и других средств разработки приложений в настоящее время.
Следует отметить, что по существующей практике решение об использовании той или иной СУБД принимает один человек - обычно, руководитель предприятия, а он может опираться отнюдь не на технические критерии. Здесь свою роль могут сыграть такие, с технической точки зрения, незначительные факторы как рекламная раскрутка компании-производителя СУБД, использование конкретных систем на других предприятиях, стоимость. При этом последний фактор может трактоваться в двух противоположных смыслах в зависимости от финансового состояния и политики предприятия. С одной стороны, это может быть принцип, - чем дороже, тем лучше. С другой стороны - культивирование почти бесплатного использования продукта, вплоть до “взлома” его лицензионной защиты. Очевидно, последний подход чреват коллизиями и не может привести к успеху в долгосрочной работе.
Используя Borland C++ Builder, можно создать приложения, работающие как с однопользовательскими базами данных (БД), так и с серверными СУБД, такими как Oracle, Sybase, Informix, Interbase, MS SQL Server, DB2, а также с ODBC-источниками. Возможности C++ Builder, связанные с созданием приложений, использующих базы данных, весьма обширны. Builder - это среда, в которой можно осуществлять так называемое визуальное программирование, т. е. создавать программы, которые во время исполнения взаимодействуют с пользователем благодаря многооконному графическому интерфейсу. Среда Builder позволяет работать как с простыми локальными удаленными БД, так и с многозвенными распределенными БД.
Приложения строятся средой Borland С++ Builder в виде специальных конструкций - проектов, которые выглядят для пользователя как совокупность нескольких файлов. Ни одна программа не может существовать вне структуры-проекта. Действия по управлению проектами осуществляет специальный программный комплекс - менеджер проектов. Вместо отдельного инструментария, оперирующего визуальными элементами управления, в C++ Builder интегрирована так называемая Палитра компонент, разделенная картотечными вкладками на несколько функциональных групп. Функциональные возможности поставляемых компонент можно достаточно просто модифицировать, а также разрабатывать компоненты, обладающие совершенно новым оригинальным поведением.
1.4 ВЫБОР ТЕХНИЧЕСКИХ СРЕДСТВ
Вычислительная техника является неотъемлемой частью при разработке любого приложения, с использованием программы C++ Builder. Поэтому правильный выбор компьютера для разработки проекта играет решающую роль, влияющей на качество и время исполнения проекта. Для установки и работы Builder требуется, чтобы компьютер имел следующую минимальную конфигурацию:
Процессор (CPU) - Pentium I
ОЗУ (DIMM) -32Mb
Видеокарта (SVGA) -16 Mb
Блок питания (ATX) -250W
Материнская плата (MB) - Любая
Монитор - Любой
Операционная система - Windows 95 и выше
Манипулятор Мышь - Genius 250 dpi
Принтер - Lexmark E232 600/1200/2400 dpi 22 стр/мин
DVD-rom - Не обязательно
Floppy - Nec
Клавиатура - Genius
Мною, для выполнения курсового проекта использовался компьютер со следующими параметрами:
Процессор (CPU) - Pentium 4 3000 MHz
ОЗУ (DIMM) -512 Mb Kingston
Видеокарта (SVGA) -256 Mb Palit FX5600
Блок питания (ATX) - 350W
Материнская плата (MB) - Asus P4P800
Монитор -Samsung 1720b 1280*1024 17 дюймов
Клавиатура -Genius 250 dpi
Манипулятор Мышь - Blaze
Принтер -Lexmark E232 600/1200/2400 dpi 22 стр/мин
DVD - rom -LG 16/32/48
Floppy -Nec
Операционная система - Windows XP service pack 2 (build 2006)
2. ПРОЕКТНАЯ ЧАСТЬ
2.1 РАЗРАБОТКА БД
Как уже говорилось выше, разработка полноценной базы данных состоит из трех этапов: проектирование инфологической, даталогической и физической моделей данных.
Размещено на http://www.allbest.ru/
Рис.2.1 Инфологическая модель данных
Для начала спроектируем инфологическую модель.Подчеркнем, что она не должна ориентироваться на программные средства. Итак, инфологическую модель для базы данных «Учёт автотранспортных средств в ГАИ ГИБДД» представлена на рис.1.2.
На основе полученной инфологической модели построим схему данных - даталогическую модель данных.
Автоинспекция.db
№ п./п. |
Наименование |
Назначение |
Тип |
Размерность |
|
1 |
Year_v |
Год выпуска |
N |
4 |
|
2 |
Year_r |
Год регистрации |
N |
4 |
|
3 |
Password |
Технический паспорт |
A |
15 |
|
4 |
Color |
Цвет |
A |
10 |
|
5 |
Fam |
Фамилия |
A |
25 |
|
6 |
Im |
Имя |
A |
25 |
|
7 |
Otc |
Отчество |
A |
25 |
|
8 |
Adres |
Адрес |
A |
25 |
|
9 |
Pol |
Пол |
L |
1 |
Avto.db
№ п./п. |
Наименование |
Назначение |
Тип |
Размерность |
|
1 |
Kod_avto |
Код авто |
A |
10 |
|
2 |
Model |
Модель |
A |
15 |
|
3 |
Ser_№ |
Серийный номер |
A |
10 |
|
4 |
№_Strakh |
Номер страховки |
A |
15 |
Автоинспекция.db
№ |
Year_v |
Year_r |
Color |
Password |
Fam |
Im |
Otc |
Pol |
Adres |
|
1 |
1999 |
2000 |
silver |
278ж |
Махмудов |
Замир |
Пашаевич |
Т |
Редукт. |
|
2 |
2000 |
2002 |
red |
45е |
Мирзоев |
Данял |
Анварбег. |
Т |
Ярыг. 13 |
|
3 |
2001 |
2004 |
black |
145rh |
Демьяненко |
Андрей |
Виталив. |
Т |
Ленинкент |
|
4 |
1995 |
1997 |
white |
584et |
Тагиров |
Султан |
Махмуд. |
Т |
Ленина 15 |
|
5 |
1990 |
1994 |
green |
598rd |
Андреев |
Нарик |
Омарович |
Т |
Редуктор. |
|
6 |
2002 |
2005 |
blue |
69e |
Магомедов |
Наби |
Махаевич |
Т |
5 й пос. |
Машина.db
№ п./п. |
Kod_avto |
Model |
Ser_№ |
№_Strakh |
|
1 |
01 |
Audi |
25873 |
3254060 |
|
2 |
02 |
Ferrari |
28981 |
6723354 |
|
3 |
03 |
Mers |
84971 |
0003541 |
|
4 |
04 |
Jip |
25941 |
7640120 |
|
5 |
05 |
Jiguli |
58124 |
7085138 |
|
6 |
06 |
Porshe |
65457 |
9683140 |
2.2 ОПИСАНИЕ ФУНКЦИЙ СИСТЕМ
FGL:
Main Manu:
1. Процедура N1Click - Операции.
2. Процедура N2Click. Открывается окно «Ввод и редактирование» при выборе в строке меню ОперацииВвод и редактирование.
3. Процедура N3Click. Открывается окно «Фильтрация и поиск» при выборе в строке меню ОперацииФильтрация/поиск.
4. Процедура N4Click- Отчеты.
5. Процедура N5Click. Открывается окно «Список статей» при выборе в строке меню ОтчетыСписок статей. В нем осуществляется просмотр или печать списка статей финансового права.
6. Процедура N6Click. Открывается окно «Список документов» при выборе в строке меню ОтчетыСписок документов. В нем осуществляется просмотр или печать списка документов финансового права.
7. Процедура N7Click. Открывается окно «О программе» при выборе в строке меню СправкаО программе.
8. Процедура N8Click- Справка.
9. Процедура N9Click.Осуществляет выход из программы при нажатии в строке меню (компонент Main Menu) на пункте «Выход».
Заключение
В представленной работе была создана база данных, которая отражает в удобной форме «Учёт автотранспортных средств в ГАИ и ГИБДД» В ней хранятся термины, в которых содержатся административные статьи, регулирующие правила дорожного движения. В данной программе я попытался учесть наиболее важные моменты, связанные с учетом автотранспортных средств. Результатом выполнения программы является выдача информации о владельцах автотранспортных средств, а также об автомобилях которые находятся в учете ГАИ и ГИБДД. Информация выводится:
на принтер;
на экран.
В ходе курсовой работы были изучены и освоены методы разработки и проектирования баз данных с помощью удобной СУБД Borland С++ Builder6.
Литература
1. БД: модель и разработка, реализация. Т.С.Карпова. Издательство Питер,
2001г, 379 стр.
2. Теория и практика построения БД. Д.Кренке. Издательство Питер,
2003г, 187 стр.
3. БД: введение в теорию и методологию. Моисеева Р.Л.
4. Издательство: Статистика транспортного средства, 1995г, 215 стр.
5. Проектирование и использование БД. С.Н. Диго ,1995г , 186 стр.
Приложение №1
Текст программы для формы FGl
#include <vcl.h>
#pragma hdrstop
#include "UGL.h"
#include "UR.h"
#include "UF.h"
#include "USPR.h"
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFGL *FGL;
//---------------------------------------------------------------------------
__fastcall TFGL::TFGL(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFGL::N9Click(TObject *Sender)
{
FGL->Close();
}
//---------------------------------------------------------------------------
void __fastcall TFGL::N2Click(TObject *Sender)
{
FR->Show();
}
//---------------------------------------------------------------------------
void __fastcall TFGL::N3Click(TObject *Sender)
{
FF->Show();
}
//---------------------------------------------------------------------------
void __fastcall TFGL::N8Click(TObject *Sender)
{
FSPR->Show();
}
Текст программы для формы FR
#include <vcl.h>
#pragma hdrstop
#include "UGL.h"
#include "UR.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFR *FR;
//---------------------------------------------------------------------------
__fastcall TFR::TFR(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFR::FormCreate(TObject *Sender)
{
Egod_vip->Text = Table1 god_vip ->AsString;
Egod_reg->Text = Table1god_reg->AsString;
Etex_pasp->Text = Table1tex_pasp->AsString;
Esvet->Text = Table1svet->AsString;
Efam->Text = Table1fam->AsString;
EIm->Text = Table1Im->AsString;
Eotc->Text = Table1otc->AsString;
Eadres->Text = Table1adres->AsString;
Epol->Text = Table1pol->AsString;
Ekod_avto->Text = Table1kod_avto->AsString;
Emodel->Text = Table1model->AsString;
Eser_nom->Text = Table1ser_nom->AsString;
Enom_str->Text = Table1nom_str->AsString;
Table2->Filter="N_st='"+Table1->FieldByName("N_st")->AsString+"'";
Table2->Filtered=true;
}
//---------------------------------------------------------------------------
void __fastcall TFR::Table1AfterScroll(TDataSet *DataSet)
{
Egod_vip->Text = Table1 god_vip ->AsString;
Egod_reg->Text = Table1god_reg->AsString;
Etex_pasp->Text = Table1tex_pasp->AsString;
Esvet->Text = Table1svet->AsString;
Efam->Text = Table1fam->AsString;
EIm->Text = Table1Im->AsString;
Eotc->Text = Table1otc->AsString;
Eadres->Text = Table1adres->AsString;
Epol->Text = Table1pol->AsString;
Ekod_avto->Text = Table1kod_avto->AsString;
Emodel->Text = Table1model->AsString;
Eser_nom->Text = Table1ser_nom->AsString;
Enom_str->Text = Table1nom_str->AsString;
Table2->Filter="N_st='"+Table1->FieldByName("N_st")->AsString+"'";
Table2->Filtered=true;
}
//---------------------------------------------------------------------------
void __fastcall TFR::Button2Click(TObject *Sender)
{
AnsiString s;
const AnsiString s1=", ";
s="";
if (Table1god_vip->AsString != Egod_vip_d->Text)
s+= "год выпуска”;
if (Table1god_reg->AsString !=Egod_reg->Text)
{
if (s !="") s+=s1;
s+= "год регистрации" ;
}
if (Table1tex_pas->AsString !=Etex_pas->Text)
{
if (s !="") s+=s1;
s+= "Технический паспорт";
}
if (Table1svet->AsString !=Esvet->Text)
{
if (s !="") s+=s1;
s+= "цвет" ;
}
if (Table1fam->AsString !=Efam->Text)
{
if (s !="") s+=s1;
s+= "фамилия";
}
if (Table1Im->AsString !=EIm->Text)
{
if (s !="") s+=s1;
s+= "имя" ;
}
if (Table1otc->AsString !=Eotc->Text)
{
if (s !="") s+=s1;
s+= "отчество";
}
if (Table1adres->AsString !=Eadres->Text)
{
if (s !="") s+=s1;
s+= "Адрес";
if (Table1pol->AsString !=Epol->Text)
{
if (s !="") s+=s1;
s+= "пол";
if (Table1kod_avto->AsString !=Ekod_avto->Text)
{
if (s !="") s+=s1;
s+= "код авто";
if (Table1ser-_nom>AsString !=Eser_nom->Text)
{
if (s !="") s+=s1;
s+= "серийный номер";
if (Table1nom_str->AsString !=Enom_str->Text)
{
if (s !="") s+=s1;
s+= "номер страховки";
if (s !="")
{
if ( Application->MessageBox(
("Действительно хотите изменить запись?"+s+"?").c_str(),
"Подтвердите изменения",
MB_YESNO+MB_ICONQUESTION)==IDYES)
{
Egod_vip->Text = Table1 god_vip ->AsString;
Egod_reg->Text = Table1god_reg->AsString;
Etex_pasp->Text = Table1tex_pasp->AsString;
Esvet->Text = Table1svet->AsString;
Efam->Text = Table1fam->AsString;
EIm->Text = Table1Im->AsString;
Eotc->Text = Table1otc->AsString;
Eadres->Text = Table1adres->AsString;
Epol->Text = Table1pol->AsString;
Ekod_avto->Text = Table1kod_avto->AsString;
Emodel->Text = Table1model->AsString;
Eser_nom->Text = Table1ser_nom->AsString;
Enom_str->Text = Table1nom_str->AsString;
}
}
}
//---------------------------------------------------------------------------
void __fastcall TFR::Button1Click(TObject *Sender)
{
Table1->Insert();
}
//---------------------------------------------------------------------------
void __fastcall TFR::Button3Click(TObject *Sender)
{
if ( Application->MessageBox(
"Действительно хотите удалить запись?",
"Подтвердите решение",
MB_YESNO+MB_ICONEXCLAMATION)==IDYES)
Table1->Delete();
}
//---------------------------------------------------------------------------
void __fastcall TFR::TabSheet1ContextPopup(TObject *Sender,
TPoint &MousePos, bool &Handled)
{
Egod_vip->Text = Table1 god_vip ->AsString;
Egod_reg->Text = Table1god_reg->AsString;
Etex_pasp->Text = Table1tex_pasp->AsString;
Esvet->Text = Table1svet->AsString;
Efam->Text = Table1fam->AsString;
EIm->Text = Table1Im->AsString;
Eotc->Text = Table1otc->AsString;
Eadres->Text = Table1adres->AsString;
Epol->Text = Table1pol->AsString;
Ekod_avto->Text = Table1kod_avto->AsString;
Emodel->Text = Table1model->AsString;
Eser_nom->Text = Table1ser_nom->AsString;
Enom_str->Text = Table1nom_str->AsString;
CDKodeks->ItemIndex =CDKodeks->Items->IndexOf(Table2Kodeks->AsString);
}
//---------------------------------------------------------------------------
void __fastcall TFR::Table2AfterScroll(TDataSet *DataSet)
{
Egod_vip->Text = Table1 god_vip ->AsString;
Egod_reg->Text = Table1god_reg->AsString;
Etex_pasp->Text = Table1tex_pasp->AsString;
Esvet->Text = Table1svet->AsString;
Efam->Text = Table1fam->AsString;
EIm->Text = Table1Im->AsString;
Eotc->Text = Table1otc->AsString;
Eadres->Text = Table1adres->AsString;
Epol->Text = Table1pol->AsString;
Ekod_avto->Text = Table1kod_avto->AsString;
Emodel->Text = Table1model->AsString;
Eser_nom->Text = Table1ser_nom->AsString;
Enom_str->Text = Table1nom_str->AsString;
CDKodeks->ItemIndex =CDKodeks->Items->IndexOf(Table2Kodeks->AsString);
}
//---------------------------------------------------------------------------
void __fastcall TFR::Button5Click(TObject *Sender)
{
AnsiString s;
const AnsiString s1=", ";
s="";
if (Table2N_r->AsString != EN_r->Text)
s+= "№ раздела";
if (Table2Naz_r->AsString !=ENaz_r->Text)
{
if (s !="") s+=s1;
s+= "Название раздела" ;
}
if (Table2N_g->AsString !=EN_g->Text)
{
if (s !="") s+=s1;
s+= "№ главы";
}
if (Table2Naz_g->AsString !=ENaz_g->Text)
{
if (s !="") s+=s1;
s+= "Название главы" ;
}
if (Table2Naz_st->AsString !=ENaz_st->Text)
{
if (s !="") s+=s1;
s+= "Название статьи";
}
if (Table2Soder->AsString !=ESoder->Text)
{
if (s !="") s+=s1;
s+= "Содержание" ; }
if (Table2N_st->AsString !=EN_st->Text)
{
if (s !="") s+=s1;
s+= "№ статьи" ; }
if (Table2Kodeks->AsString !=CDKodeks->Text)
{
if (s !="") s+=s1;
s+= Кодекс";
}
if (s !="")
{
if ( Application->MessageBox(
("Действительно хотите изменить запись?"+s+"?").c_str(),
" Подтвердите изменения ",
MB_YESNO+MB_ICONQUESTION)==IDYES)
{
Table2->Edit();
Table2N_r->AsString = EN_r->Text;
Table2Naz_r->AsString = ENaz_r->Text;
Table2N_g->AsString = EN_g->Text;
Table2Naz_g->AsString = ENaz_g->Text;
Table2Naz_st->AsString = ENaz_st->Text;
Table2Soder->AsString = ESoder->Text;
Table2Kodeks->AsString = CDKodeks->Text;
}
}
}
//---------------------------------------------------------------------------
void __fastcall TFR::Button4Click(TObject *Sender)
{
Table2->Insert();
}
//---------------------------------------------------------------------------
void __fastcall TFR::Button6Click(TObject *Sender)
{
if ( Application->MessageBox(
" Действительно хотите удалить запись?",
" Подтвердите решение ",
MB_YESNO+MB_ICONEXCLAMATION)==IDYES)
Table2->Delete();
}
//---------------------------------------------------------------------------
void __fastcall TFR::N1Click(TObject *Sender)
{
FR->Close();
}
//---------------------------------------------------------------------------
Текст программы для формы FF
#include <vcl.h>
#pragma hdrstop
#include "UGL.h"
#include "UF.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFF *FF;
//---------------------------------------------------------------------------
__fastcall TFF::TFF(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFF::RGFClick(TObject *Sender)
{
if (RGF->ItemIndex==0)
Table1->Filtered = false;
else
{
if (RGF->ItemIndex==1)
Table1->Filter="N_ist='"+CBist->Text+"'";
else
Table1->Filter="N_st="+CBst->Text+"";
Table1->Filtered = true;
}
}
//---------------------------------------------------------------------------
void __fastcall TFF::ENomer_dChange(TObject *Sender)
{
TLocateOptions SearchOptions;
Table1->Locate("Nomer_d",ENomer_d->Text,
SearchOptions<<loPartialKey<<loCaseInsensitive);
}
//---------------------------------------------------------------------------
void __fastcall TFF::CBistChange(TObject *Sender)
{
if (RGF->ItemIndex==0)
Table1->Filtered = false;
else
{
if (RGF->ItemIndex==1)
Table1->Filter="N_ist='"+CBist->Text+"'";
else
Table1->Filter="N_st="+CBst->Text+"";
Table1->Filtered = true;
}
}
//---------------------------------------------------------------------------
void __fastcall TFF::CBstChange(TObject *Sender)
{
if (RGF->ItemIndex==0)
Table1->Filtered = false;
else
{
if (RGF->ItemIndex==1)
Table1->Filter="N_ist='"+CBist->Text+"'";
else
Table1->Filter="N_st="+CBst->Text+"";
Table1->Filtered = true;
}
}
//---------------------------------------------------------------------------
void __fastcall TFF::EAvtorChange(TObject *Sender)
{
TLocateOptions SearchOptions;
Table1->Locate("Avtor",EAvtor->Text,
SearchOptions<<loPartialKey<<loCaseInsensitive);
}
//---------------------------------------------------------------------------
void __fastcall TFF::ETerminChange(TObject *Sender)
{
TLocateOptions SearchOptions;
Table1->Locate("Termin",ETermin->Text,
SearchOptions<<loPartialKey<<loCaseInsensitive);
}
//---------------------------------------------------------------------------
void __fastcall TFF::N1Click(TObject *Sender)
{
FF->Close();
}
//---------------------------------------------------------------------------
void __fastcall TFF::FormCreate(TObject *Sender)
{
}
//---------------------------------------------------------------------------
Текст программы для формы FSPR
#include <vcl.h>
#pragma hdrstop
#include "USPR.h"
#include "UGL.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFSPR *FSPR;
//---------------------------------------------------------------------------
__fastcall TFSPR::TFSPR(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFSPR::N1Click(TObject *Sender)
{
FSPR->Close();
}
//---------------------------------------------------------------------------
Текст программы для формы Form1
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "UO.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
FO->QuickRep1->Print();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
FO->QuickRep1->Preview();
}
//---------------------------------------------------------------------------
Текст программы для формы Form2
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
#include "UO2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender)
{
FO2->QuickRep1->Print();
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button2Click(TObject *Sender)
{
FO2->QuickRep1->Preview();
}
//---------------------------------------------------------------------------
Размещено на Allbest.ru
Подобные документы
Создание базы данных и СУБД. Структура простейшей базы данных. Особенности языка программирования Турбо Паскаль. Описание типов, констант, переменных, процедур и функций. Описание алгоритма базы данных (для сотрудников ГИБДД), листинг программы.
курсовая работа [26,3 K], добавлен 26.01.2012Проектирование базы данных системы принятия, обработки и учёта заявок в отдел информационных технологий; разработка инфологической и даталогической моделей, реализация физической модели. Создание приложений для визуализации работы с базой данных.
дипломная работа [2,8 M], добавлен 25.01.2013Проектирование базы данных для автоматизации деятельности по учету автотранспорта ГИБДД Вяземского района. Выбор инструментария для разработки базы данных и приложения по её ведению. Описание интерфейса и физической структуры приложения баз данных.
курсовая работа [2,2 M], добавлен 28.06.2011Реляционная база данных. Создание и проектирование баз данных в среде Borland Delphi 7. Основные функции базы данных: учет информации об ассортименте продукции; учет сведений о дистрибьюторах фирмы. Назначение программы и инструкция пользователю.
курсовая работа [507,3 K], добавлен 22.06.2009Этапы создания и разработки базы данных. Построение модели предметной области. Разработка даталогической и физической моделей данных, способы обработки данных о сотрудниках организации. Проектирование приложений пользователя. Создание кнопочной формы.
курсовая работа [2,1 M], добавлен 14.02.2011Разработка корпоративной информационной системы, использующей несколько баз данных, содержащих информацию о наличии товара на складе, ходе ремонта компьютерной техники и данных о персонале. Разработка инфологической и даталогической моделей базы данных.
дипломная работа [1009,2 K], добавлен 01.05.2015Разработка базы данных "Учет движения товара в магазине", ее основные функции. Разработка инфологической, концептуальной и физической моделей, предметная область. Определение объектов и связей между объектами. Структура программного обеспечения.
курсовая работа [1023,7 K], добавлен 05.12.2012Понятие базы данных, модели данных. Классификация баз данных. Системы управления базами данных. Этапы, подходы к проектированию базы данных. Разработка базы данных, которая позволит автоматизировать ведение документации, необходимой для деятельности ДЮСШ.
курсовая работа [1,7 M], добавлен 04.06.2015Ограничения, присутствующие в предметной области. Проектирование инфологической модели данных. Описание основных сущностей и их атрибутов. Логический и физический уровни модели данных. Реализация базы данных: представления, триггеры, хранимые процедуры.
курсовая работа [1,7 M], добавлен 10.02.2013Анализ проектирования баз данных на примере построения программы ведения информационной системы картотеки ГИБДД. Основные функции базы данных. Обоснование выбора технологий проектирования и реализации базы данных. Описание информационного обеспечения.
курсовая работа [753,0 K], добавлен 27.08.2012