Базы данных

Автор работы: Пользователь скрыл имя, 25 Мая 2012 в 09:45, курсовая работа

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

Потоки информации, циркулирующие в мире, который нас окружает, огромны. Во времени они имеют тенденцию к увеличению. Поэтому в любой организации, как большой, так и маленькой, возникает проблема такой организации управления данными, которая обеспечила бы наиболее эффек­тивную работу. Некоторые организации используют для этого шкафы с папками, но большинство предпочитают компьютеризированные способы – базы данных, позволяющие эф­фективно хранить, структурировать и систематизировать большие объемы дан­ных. И уже сегодня без баз данных невозможно представить работу большинства финансовых, промышленных, торговых и прочих организаций. Не будь баз данных, они бы просто захлебнулись в информационной лавине.
Существует много веских причин перевода существующей информации на компьютерную основу. Сейчас стоимость хранения информации в файлах ЭВМ дешевле, чем на бумаге. Базы данных позволяют хранить, структурировать информацию и извлекать оптимальным для пользователя образом. Использование клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации, а также упрощают доступ и ведение, поскольку они основываются на комплексной обработке данных и централизации их хранения. Кроме того ЭВМ позволяет хранить любые форматы данных текст, чертежи, данные в рукописной форме, фотографии, записи голоса и т.д.
Для использования столь огромных объемов хранимой информации, помимо развития системных устройств, средств передачи данных, памяти необходимы средства обеспечения диалога человек-ЭВМ, которые позволяют пользователю вводить запросы, читать файлы, модифицировать хранимые данные, добавлять новые данные или принимать решения на основании хранимых данных. Для обеспечения этих функций созданы специализированные средства – системы управления базами данных (СУБД). Современные СУБД - многопользовательские системы управления базой данных, которые специализируется на управлении массивом ин­формации одним или множеством одновременно работающих пользователей.

Целью данной курсовой работы являлось дать понятие базы данных и создание базы данных, хранящую информацию о расписании и работа с ней в системе программирования Delphi 7.0. Основная задача – работа с SQL – запросами, а так же внесение и изменение данных.

Содержание работы

1. Введение…………………………………………………………..………….4
2. Понятие информационной системы………………………………………..6
3. Понятие базы данных………………………………………………………..9
4. Язык запросов SQL…………………………………………………………..14
5. Проектирование базы данных……………………………………………….16
6. Этапы проектирования базы данных………………………………………..18
7. Практическая часть. Разработка программы в системе программирования Delphi 7.0………………………………………………………………...……19
8. Заключение………………………………………………………………...…24
9. Список литературы…………………………………………………………..25

Файлы: 1 файл

ПЗ.doc

— 125.00 Кб (Скачать файл)

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

    В настоящее время существуют СУБД, реализующие эти возможности как на уровне локальных баз данных, расположенных на одном диске (Paradox, Dbase), так  и промышленных баз данных (Acsess, Oracle,MSSQL, FoxPro). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

    4. Язык запросов SQL 

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

    SQL определяется Американским Национальным Институтом Стандартов и Международной Организацией по стандартизации (ISO) . Несмотря на это, некоторые производители баз данных вносят изменения и дополнения в этот язык. Эти изменения незначительны и основа остаётся совместимой со стандартом. Что такое реляционная база данных? Это таблица, в которой в качестве столбцов выступают поля данных, а каждая строка хранит данные. В каждой таблице должно быть одно уникальное поле, которое однозначно будет идентифицировать строку. Это поле называется ключевым. Эти поля очень часто используются для связывания таблиц или для обеспечения уникальности каждой записи. Но даже если у тебя таблица не связана, ключевое поле всё равно обязательно. Вот тут тебе поможет ключ. В качестве ключа желательно использовать численный тип и если позволяет база данных, то будет лучше, если он будет типа "autoincrement" (автоматически увеличивающееся/уменьшающееся число).

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

    SQL может быть двух типов: интерактивный  и вложенный . Первый - это отдельный  язык, он сам выполняет запросы  и сразу показывает результат  работы. Второй - это когда SQL язык вложен в другой, как например в С++ или Delphi.

    Интерактивный SQL более близок к стандартному, а  во вложенном очень часто встречаются  отклонения и дополнения. Например, в стандартном SQL различаются только два типа данных: строки и числа, но некоторые производители добавляют свои типы (Date, Time, Binary и т.д.). Числа в SQL делятся на два типа: целые (INTEGER или INT) и дробные (DECIMAL или DEC). Строки ограничены размером в 254 символа.[2] 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

    5. Проектирование базы данных 

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

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

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

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

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

    Чтобы различать представления данных конечными пользователями, программистами и АБД создаются разные уровни моделей данных. Основное различие между указанными выше тремя типами моделей данных (концептуальной, логической и физической) состоит в способах представления взаимосвязей между объектами. При проектировании БД требуется различать взаимосвязи между объектами, между свойствами одного объекта и между свойствами различных объектов. Рассмотрим каждую из них более подробно.[2] 
 
 
 
 
 
 
 
 
 
 
 
 
 

    6. Этапы проектирования базы данных 

    Этапы проектирования базы данных с учетом рассмотренных выше аспектов:

  1.   Проектирование инфологической концептуальной модели баз данных:

     а) Исследование предметной области применения и выявление требований конечных пользователей и решаемых задач.

     в) Анализ данных: сбор основных данных (объекты, связи между объектами).

     с)  Построение ER-диаграммы базы данных.

  1. Проектирование даталогической модели базы данных (учитывать требования СУБД ).

     a) Потенциально возможные прикладные  программы: сбор информации о  потенциальных возможностях использования  данных.

  1. Проектирование физической модели базы данных (оценка эксплуатационных характеристик прикладных программ).
  2. Реализация базы данных (оценка при неудовлетворительных эксплуатационных характеристиках).[1]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

