Автор работы: Пользователь скрыл имя, 08 Марта 2012 в 19:05, курсовая работа
Компьютеры хранят данные в файлах. Файл представляет собой набор записей, посвященных некой общей теме. Например, файл запасов состоит из записей о запасах, файл клиентов состоит из записей о клиентах и т.д. Каждая запись состоит из данных, которые разделены на поля. Так, файл книг содержит записи о книгах, причем каждая запись о книге состоит из полей, в которых указаны ISBN-номер, название и автор. В традиционной файловой системе конкретные множества файлов создаются и обрабатываются конкретными приложениями. В системе с базой данных все по-другому. В ней файлы не привязаны к конкретным поддерживающим их приложениям. Напротив, они объединены таким образом, чтобы содержащиеся в них данные могли совместно использоваться множеством приложений.
1. Концепция баз данных. Основные понятия…………………………..2
2. Архитектура банка данных…………………………………………….9
3. Функциональные, инфологические и
даталогические модели предметной области…………………………..13
4. Этапы проектирования базы данных………………………………...15
5. Основные операции над данными……………………………………17
6. Реляционная модель данных. Отношения и схемы отношений.
Основные операции над отношениями…………………………………18
7. Сетевая модель данных………………………………………………..22
8. Иерархическая модель данных………………………………………..24
9. Стадии и этапы разработки базы данных…………………………….27
10. Языки реляционной алгебры и исчисления отношений…………...30
11. Методы нормализации схем отношений……………………………31
12. Инструментальные средства разработки баз данных………………34
13. Запросы в языке SQL…………………………………………………36
14. Клиенты и серверы в среде SQL……………………………………..39
16. Список используемой литературы…………………………………..40
В случае составного ключа вводится понятие функционально полной зависимости.
Функционально полная зависимость не ключевых атрибутов заключается в том, что каждый не ключевой атрибут функционально зависит от ключа, но не находится в функциональной зависимости ни от какой части составного ключа.
Отношение будет находиться во второй нормальной форме, если оно находится в первой нормальной форме, и каждый не ключевой атрибут функционально полно зависит от составного ключа.
Понятие третьей нормальной формы основывается на понятии нетранзитивной зависимости.
Транзитивная зависимость наблюдается в том случае, если один из двух описательных реквизитов зависит от ключа, а другой описательный реквизит зависит от первого описательного реквизита.
Отношение будет находиться в третьей нормальной форме, если оно находится во второй нормальной форме, и каждый не ключевой атрибут не транзитивно зависит от первичного ключа.
Для устранения транзитивной зависимости описательных реквизитов необходимо провести «расщепление» исходного информационного объекта. В результате расщепления часть реквизитов удаляется из исходного информационного объекта и включается в состав других (возможно, вновь созданных) информационных объектов.
Инструментальные средства разработки баз данных.
Разработка приложения в Access начинается с создания таблиц в режиме конструктора таблиц или путем импорта из электронных таблиц или файлов баз данных. Мастера таблиц создают таблицы по американским стандартам и потому мало применимы. Очень легко создаются поля с возможностью выбора одного данного из предлагаемого списка, т.е. поля подстановки. Для внедрения графики существуют две возможности – поля OLE, хранящие графику непосредственно в базе данных, что увеличивает объем приложения и понижает его быстродействие, и введение гиперссылок на внешние файлы, что затрудняет переносимость приложения, но не влияет на быстродействие.
Создание запросов производится при помощи конструктора, нескольких мастеров или собственно на встроенном языке SQL, что позволяет составлять более сложные конструкции.
Экранные формы и отчеты создаются в основном по мастерам, а затем доводятся вручную в режиме конструктора. Формы, также, как и Visual Fox Pro, состоят из отдельных элементов интерфейса (кнопок, переключателей, надписей и т.д.), каждый из которых необходимо описать при создании приложения.
Access предоставляет, в основном, хорошие возможности создания экранных форм и генерации отчетов, т.е. наиболее развиты оформительские возможности. Та обработка данных и расчеты, которые не могут быть произведены с помощью запросов, трудновыполнимы и возможны только с привлечение языка программирования Visual Basic. Таким образом, применение Access ограничивается текстовыми базами данных с возможностью подключения файлов мультимедиа.
Вопросы защиты информации в СУБД Access решены плохо, в особенности защита от ошибок пользователя. Механизм проверки и поддержки ссылочной целостности данных нормально не функционирует, а блокирует ввод новых данных в подчиненную таблицу (при связи один-ко-многим), что требует его принудительного отключения при создании каждой очередной связи.
Защита информации от сбоев
решена путем автоматического
Система Access не имеет компилятора ЕХЕ-файлов, что не позволяет правильно закончить технологический цикл разработки приложения без привлечения других средств программирования.
Также Access предоставляет возможность работы пользователя непосредственно с данными, не создавая приложения; имеет встроенную версию языка SQL для создания более сложных запросов, чем при помощи стандартного конструктора.
Запросы в языке SQL.
Запрос можно представить
себе как точку зрения на данные,
включенные в таблицу. Запросы служат
для селекции и фильтрации набора
данных. Они позволяют выбрать
из базы только необходимую информацию,
т.е. ту, которая соответствует
Есть четыре основных типа запросов данных в SQL, которые относятся к так называемому языку манипулирования данными (Data Manipulation Language или DML):
Каждый из этих запросов имеет различные операторы и функции, которые используются для того, чтобы произвести какие-то действия с данными. Запрос SELECT имеет самое большое количество опций.
Использование запроса SELECT для выборки нужных данных
Чтобы получить информацию, хранящуюся в базе данных используется запрос SELECT. Базовое действие этого запроса ограничено одной таблицей, хотя существуют конструкции, обеспечивающие выборку с нескольких таблиц одновременно. Для того, чтобы получить все строки данных для специфических столбцов, используется запрос такого вида:
SELECT column1, column2 FROM table_name;
Также, можно получить все столбцы из таблицы, используя подстановочный знак «*»:
SELECT * FROM table_name;
Это может быть полезно в том случае, когда вы собираетесь выбрать данные с определенным условием WHERE. Следующий запрос возвратит все столбцы со всех строк, где «column1» содержит значение «3»:
SELECT * FROM table_name WHERE column1=3;
Кроме «=» (равно), существуют следующие условные операторы:
«=» - равно;
«<>» - не равно;
«<» - больше;
«>» - меньше;
«<=» - больше или равно;
«>=» - меньше или равно.
Дополнительно можно использовать условия BITWEEN и LIKE для сравнения с условием WHERE, а так же комбинации операторов AND и OR.
SELECT * FROM table_name WHERE ((Age >= 18) AND (LastName BETWEEN ‘Иванов’ AND ‘Сидоров’)) OR Company LIKE ‘%Motorola%’;
Что в переводе на русский язык означает: выбрать все столбцы из таблицы table_name, где значение столбца age больше или равно 18, а также значение столбца LastName находится в алфавитном промежутке от Иванов до Сидоров включительно, или же значением столбца Company является Motorola.
Использование запроса INSERT для вставки новых данных
Запрос INSERT используется для создания новой строки данных. Для обновления уже существующих данных или пустых полей строки нужно использовать запрос UPDATE.
Примерный синтаксис запроса INSERT:
INSERT INTO table_name (column1, column2, column3) VALUES (‘data1’, ‘data2’, ‘data3’);
Если вы собираетесь вставлять все значения в порядке, в котором находятся столбцы таблицы, то можно и не указывать имена столбцов, хотя для удобочитаемости это предпочтительнее. Кроме того, если вы перечисляете столбцы, необязательно указывать их по порядку нахождения в базе данных, пока значения, которые вы вводите, соответсвуют этому порядку. Вы не должны перечислять столбцы, в которые не вводится информация.
Запрос UPDATE и условие WHERE
UPDATE используется для
того, чтобы изменить существующие
значения или освободить поле
в строке, поэтому новые значения
должны соответствовать
UPDATE table_name SET column1 = ‘data1’, column2 = ‘data2’ WHERE column3 = ‘data3’;
Вы можете использовать WHERE для любого столбца, включая тот, который хотите изменить. Это используется когда необходимо заменить одно определенное значение на другое.