Организация Web-доступа к базам данных с использованием SQL-запросовРефераты >> Программирование и компьютеры >> Организация Web-доступа к базам данных с использованием SQL-запросов
ввод информации об одном объекте разными способами или в разных местах;
ввод одной и той же информации в нескольких местах;
ввод информации разрозненно, без поддержания общей структуры объекта.
Одной из основных функций базы данных является автоматизация. Под автоматизацией, как правило, понимают автоматическое создание выходных документов и пересчет данных, например печать накладной, счета фактуры и протокола согласования цен в складской программе для исходящей накладной.
Далее, нужно вспомнить о системах принятия решений. Информационная система должна позволять создавать статистические отчеты в реальном режиме времени о состоянии описываемого в базе данных процесса. Эта функция удобна для руководителей подразделений, которые могут прогнозировать поведение описываемой системы на основе статистических данных, полученных из базы данных.
Собственно, описанные выше функции информационной системы являются «джентльменским набором», которого достаточно в большинстве случаев. Из дополнительных функций необходимо упомянуть возможность поиска по нескольким взаимосвязанным характеристикам.
В единой информационной системе необходима возможность идентификации пользователя с целью ограничения доступа пользователя к определенным частям базы данных и введения информации о создателе документа и лиц, редактировавших его. Это придаст пользователям ощущение ответственности за выполняемые действия.
Хорошая информационная система должна легко расширяться при необходимости добавления в нее новых возможностей. Расширяемость подразумевает элементы объектной ориентированности, встроенные в базу данных. Настраивая эти объекты, возможно вносить незначительные изменения в структуру базы данных, что продляет срок морального устаревания всей информационной системы. Одним из факторов расширяемости является возможность сочленять разнородные базы данных в единый комплекс. Такая возможность сейчас реализуется через дополнительные модули, которые по своей сути являются серверами приложений, или правильное построение базы данных по классическим реляционным законам. Последний случай затрудняется тем, что некоторые серверы базы данных не могут выполнить один SQL запрос к разным базам данных, тем более находящимся в географической удаленности друг от друга.
Еще одна удобная функция в базе данных – это сквозное прохождение по документам.
Описанные выше функции в разных реализациях информационных систем имеют специфические черты, ориентированные на конкретное прикладное применения.
1. Причины и история создания языка запросов SQL.
2. Реляционные базы данных. Общие понятия.
Любую структуру данных можно преобразовать в простую двумерную таблицу. Такое представление является наиболее удобным и для пользователя, и для машины, - подавляющее большинство современных информационных систем работает именно с такими таблицами. Базы данных, которые состоят из двумерных таблиц, называются реляционными.
Основная идея реляционного подхода состоит в том, чтобы представить произвольную структуру данных в виде простой двумерной таблицы или, как говорят, нормализовать структуру.
Из всех систем баз данных реляционные относятся к самым распространенным в мире. Эти системы способны разрешить многие из тех проблем, которые усложняли работу с нереляционными продуктами прежних поколений. Программисты и администраторы таких баз данных были вынуждены тщательно изучать, как структурирована информация и как она представлена в базе данных, что значительно усложнило разработку этих приложений и модификацию самих программ. Реляционные системы способны работать на более высоком уровне. Все операции с данными реализуются программой, называемой DBMS (система управления базой данных Обращаться к ней можно только с помощью операторов языка высокого уровня. Хотя некоторые продукты по-прежнему поддерживают работу в терминах своих собственных языков, язык SQL (Standard Query Language) стал тем технологическим стандартом, на базе которого созданы все, более или менее известные, реляционные продукты.
Язык для взаимодействия с БД SQL появился в середине 70-х и был разработан в рамках проекта экспериментальной реляционной СУБД System R. Исходное название языка SEQUEL (Structered English Query Language) только частично отражает суть этого языка. Конечно, язык был ориентирован главным образом на удобную и понятную пользователям формулировку запросов к реляционной БД, но на самом деле уже являлся полным языком БД, содержащим помимо операторов формулирования запросов и манипулирования БД средства определения и манипулирования схемой БД. В языке отсутствовали средства синхронизации доступа к объектам БД со стороны параллельно выполняемых транзакций: с самого начала предполагалось, что необходимую синхронизацию неявно выполняет СУБД.
В основе современных реляционных баз данных (и стандарта SQL) лежит несколько правил и принципов:
· Все значения данных состоят из простых типов данных. В SQL отсутствуют массивы, указатели, векторы и другие сложные типы данных.
· Все данные в реляционной базе данных изображаются в форме двумерных таблиц (на языке математики – «отношений»). Каждая таблица содержит некоторое число строк (в том числе 0), называемых «картежами» и один или несколько столбцов, называемых «атрибутами». Все строки в таблице имеют одну и ту же последовательность столбцов, в которых записаны различные значения, однако наборы значений в столбцах отличаются. На рисунке 1 приведена простейшая таблица такого типа.
· После того как данные введены в БД, можно сравнивать значения в различных столбцах (в том числе и для разных таблиц) или объединять строки, в которых найдено совпадение. Это позволяет соотносить между собой строки и производить очень сложные операции обработки над всеми данными, находящимися в базе.
· Все операции определяются только логикой, а не положением строки в таблице. Например, можно запросить все строки, со значением 2 и не возможно запросить первую или, третью или пятую строку. Строки в реляционной базе данных расположены в произвольном порядке. Он не обязательно соответствует тому порядку, в котором они были занесены или в котором хранятся на диске.
· Поскольку невозможно определить строку по ее положению (порядку в таблице), необходимо иметь один или несколько столбцов с уникальным значением для идентификации каждой строки. Эти столбцы называются первичными ключами таблицы.
В примере на рис. 1 это первый столбец.
ID |
Имя |
Телефон |
Город |
2 |
Иван И. Иванов |
555-001 |
Москва |
1 |
Константин В. Волков |
555-330 |
Екатеринбург |
3 |
Василий В. Грабер |
555-607 |
Санкт-Петербург |