Скачать 1.91 Mb.
|
Цель работы: научиться приводить базы данных к соответствующей нормальной форме Образовательные результаты, заявленные во ФГОС третьего поколения: Студент должен уметь:
знать:
Краткие теоретические и учебно-методические материалы по теме лабораторной работы Процесс нормализации — это разбиение таблицы на две или более с целью ликвидации дублирования данных и потенциальной их противоречивости. Первая нормальная форма (1НФ-снижение размерности) требует, чтобы каждое поле таблицы БД:
Неделимость поля означает, что значение поля не должно делиться на более мелкие значения. Например, если в поле "Подразделение" содержится название факультета и название кафедры, требование неделимости не соблюдается и необходимо из данного поля выделить или название факультета, или кафедры в отдельное поле. Повторяющимися являются поля, содержащие одинаковые по смыслу значения. Например, если требуется получить статистику сдачи экзаменов по предметам, можно создать поля для хранения данных об оценке по каждому предмету. Однако в этом случае мы имеем дело с повторяющимися группами. Вторая нормальная форма (2НФ – выделение ключевых полей) требует, чтобы все поля таблицы зависели от первичного ключа, то есть, чтобы первичный ключ однозначно определял запись и не был избыточен. Те поля, которые зависят только от части первичного ключа, должны быть выделены в составе отдельных таблиц. Третья нормальная форма (ЗНФ – выделение вторичных связанных полей) требует, чтобы значение любого поля таблицы, не входящего в первичный ключ, не зависело от значения другого поля, не входящего в первичный ключ. Теория нормализации основывается на наличии той или иной зависимости между столбцами таблицы. Основными являются два вида таких зависимостей — функциональные и многозначные. Функциональная зависимость . Если значение одного поля определяется значением другого поля, то между полями существует функциональная зависимость. Причем значение первого поля в любой момент времени принимает единственное значение из списка значений. Многозначная зависимость. Если одно неключевое поле многозначно зависит от другого поля ключевого или неключевого, то между этими полями существует многозначная зависимость. Другими словами, если для одного поля можно указать четкое множество значений другого поля, то между этими полями существует многозначная зависимость. В реляционной модели объекты представлены в виде таблиц (двумерных массивов). Таблицей могут отображаться не только объекты, но и связи. Каждая таблица в реляционной теории называется отношением. В простейшем случае база данных состоит из одной таблицы, в которой хранятся все данные. Такая таблица называется универсальной. Процедура выделения новых таблиц (отношений) называется декомпозицией, а каждая выделенная таблица – проекцией. Если соединение всех выделенных проекций приводит к первоначальной универсальной таблице, то такая декомпозиция называется полной. Пример. Дана не нормализованная (универсальная) таблица «Студент». Необходимо привести её к третьей нормальной форме.
Данные, находящиеся в столбцах «Группа» и «Специальность» могут повторяться в процессе заполнения много раз, что вызовет избыточность данных в таблице. Следовательно данную таблицу можно разделить на 3 сущности, имеющие отношения между собой. В результате приведения к 2NF получаются три отношения: Таблица с данными о студенте
Список групп Список специальностей
Чтобы привести базу к третьей нормальной форме, надо:
В результате приведения к 3NF получаются три отношения: Таблица с данными о студенте
Список групп
Список специальностей
Задание. Приведите к третьей нормальной форме следующую ненормализованную таблицу (в жирной рамке ключ таблицы):
Контрольные вопросы.
Лабораторная работа 4 Создание объектов баз данных (таблиц) Цель работы: научиться создавать файл базы данных, псевдоним для базы данных, создавать таблицы и вводить данные. Образовательные результаты, заявленные во ФГОС третьего поколения: Студент должен уметь:
знать:
Краткие теоретические и учебно-методические материалы по теме лабораторной работы . Реляционная база данных состоит из взаимосвязанных таблиц. Каждая таблица содержит информацию об объектах одного типа. Таблица БД представляет собой обычную двумерную таблицу с характеристиками (атрибутами) какого-то множества объектов и имеющая имя - идентификатор, по которому на неё можно сослаться. Тип поля характеризует тип хранящихся в поле данных. Это могут быть строки, числа, булевы значения, большие тексты (например характеристики сотрудников), изображения (фотографии) и т.п. Каждая строка таблицы соответствует одному из объектов. Она называется записью и содержит значения всех полей, характеризующих данный объект При построении таблиц БД важно обеспечить непротиворечивость информации. Это делается введением ключевых полей, обеспечивающих уникальность каждой записи. Ключевым может быть одно или несколько полей. Database Desktop - это утилита, которая поставляется вместе с Delphi для интерактивной работы с таблицами различных форматов локальных баз данных - Paradox и dBase, а также SQL-серверных баз данных InterBase, Oracle, Informix. Для работы с таблицами БД при проектировании приложений удобно использовать программу Database Desktop (DBD), входящей в комплект поставки Delphi. Утилита DBD решает целый ряд задач, связанных с таблицами файл-серверных БД. С ее помощью можно создать или изменить структуру таблицы, создать ее первичные ключи и индексы, создавать и изменять записи, просматривать их, выполнять визуальные и SQL - запросы, операции с псевдонимами и т. д. Процесс создания новой таблицы выполняется командой Пуск ׀ Программы ׀ Borland Delphi 5 ׀ Data-base Desktop (если вы работаете в среде Delphi, для запуска используйте главное меню: Tools ׀ Database Desktop). В меню выбирают File ׀ Working Directory и устанавливают в появившемся окне (рис.1) ссылку на каталог, в котором будет создана таблица (рис.1) Рис. 1 Установка рабочего каталога Для создания таблицы выбирают File ׀ New ׀ Table. DBD создаст окно Create Table, в котором можно выбрать тип таблицы. Тип таблицы определяет многие ее свойства. В появившемся диалоге Create Table выбирается тип таблицы (из известных стандартных – например, Paradox, Access, dBase, InterBase, Oracle и т.д.). Рис. 2 Выбор типа таблицы Тип Paradox 7 можно считать наилучшим для файл-серверных таблиц: согласитесь с умалчиваемым предложением Paradox 7, нажав кнопку ОК. На экране появится окно (рис.3), предназначенное для создания / редактирования структуры таблицы. Рис. 3 Окно создания структуры таблицы По умолчанию сразу после открытия окна в правой его части в списке Table properties выбран пунктValidity Chekcs , что позволяет контролировать содержимое полей. С помощью флажка Required Fields можно потребовать обязательного заполнения поля при вводе новой записи. Также можно контролировать минимальное и максимальное значение числового поля в строках Minimum Value и Maximum Value . В строке Default Value можно указать значение поля по умолчанию – при вводе новой записи значение в это поле поместит BDE .С помощью строки Picture можно задать шаблон для автоматического форматирования значения поля. Например, если задан шаблон (###)###-#### и в поле введена строка 9054005647, она будет автоматически преобразована к виду (905)400-5647. Кнопки предназначены для: Borrow … – осуществляет копирование структуры таблицы из другой таблицы Save as … – сохраняет изменения в структуре таблицы Cancel – выход без сохранения Help – вызов справки Чтобы определить структуру таблицы в этом окне необходимо заполнить следующие графы: · Field Name - Имя поля . · Type - Тип поля. Вызывает список допустимых типов, щелчком правой кнопки мыши или клавишей пробел. · Size - Размер. Определяет размер поля. Не все типы полей имеют размер. Большинство типов имеют стандартный размер, который не может быть изменен. Размер в основном меняется у строковых типов (Alpha), бинарных (Binary) и др. · Key - Ключ . Двойной щелчок мышью определяет ключевое поле. Ключевыми могут быть только первые поля, то есть второе поле сможет быть ключевым только вместе с первым. В окне определения структуры таблицы выполняются следующие действия:
В этом списке обязательным является только первое действие, т.е. каждая таблица должна иметь хотя бы одно поле. Остальные действия выполняются при необходимости Для наполнения таблицы данными следует открыть таблицу: Запускается DBD с помощью Пуск ׀ Программы ׀ Borland Delphi 5 ׀ Database Desktop, выберите File ׀ Open Table, в открывшемся окне устанавливается путь к рабочей папке и открывается созданный файл; в открытой таблице в главном меню выбирается Table ׀ Edit Data и таблица наполняется исходными данными. Для просмотра таблицы используется команда Table ׀ View Data или клавиша F9. Все рассматриваемые действия по управлению структурой таблицы можно выполнить также программно. Псевдоним указывает местонахождение файлов БД и представляет собой специальное имя для обозначения каталога. Использование псевдонимов существенно облегчает перенос файлов БД в другие каталоги и на другие компьютеры. При этом не требуется изменять приложение, которое осуществляет доступ к таблицам БД. Если в приложение местонахождения таблицы указано с помощью псевдонима, то после перемещения БД для обеспечения работоспособности приложения достаточно изменить путь, на который указывает псевдоним. Если же в приложение путь к БД указан в явном виде, то есть без псевдонима, то после перемещения БД нужно перемещать само приложение – вносить изменения в исходный код и заново его транслировать. Типы полей формата Paradox
Задание 1. Создать каталог STUDENT на диске С Задание 2. Создать таблицу с данными о студентах. В таблице указать следующие данные: ФИО, дата рождения, на основании какого приказа студент принят в университет, номер зачетки, специальность, курс, стипендия. Во всех текстовых полях, необходимо указать размер. 1) Запустить Database Desktop 2) В появившемся окне выбрать: File ► New ► Table .
Задание 3. Создать псевдоним Регистрация псевдонима: 1) Воспользуйтесь приложением SQLExplorer, запускаемым командой Database ► Explorer. В левой части окна приводится список всех зарегистрированных в системе BDE баз данных, в правой – свойства текущей базы, выбранной в списке. 2) Создание псевдоним для базы данных. Для этого выполните команду Object ► New и в диалоговом окне выбора драйвера укажите значение Standart . 3) После щелчка на кнопке ОК в списке появится новый элемент, помеченный зеленым треугольником. 4) По умолчанию формируется имя базы данных Standard 1 , измените его на Student . 5) Убедитесь, что в свойствах Default Driver (Драйвер по умолчанию) стоит значение Paradox. В свойстве Path укажите каталог, в котором хранится таблица. 6) Зарегистрированную в системе BDE базу сохраните, выбрав для этого Apply в контекстном меню объекта Student. 7) На вопрос о необходимости сохранения изменений нажать Yes . Теперь таблица доступна из среды BDE под именем Student. 8) Закройте Sql Explorer Задание 4. Ввести данные в созданную таблицу Student.db (5записей) Контрольные вопросы.
Лабораторная работа 5-6 Разработка приложений баз данных Цель работы: научиться создавать приложение базы данных. Образовательные результаты, заявленные во ФГОС третьего поколения: Студент должен уметь: - создавать объекты баз данных в современных системах управления базами данных и управлять доступом к этим объектам; знать: - основы разработки приложений баз данных. Краткие теоретические и учебно-методические материалы по теме лабораторной работы Разработка приложения в Delphi включает два взаимосвязанных этап:
Пользовательский интерфейс приложения определяет внешний вид формы при выполнении приложения и то, каким образом пользователь управляет приложением. Интерфейс конструируется путем размещения в форме компонентов, называемых интерфейсными компонентами или элементами управления. Создается пользовательский интерфейс приложения с помощью окна Формы. Функциональность приложения определяется процедурами, которые выполняются при возникновении определенных событий, например, происходящих при действиях пользователя с элементами управления формы. В процессе разработки приложения в форму помещаются компоненты, для них устанавливаются необходимые свойства и создаются обработчики событий. В состав приложения Delphi для работы с базами данных входят три типа компонентов:
В приложениях для работы с базами данных источник данных представлен компонентом DataSource, который размещен на странице Data Access Палитры компонентов. Визуальные компоненты расположены на странице Data Controls Палитры компонентов Компоненты служат для отображения и редактирования сразу нескольких записей. Примером такого компонента является сетка DBGrid, выводящая записи набора данных в табличном виде. Таблицы БД располагаются на диске и являются физическими объектами. Для операций с данными, содержащимися в таблицах, используются наборы данных. Компоненты, представляющие наборы данных, являются невизуальными. В Delphi для доступа к данным в качестве наборов данных используются свои компоненты, в том числе Table (для BDE). Основные компоненты доступа и управления к базам данных: Компоненты доступа к базам данных : TTable - обеспечивает взаимодействие с таблицей БД, т.е. компонент TTable указывает, откуда брать данные и какие поля будут составлять набор данных. Компонент TTable имеет следующие основные свойства: · DatabaseName – база данных · TableName - имя таблицы · Active – активация таблицы (значение True активирует ее) Свойство DatabaseName определяет базу данных, в которой находится таблица. Это свойство может содержать: * псевдоним (псевдоним) * путь для локальных БД * путь и имя файла базы данных для Local InterBase * локальный псевдоним, определенный через компонент TDatabase . Свойство TableName определяет имя таблицы базы данных. TDataSource - определяет связь между базой данных и компонентами управления данными, то есть компонент TDataSource является промежуточным звеном между компонентом Table 1 , соединенным с реальной БД и визуальными компонентами DBGrid 1 и DBNavigator 1 , с помощью которых пользователь взаимодействует с таблицей. В большинстве случаев, все, что нужно сделать с DataSource - это указать в свойстве DataSetсоответствующий TTable . Затем, у визуального компонента вроде DBGrid или DBNavigator в свойствеDataSource указывается TDataSource , который используется в настоящее время. Компоненты управления данными с палитры Data Contorls : TDBGrid - отображает содержимое таблицы БД в виде сетки, в котором столбцы соответствуют полям, а строки записям таблицы. Компонент имеет следующие свойства: · Data Source – содержит ссылку на компонент типа TDataSource , служащий источником данных; Для соединения компонента Table с таблицей заполняются четыре свойства: - DatabaseName – указать алиас базы данных; - TableName – указать имя таблицы; - Active – установить значение True; - Table – по желанию можно заменить стандартное имя компонента на другое – осмысленное. Для соединения компонента DataSource с компонентом Table в его свойстве DataSet надо указать имя нужного компонента Table. Для соединения компонента DBGrid с компонентом DataSource надо в свойстве DataSource компонента DBGrid указать имя нужного компонента DataSource. Редактор полей Для управления отображением данных таблицы используют специальный редактор полей - EditorField . Для вызова Editor Field следует:
Редактор полей имеет следующие свойства:
Задание 1. Создайте приложение для базы данных Student.db 1) Создать пользовательский интерфейс приложения - запустить Delphi; - в свойстве Caption изменить имя формы на Студенты - поместить на форму визуальные компоненты DBGrid, DBNavigator; - поместить невизуальные компоненты DataSource, Table на специальный лист Data Module; - установить необходимые связи между компонентами; - поместить на форму кнопку Button – для выполнения действий 2) Предъявить записи таблицы базы данных. Если вы правильно выполнили все пункты, то форма Студенты примет вид: Задание 2. Определите свойства для полей таблицы Student . db . 1) Выбрать в окне редактора полей таблицы поле SFio и в свойстве DisplayLabel инспектора объектов изменить SFio на ФИО . Выбрать свойство DisplayWidth и заменить размер на 35. 2) Так же поменять свойства других полей таблицы. 3) Для полей логического типа в свойстве DisplayValues можно написать варианты для значенийTrue и False . В поле SSpec в этом свойстве написать «Математика;Физика » (без пробела, разделяя «;»). Получиться как показано на рисунке. 4) Если возникнет необходимость можно скрыть любое поле, выбрав его и в свойстве Visibleинспектора объектов установив значение false. После выполненных действий сетка DBGrid 1 будет выглядеть так: Контрольные вопросы.
Лабораторная работа 7 Работа с объектами баз данных (с полями таблицы) Цель работы: научиться модифицировать пользовательский интерфейс приложения базы данных. Образовательные результаты, заявленные во ФГОС третьего поколения: Студент должен уметь: - создавать объекты баз данных в современных системах управления базами данных и управлять доступом к этим объектам; знать: - основы разработки приложений баз данных. Краткие теоретические и учебно-методические материалы по теме лабораторной работы Компонент TField позволяет обращаться к полям базы данных. Как такового компонента TField на палитре инструментов нет, он входит составной частью в компонент Table (Query или StoredProc). С помощью компонента TField можно управлять полями: отображать их или нет в визуальных компонентах (например, DBGrid), считывать значение поля, записывать в поле значение, создавать вычисляемые поля и т. д. Для управления доступом к полям таблицы предусмотрены два способа. Полный доступ. В этом случае компонент TField не создается, его настройки используются по умолчанию. Пользователь имеет полный доступ ко всем полям и их значениям как через интерфейс, так и программным способом. Выборочный доступ. При выборочном доступе к полям таблицы необходимо запустить редактор полей Field Editor с помощью следующей процедуры: - установить курсор на компонент Table и правой кнопкой мыши вызвать контекстное меню; - из контекстного меню выбрать команду Field Editor; - установить курсор мыши на свободное поле редактора Field Editor и правой кнопкой еще раз вызвать контекстное меню; - из контекстного меню выбрать команду Add all Fields — все поля. Рис.1. Вызов редактора полей Рис.2. Добавление всех полей 1. Обращения к полям и их значениям Сушествует четыре способа для обращения к полям и их значениям. 1. По имени поля. Если для поля построен компонент TField, то имеется возможность обратиться к полю через его имя. По умолчанию имя компонента TField сложное и состоит из двух частей имени таблицы и именем поля, разделенных префиксом (точкой). 2. Через метод FieldByName. В этом случае используется метод FieldByName компонента Ык>. Форматметода: function FieldByName (const FieldName: string): TField; Рис. 3. Работа с компонентом TField |
Республики башкортостан Государственное бюджетное образовательное учреждение среднего профессионального образования |
Республики башкортостан Государственное бюджетное образовательное учреждение среднего профессионального образования |
||
Республики Мордовия Государственное бюджетное образовательное учреждение... Федерации от 22 июня 2010 года №678. Организация – разработчик Государственное бюджетное образовательное учреждение Республики Мордовия... |
Республики Татарстан Государственное бюджетное образовательное учреждение... Государственное бюджетное образовательное учреждение среднего профессионального образования |
||
Областное государственное бюджетное образовательное учреждение среднего... Областное государственное бюджетное образовательное учреждение среднего профессионального образования |
Отчет о результатах самообследования государственное бюджетное образовательное... Полное наименование образовательного учреждения в соответствии с Уставом Государственное бюджетное образовательное учреждение среднего... |
||
Отчет о результатах самообследования государственное бюджетное образовательное... Полное наименование образовательного учреждения в соответствии с Уставом Государственное бюджетное образовательное учреждение среднего... |
Образовательное государственное бюджетное учреждение среднего профессионального... Министерство здравоохранения иркутской области образовательное государственное бюджетное учреждение |
||
Республики Татарстан Государственное автономное образовательное учреждение... Государственное автономное образовательное учреждение среднего профессионального образования |
Республики Татарстан Государственное автономное образовательное учреждение... Государственное автономное образовательное учреждение среднего профессионального образования |
||
Республики Башкортостан Государственное автономное образовательное... Городская студенческая научно-практическая конференция «Наука. Фантазия. Реальность», посвященная Году экологии |
Республики Мордовия Государственное бюджетное образовательное учреждение... Разработка проекта основной профессиональной образовательной программы в соответствии с фгос-3: опыт, проблемы, перспективы |
||
Данные учреждения среднего профессионального образования Государственное бюджетное образовательное учреждение среднего профессионального образования Колледж декоративно-прикладного искусства... |
Среднего профессионального образования «государственный медицинский... Областное государственное образовательное бюджетное учреждение среднего профессионального образования |
||
Программам Государственное бюджетное образовательное учреждение среднего... Государственное бюджетное образовательное учреждение среднего профессионального образования |
Отчет о результатах самообследования (по состоянию на 01 апреля 2014г.) Полное наименование образовательного учреждения в соответствии с Уставом: государственное бюджетное образовательное учреждение начального... |
Поиск |