7. Практичекая часть. Разработка программы в  системе программирования Delphi 7.0. 

    В MSSQL создаём базу данных «Schedule», выполнив sql-скрипт:

     

    create database Schedule; 

    create table Kafedra

    ( id         int PRIMARY KEY identity   not null,

      KafedraName         varchar (255) not null,

      KafedraShortName varchar (100) not null 

    ); 

    create table Auditory

    ( id    int PRIMARY KEY identity   not null,

      AuditoryName varchar (100) not null,

      CountStudents int not null 

    ); 

    create table Predmets

    ( id          int PRIMARY KEY identity   not null,

      PredmetName           varchar (255) not null,

      PredmetShortName  varchar (50) not null 

    );

    create table Spec

    ( id                      int PRIMARY KEY identity   not null,

      SpecName          varchar (100) not null,

      SpecShortName varchar (30) not null,

      SpecKod             int not null 

    ); 

    create table Prepods

    ( id                int PRIMARY KEY identity   not null,

      KafedraId  int  not null constraint FK_Prepods_KafedraId FOREIGN 

                         KEY([KafedraId]) REFERENCES [dbo].[Kafedra] ([id]) ON 

                         DELETE CASCADE,

      PrepodFIO varchar (100) not null,

      Post           varchar (50)   not null 

    );

    create table Groups

    ( id int PRIMARY KEY identity   not null,

      SpecId int not null constraint FK_Groups_SpecId FOREIGN KEY([SpecId])

                  REFERENCES [dbo].[Spec] ([id])ON DELETE CASCADE,

      GroupName varchar (100) not null,

      GroupCountStudents int not null,

      GroupBegin datetime not null);

    create table Times

    ( id int PRIMARY KEY identity   not null,

      Nomer int not null,

      TimesBegin datetime not null,

      TimesEnd   datetime not null,

    );

    create table Zanyatiya

    (

      id int PRIMARY KEY identity   not null,

      ZanName varchar(20)  not null

     );

    create table Days

    (

      id int PRIMARY KEY identity   not null,

      daysNum int  not null ,

      daysName varchar(20)  not null

     

    );

    create table Sheduler

    (

      Id                 int PRIMARY KEY identity   not null,

      GroupId       int  not null constraint FK_Sheduler_GroupId    FOREIGN

                           KEY([GroupId])     REFERENCES [dbo].[Groups]   ([id]) 

                           ON

                           DELETE CASCADE ,

      AuditoryId   int  not null constraint FK_Sheduler_AuditoryId FOREIGN

                                 KEY([AuditoryId])  REFERENCES [dbo].[Auditory] ([id])

                                ON DELETE CASCADE,

      TimeId          int  not null constraint FK_Sheduler_TimeId     FOREIGN

                           KEY([TimeId])      REFERENCES [dbo].[Times]    ([id]) ON

                            DELETE CASCADE, 
 

      PredmetsId     int  not null constraint FK_Sheduler_PredmetsId FOREIGN

                             KEY([PredmetsId])  REFERENCES [dbo].[Predmets] ([id]) 

                             ON DELETE CASCADE,

      PrepodId        int  not null constraint FK_Sheduler_PrepodId   FOREIGN

                             KEY([PrepodId])    REFERENCES [dbo].[Prepods]  ([id])

                             ON DELETE CASCADE,

      daysOfWeek  int  not null constraint FK_Sheduler_daysOfWeek FOREIGN

                             KEY([daysOfWeek]) REFERENCES [dbo].[Days]     ([id])

                             ON DELETE CASCADE,

      typeWeek       int  not null,

      ZanId              int  not null constraint FK_Sheduler_ZanId      FOREIGN

                             KEY([ZanId])       REFERENCE [dbo].[Zanyatiya]([id])      

                             ON DELETE CASCADE

    ); 
 
 

    В Delphi 7 создаём новую форму DataModule, куда помещаем необходимые компоненты для работы с базой данных:

    ADOConnection – используется для соединения с БД;

    ADOTable – используется для доступа к конкретной таблице;

Информация о работе Базы данных