КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Состав и функции СУБД. Язык SQL
База данных предполагает наличие комплекса программных средств, обслуживающих эту базу данных и позволяющих использовать содержащуюся в ней информацию. Такие комплексы программ называют СУБД. СУБД - это программная система, поддерживающая наполнение и манипулирование данными, представляющими интерес для пользователей при решении прикладных задач. Иными словами, СУБД является интерфейсом между базой данных и прикладными задачами. Ниже перечислены основные функции СУБД. 1. Определение данных - определить, какая именно информация будет храниться в базе данных, задать свойства данных, их тип (например, число цифр или символов), а также указать, как эти данные связаны между собой. В некоторых случаях есть возможность задавать форматы и критерии проверки данных. 2. Обработка данных - данные могут обрабатываться самыми различными способами. Можно выбирать любые поля, фильтровать и сортировать данные. Можно объединять данные с другой, связанной с ними, информацией и вычислять итоговые значения. 3. Управление данными - можно указать, кому разрешено знакомиться с данными, корректировать их или добавлять новую информацию. Можно также определять правила коллективного доступа. Входящие в состав современных СУБД средства совместно выполняют следующие функции: • описание данных, их структуры (обычно описание данных и их структуры происходит при инициировании новой базы данных или добавлении к существующей базе новых разделов (отношений); описание данных необходимо для контроля корректности использования данных, для поддержания целостности базы данных); • первичный ввод, пополнение информации в базе данных;
•удаление устаревшей информации из базы данных; • корректировку данных для поддержания их актуальности; • упорядочение {сортировку) данных по некоторым признакам; • поиск информации по некоторым признакам (для описания запросов имеется специальный язык запросов, он обеспечивает также интерфейс между базой данных и прикладными программами пользователей, позволяет этим программам использовать базы данных); • подготовку и генерацию отчетов (средства подготовки отчетов позволяют создавать и распечатывать сводки по заданным формам на основе информации базы данных); • защиту информации и разграничение доступа пользователей к ней; • резервное сохранение и восстановление базы данных, которое позволяет восстановить утраченную при сбоях и авариях аппаратуры информацию базы данных, а также накопить статистику работы пользователей с базой данных; • поддержку интерфейса с пользователями, который обеспечивается средствами ведения диалога Основой СУБД являются 2 языка: язык манипулирования данными (ЯМД) и язык описания данных (ЯОД). С помощью ЯОД администратор БД и программисты описывают структуру и содержимое БД. А ЯМД является средством применяемым пользователями или прикладными программами для выполнения операций над данными: добавления, изменения, упорядочивания, поиска в соответствии с запросом. Коллектив специалистов обслуживающих большие БД включает администраторов, аналитиков, системных и прикладных программистов. Администратор – это специалист, имеющий представление об информационных потребностях конечного пользователя и отвечающих за определение, загрузку, защиту и эффективность БД. Аналитики – зная закономерности соответствующей предметной области с конечными пользователями, строят формальные максимальные модели для задач конечного пользователя, которые являются исходными представлениями задач программиста.
Прикладные программы на основе представленных задач полученных аналитиками разрабатывают прикладные программы для решения задач конечного пользователя. Системные программисты обеспечивают работоспособность операционных систем, систем программирования и СУБД разрабатывают сервисные программы. Требования к современным БД: 1. адекватность БД предметной области 2. интегрированность 3. минимальная убыточность хранимых данных 4. целостность БД 5. независимость БД 6. обеспечение защиты от несанкционированного доступа или случайного уничтожения БД 7. гибкость и адаптивность структуры БД 8. динамичность данных и способность к расширению 9. возможность поиска по многим ключам Рассмотрим в качестве примера языка манипулирования данными некоторые команды языка SQL (от английских слов Structured Query Language), ставшего классическим языком реляционных баз данных. Простейшая операция выборки представляется командой SELECT - FROM -WHERE (выбрать - из - где): select <список атрибутов> from <отношение> where <условие>. Например, если необходимо из отношения «Успеваемость», имеющего схему: Успеваемость (ФИО_студента, Дисциплина, Оценка, Дата, Преподаватель) произвести выборку данных о том, какие оценки студент Иванов И. И. получил и по каким предметам, надо задать команду: select Дисциплина, Оценка from Успеваемость where ФИО_студента = «Иванов И. И.». Часть команды «where» не является обязательной. Например, можно получить список всех студентов из отношения «Успеваемость» с помощью следующей команды: select unique ФИО_студента from Успеваемость. Ключевое слово unique позволяет исключить из результата дубликаты значений атрибута. Выбрать полностью информацию из таблицы можно с помощью команды select * from Успеваемость. Условие, следующее за «where», может включать операторы сравнения =, <>, >, >=, <, <=, булевы операторы AND, OR, NOT, а также скобки для указания желаемого порядка операций. Например, выбрать из таблицы «Успеваемость» фамилии студентов, сдавших на "5" экзамен по информатике, можно с помощью команды select ФИО_студента from Успеваемость where Дисциплина = «Информатика» AND Оценка=5. Выборка может быть и вложенной, когда необходимо использовать в условии результаты другой выборки. Например, если надо из отношения «Успеваемость» выбрать только студентов физико-математического факультета, пользуясь отношением «Студент», то команда select может выглядеть так:
select ФИО_студента from Успеваемость where ФИО_студента is in (select Фамилия from Студент where Ф_т = «физмат»). Здесь «is in» является представлением оператора принадлежности элемента множеству. Можно также использовать операторы «is not in» («не принадлежит множеству»), «contains» - содержит, «does not contains» - не содержит. Смысл выражения «A contains В» (А содержит В) тот же, что и выражения «В is in А» (В принадлежит множеству А). Помимо слов select, from, where в команде выборки можно использовать и другие служебные слова, например: order by <атрибут> asc - определяет сортировку результата выборки в порядке возрастания (asc) или убывания (desc) значения атрибута; group by <атрибут1 > - группирует данные по значениям атрибута; having set <атрибут2> minus - операция вычитания множеств (данных выборок). Помимо команды выборки select, язык SQL имеет команды, позволяющие обновлять данные (update), вставлять (insert) и удалять (delete). Например, если студенты переводятся со 2-го курса на третий, информацию можно обновить командой update Студент set Kypc=3 where Kypc=2. Если атрибут «Семенов С. С.» сдал экзамен по информатике на «5» 15 января 1996 г. преподавателю Петрову П.П., то информация об этом может быть добавлена в таблицу «Успеваемость» командой insert inlo Успеваемость: <«Семенов С.С», «Информатика», 5, 15/01/96, Петров П.П>. Оператор insert может быть использован для включения одной строки (как в этом примере) или произвольного числа строк, определенных списком кортежей, заключенных в скобки, или операций выборки select из какой-либо другой таблицы. Команда delete используется для удаления информации из таблицы. Например, delete Успеваемость where Оценка=2 позволяет удалить информацию о студентах, получивших 2 (в случае их отчисления). Существенно расширяют возможности языка библиотечные функции, такие как count (подсчет), sum (суммирование), avg (среднее), max и min.
Например, подсчитать число тсудентов в таблице «Студент»: select count (*) Студент систе́ма управле́ния ба́зами да́нных (СУБД) — специализированная программа (чаще комплекс программ), предназначенная для организации и ведения базы данных. Для создания и управления информационной системой СУБД необходима в той же степени, как для разработки программы на алгоритмическом языке необходим транслятор Основные функции СУБД управление данными во внешней памяти (на дисках); управление данными в оперативной памяти с использованием дискового кэша; журнализация изменений, резервное копирование и восстановление базы данных после сбоев; поддержка языков БД (язык определения данных, язык манипулирования данными).
Обычно современная СУБД содержит следующие компоненты: ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию, процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода, подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.
Дата добавления: 2015-04-24; Просмотров: 977; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |