Автор работы: Пользователь скрыл имя, 20 Декабря 2011 в 22:19, курсовая работа
Целью данной работы является исследование устройства и функций СУБД, а также сопоставление наиболее распространенных современных СУБД на предмет их использование в банках данных крупных организаций.
Задачи исследования:
1.рассмотреть структуру и функции СУБД
2.изучить классификацию СУБД .
3.проанализировать конкретные СУБД: Microsoft SQL Server и Oracle.
4.Сравнить возможности СУБД: Microsoft SQL Server и Oracle.
Введение……………………………………………………………………………2
Глава 1. Система управления базами данных как составная часть автоматизированного банка данных……………………………………………4
Понятие, структура и функции системы управления базами данных………4
Классификация СУБД по способу доступа к базе данных…………………..9
Глава 2. Язык SQL в системах управления базами данных………………….11
2.1 Понятие, преимущества и недостатки языка SQL………………………..11
2.2 СУБД Oracle и СУБД Microsoft SQL server………………………………..16
Заключение………………………………………………………………………27
Список литературы……………………………
2.Клиент-серверные. Такие СУБД состоят из клиентской части (которая входит в состав прикладной программы) и сервера (см. Клиент-сервер). Клиент-серверные СУБД, в отличие от файл-серверных, обеспечивают разграничение доступа между пользователями и мало загружают сеть и клиентские машины. Сервер является внешней по отношению к клиенту программой, и по надобности его можно заменить другим. Недостаток клиент-серверных СУБД в самом факте существования сервера (что плохо для локальных программ - в них удобнее встраиваемые СУБД) и больших вычислительных ресурсах, потребляемых сервером.Клиент-серверные СУБД предоставляют больше возможностей для профессиональной работы с данными, поэтому они чаще всего используются в крупных предприятиях и организациях. Они больше всего подходят к крупным информационным ситемам с одним или несколькими серврами, обладающими большой производительностью. Даже в случае большого количества пользователей, работающих с ними, они не оченьсильно загружают сеть.
Примеры: Firebird, Interbase, IBM DB2, MS SQL Server, Sybase, Oracle, PostgreSQL, MySQL, ЛИНТЕР.
3.Встраиваемые. Встраиваемая СУБД -библиотека, которая позволяет унифицированным образом хранить большие объёмы данных на локальной машине. Доступ к данным может происходить через SQL либо через особые функции СУБД. Встраиваемые СУБД быстрее обычных клиент-серверных и не требуют установки сервера, поэтому востребованы в локальном ПО, которое имеет дело с большими объёмами данных (например, геоинформационные системы). Примеры: OpenEdge, SQLite, BerkeleyDB, один из вариантов Firebird, один из вариантов MySQL, Sav Zigzag, Microsoft SQL Server Compact, ЛИНТЕР.
Таким образом, для использования в крупных
организациях, в том числе на промышленных
предприятиях, больше подходят клиент-серверные
СУБД. Мы рассмотрим особенности таких
распространенных СУБД, как Oracle и MS SQL Server.
Глава 2. Язык SQL в системах управления базами данных
2.1 Понятие, преимущества и недостатки языка SQL
SQL (англ. Structured Query Language - язык структурированных запросов) -универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL в его чистом (базовом) виде является информационно-логическим языком, а не языком программирования. Вместе с тем стандарт языка спецификацией SQL/PSM предусматривает возможность его процедурных расширений, с учётом которых язык уже вполне может рассматриваться в качестве языка программирования.
SQL основывается на реляционной алгебре.
Язык SQL делится на четыре части:
· операторы определения данных (англ. Data Definition Language, DDL)
· операторы манипуляции данными (англ. Data Manipulation Language, DML)
· операторы определения доступа к данным (англ. Data Control Language, DCL)
· операторы управления транзакциями (англ. Transaction Control Language, TCL)
Data Definition
Language (DDL) (язык описания данных) -
это язык, используемый в компьютерных
программах для описания
Функции языков DDL определяются первым словом в предложении (часто называемом запросом), которое почти всегда является глаголом. В случае с SQL эти глаголы - "create" ("создать"), "alter" ("изменить"), "drop" ("удалить"). Это превращает природу языка в ряд обязательных утверждений (команд) к базе данных. Языки DDL могут существенно различаться у различных производителей СУБД. Существует стандарт SQL, установленный ANSI, но производители СУБД часто предлагают свои собственные "расширения" языка.
Data Manipulation Language (DML) (язык управления [манипулирования] данными) - это язык, используемый в компьютерных программах или пользователями баз данных для получения, вставки, удаления или изменения данных в базах данных. Языки DML изначально использовались только компьютерными программами, но с появлением SQL стали также использоваться и людьми. Функции языков DML определяются первым словом в предложении (часто называемом запросом), которое почти всегда является глаголом. В случае с SQL эти глаголы - "insert" ("вставить"), "update" ("обновить"), и "delete" ("удалить"). Это превращает природу языка в ряд обязательных утверждений (команд) к базе данных. Языки DML могут существенно различаться у различных производителей СУБД. Существует стандарт SQL, установленный ANSI, но производители СУБД часто предлагают свои собственные "расширения" языка.
Языки DML разделяются в основном на два типа:
· Procedural DMLs - описывают действия над данными.
· Declarative DMLs - описывают сами данные.
Операторы управления транзакциями (англ. Transaction Control Language, TCL) компьютерный язык и часть SQL, используемый для обработки транзакций. Транзамкция (англ. transaction) -- в информатике, группа последовательных операций, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена либо целиком и успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще и тогда она не должна произвести никакого эффекта. Транзакции обрабатываются транзакционными системами, в процессе работы которых создаётся история транзакций. Различают обычные и распределённые транзакции. Распределённые транзакции подразумевают использование больше чем одной транзакционной системы и требуют на много более сложной логики (например, two-phase commit -- двухфазный протокол подтверждения успеха). Также, в некоторых системах реализованы автономные транзакции, или под-транзакции, которые являются автономной частью родительской транзакции.
Примеры TCL команд:
· COMMIT применяет транзакцию.
· ROLLBACK "откатывает" все изменения сделанные транзакцией.
· SAVEPOINT делит транзакцию на более мелкие участки.
Язык SQL имеет слудующие особенности:
Преимущества:
Независимость
от конкретной СУБД. Несмотря на наличие
диалектов и различий в синтаксисе, в большинстве
своём тексты SQL-запросов, содержащие DDL
и DML, могут быть достаточно легко перенесены
из одной СУБД в другую. Существуют системы,
разработчики которых изначально закладывались
на применение по меньшей мере нескольких
СУБД (например: система электронного документооборота
Наличие стандартов.Наличие стандартов и набора тестов для выявления совместимости и соответствия конкретной реализации SQL общепринятому стандарту только способствует «стабилизации» языка. Правда, стоит обратить внимание, что сам по себе стандарт местами чересчур формализован и раздут в размерах, например, Core-часть стандарта SQL:2003 представляет собой более 1300 страниц текста.
Декларативность. С помощью SQL программист описывает только то, какие данные нужно извлечь или модифицировать. То, каким образом это сделать, решает СУБД непосредственно при обработке SQL-запроса. Однако не стоит думать, что это полностью универсальный принцип -- программист описывает набор данных для выборки или модификации, однако ему при этом полезно представлять, как СУБД будет разбирать текст его запроса. Чем сложнее сконструирован запрос, тем больше он допускает вариантов написания, различных по скорости выполнения, но одинаковых по итоговому набору данных.
Недостатки:
Несоответствие реляционной модели данных. Создатели реляционной модели данных Эдгар Кодд, Кристофер Дейт и их сторонники указывают на то, что SQL не является истинно реляционным языком. В частности они указывают на следующие проблемы SQL:
· Повторяющиеся строки
· Неопределённые значения (nulls)
· Явное указание порядка колонок слева направо
· Колонки без имени и дублирующиеся имена колонок
· Отсутствие поддержки свойства «=»
· Использование указателей
· Высокая избыточность
В опубликованном Кристофером Дейтом
и Хью Дарвеном Третьем Манифесте они
излагают принципы СУБД следующего поколения
и предлагают язык Tutorial D, который является
подлинно реляционным.Сложность. Хотя
SQL и задумывался, как средство работы
конечного пользователя, в конце концов
он стал настолько сложным, что превратился
в инструмент программиста. Отступления
от стандартов Несмотря на наличие международного
стандарта ANSI SQL-92, многие компании, занимающиеся
разработкой СУБД (например, Oracle, Sybase, Microsoft,
Некоторые поставщики СУБД предлагали свои решения. Например, Oracle использует выражение CONNECT BY. В настоящее время в ANSI стандартизована рекурсивная конструкция WITH из диалекта SQL DB2.
Несмотря на недостатки, язык SQL вполне пригоден для использования в реляционных СУБД.
Обычно СУБД позволяет создавать и редактировать
запросы на языке SQL с помощью графической
оболочки программы, освобождая пользователя
от знания языка SQL. Пользователь может
создавать запросы на выборку данных по
определенному условию, на проведение
рассчета по данным и т. д. Также большинство
СУБД позволяют представлять данные в
форме отчета, т.е. в форме, пригодной для
вывода на печать. Вводить данные в БД
пользователи могут с помощью форм. Форма
представляет собой определенным образом
организованный интерфейс для ввода данных.
Также доступ к данным, хранящимся в БД,
может быть организован с помощью страниц
доступа к данным. Эти страницы могут хранится
на сервере корпоратианой сети (Intranet),
если сервер имеет поддержку страниц доступа
к данным. Доступ к этой странице в данном
случае осуществляется с помощью протокола
http.
2.2 СУБД Microsoft SQL server и Oracle
Одной из самых распространенных СУБД, используемых в крупных организациях, является Microsoft SQL server, СУБД от компании Microsoft. Она использует реляционную модель данных. Microsoft SQL server является клиент-серверной СУБД, что делает ее хорошей для использования в крупных организациях, имеющих мощный сервер. Платформа данных MS SQL Server 2005 включает следующие инструменты для работы с базой данных:
· Поддержка
структурированных и
· Replication
Services : репликация данных для распределённых
и мобильных приложений обработки
данных, высокая доступность систем,
масштабируемый параллелизм со вторичными
хранилищами данных для отчётных
решений предприятия и
· Notification
Services : развитые возможности уведомлений
для разработки и внедрения масштабируемых
приложений, способных доставлять персонализированные,
своевременные обновления информации
множеству соединённых и
· Integration Services : возможности извлечения, преобразования и загрузки для хранилищ данных и интеграции данных в масштабе предприятия.
· Analysis Services : аналитическая обработка в реальном времени (OLAP) для быстрого, сложного анализа больших и смешанных наборов данных, использующая многомерное хранение.
· Reporting Services : исчерпывающее решение для создания, управления и доставки как традиционных бумажных отчётов, так и интерактивных, основанных на технологии WWW отчётов.
· Инструменты управления : SQL Server включает средства управления для развитого управления и настройки баз данных, также как и тесную интеграцию с такими инструментами, как Microsoft Operations Manager (MOM) и Microsoft Systems Management Server (SMS). Стандартные протоколы доступа к данным существенно уменьшают время, необходимое для интеграции данных SQL Server с существующими системами. В дополнение, поддержка Web служб встроена для обеспечения взаимодействия с другими приложениями и платформами.
· Инструменты разработки : SQL Server предлагает интегрированные инструменты разработки для ядра базы данных, извлечения, трансформации и загрузки данных, извлечения информации, OLAP и отчётности, которые тесно интегрированы с Microsoft Visual Studio® для предоставления сквозных возможностей разработки приложений. Каждая главная подсистема SQL Server поставляется со своей собственной объектной моделью и набором API для расширения системы данных в любом направлении, которое уникально для вашего бизнеса.
Особенностью данной СУБД являются следующие средства:
SQL Server
Management Studio. SQL Server упрощает управление
путём предоставления единой
интегрированной консоли
Информация о работе Язык SQL в системах управления базами данных