Структурированный язык запросов реферат

Целью разработки было создание простого непроцедурного языка, которым мог воспользоваться любой пользователь, даже не имеющий навыков программирования. Собственно разработкой языка запросов занимались Дональд Чэмбэрлин Donald D. Chamberlin и Рэй Бойс Ray Boyce.

Приложение А…………………………………………………………………….. Наиболее удобным способом хранения информации, на основе опыта нескольких десятилетий, был признан способ хранения информации в виде баз данных. База данных — это, прежде всего хранилище объектов данных, то есть набора возможных понятий или событий, описываемых базой данных БД , Вместе с этим основными функциями БД являются систематизация информации знаний и возможность взаимосвязи объектов между собой. Любую структуру данных можно преобразовать в простую двумерную таблицу. Основная идея реляционного подхода состоит в том, чтобы представить произвольную структуру данных в виде простой двумерной таблицы или, как говорят, нормализовать структуру. И как следствие возникла необходимость использования универсального языка для доступа и управления данными в различных базах данных.

Доклад по теме "SQL"

Целью разработки было создание простого непроцедурного языка, которым мог воспользоваться любой пользователь, даже не имеющий навыков программирования.

Собственно разработкой языка запросов занимались Дональд Чэмбэрлин Donald D. Chamberlin и Рэй Бойс Ray Boyce. Пэт Селинджер Pat Selinger занималась разработкой стоимостного оптимизатора cost-based optimizer , Рэймонд Лори Raymond Lorie занимался компилятором запросов.

Рост количества данных, необходимость их хранения и обработки привели к тому, что возникла потребность в создании стандартного языка баз данных, который мог бы функционировать в многочисленных компьютерных системах различных видов. Действительно, с его помощью пользователи могут манипулировать данными независимо от того, работают ли они на персональном компьютере, сетевой рабочей станции или универсальной ЭВМ. SQL англ. Изначально, SQL был основным способом работы пользователя с базой данных и представлял собой небольшую совокупность команд операторов допускающих создание таблиц, добавление в таблицы новых записей, извлечение записей из таблиц в соответствии с заданным условием , удаление записей и изменение структур таблиц.

В связи с усложнением язык SQL стал более прикладным языком программирования, а пользователи получили возможность использовать визуальные построители запросов. SQL принципиально отличается от традиционных алгоритмических языков программирования прежде всего тем, что он относится к непроцедурным языкам.

На языке типа Кобол или Си можно записать шаг за шагом все инструкции, необходимые для исполнения программы. Такой подход в значительной мере определяется самой философией реляционных баз данных.

Его должно интересовать только внесение в базу данных необходимых изменений и получение правильного ответа на запрос. Другой особенностью SQL является так называемая трехзначная логика.

В большинстве языков булево выражение может принимать только два значения: истина и ложь. NULL — это специальный код, который помещается в столбец таблицы, если по какой-нибудь причине в нем отсутствуют данные. Когда значение NULL участвует в операциях сравнения, булев результат будет ни истина и ни ложь, а неизвестно. Все языки манипулирования данными, созданные для многих СУБД до появления реляционных баз данных, были ориентированы на операции с данными, представленными в виде логических записей файлов.

Разумеется, это требовало от пользователя детального знания организации хранения данных и серьезных усилий для указания того, какие данные необходимы, где они размещаются и как их получить. Благодаря работающим с файловыми серверами СУБД, множество пользователей получают доступ к одним и тем же базам данных.

Упрощается разработка различных автоматизированных систем управления организациями. Однако при таком подходе вся обработка запросов из программ или с терминалов пользовательских ЭВМ на них и выполняется, поэтому для реализации даже простого запроса необходимо считывать с файлового сервера или записывать на него целые файлы, а это ведет к конфликтным ситуациям и перегрузке сети. Для исключения указанных недостатков была предложена технология клиент-сервер, но при этом понадобился единый язык общения с сервером — выбор пал на SQL.

Рассматриваемый язык SQL ориентирован на операции с данными, представленными в виде логически взаимосвязанных совокупностей таблиц-отношений. Важнейшая особенность его структур — ориентация на конечный результат обработки данных, а не на процедуру этой обработки. Язык SQL сам определяет, где находятся данные, индексы и даже какие наиболее эффективные последовательности операций следует использовать для получения результата, а потому указывать эти детали в запросе к базе данных не требуется.

SQL в настоящее время получил очень широкое распространение и фактически превратился в стандартный язык реляционных баз данных. Международная организация стандартов ISO приняла его в качестве международного. В настоящее время действует стандарт, принятый в 2003 году SQL:2003 с небольшими модификациями, внесёнными позже.

Вопросы практического программирования Как правило, любой поставщик СУБД предоставляет вместе со своей системой внешнюю утилиту, которая позволяет вводить операторы SQL в режиме командной строки и выдает на консоль результаты их выполнения так, как это сделано на этой страничке, предоставляющей интерактивный доступ к БД publications. Недостатки такого режима работы очевидны: необходимо знать SQL, необходимо помнить схему БД, отсутствует возможность удобного просмотра результатов выполнения запросов.

Поэтому, подобные утилиты стали инструментами администраторов баз данных, а для создания пользовательских приложений используются универсальные и специализированные языки программирования. Приложения, написанные таким образом, позволяют пользователю сосредоточиться на решении собственных задач, а не на структурах данных.

Почти все способы организации взаимодействия пользователя с базой данных основаны на модели "клиент-сервер". Это наиболее популярная сегодня схема организации вычислительной среды. Язык SQL позволяет только манипулировать данными, но в нем отсутствуют средства создания экранного интерфейса, что необходимо для пользовательских приложений. Также эти языки допускают определение структур, соответствующих записям таблиц обрабатываемой базы данных.

В исходный текст программы включаются операторы языка SQL, которые во время исполнения передаются серверу БД, который собственно и производит манипулирование данными.

Отношения, полученные в результате выполнения сервером SQL-запросов, возвращаются прикладной программе, которая заполняет строками этих отношений заранее определенные структуры. Дальнейшая работа клиентской программы отображение, корректировка записей ведется с этими структурами.

Библиотека доступа - это, как правило, объектный файл, исходный код которого создан на универсальном языке типа C. Эта библиотека содержит набор функций, позволяющих пользовательскому приложению соединятся с базой данных, передавать запросы серверу и получать ответные данные. Типичный набор функций такой библиотеки имена функций зависят от используемой библиотеки : Библиотечные вызовы преобразуются драйвером базы данных в сетевые вызовы и передаются сетевым программным обеспечением на сервер.

Как видим, такой способ создания приложений чрезвычайно гибок, позволяет реализовать практически любое приложение, но в то же время имеет явные недостатки: разработка клиентской программы возможна только для той операционной системы и на том языке программирования, который поддерживатеся библиотекой, необходим драйвер базы данных, который определяет допустимые типы сетевых интерфейсов, большой объем кодирования, нестандартизованные библиотечные функции.

В результате получаем приложение, которое привязано как к сетевой среде, так и к программно-аппаратной платформе и используемой базе данных. Некоторой модификацией данного способа является использование "встроенного" языка SQL. Перед компиляцией в машинный код такая программа обрабатывается препроцессором, который транслирует смесь операторов "собственного" языка СУБД и операторов SQL в "чистый" исходный код. Затем коды SQL замещаются вызовами соответствующих процедур из библиотек исполняемых модулей, служащих для поддержки конкретного варианта СУБД.

Такой подход позволил несколько снизить степень привязанности к СУБД, например, при переключении прикладной программы на работу с другим сервером базы данных достаточно было заново обработать ее исходный текст новым препроцессором и перекомпилировать.

Вопросы совместимости По традиции, как и со многими стандартами в IT-индустрии, с языком SQL возникла проблема: на каком-то этапе многие производители использующего SQL программного обеспечения решили, что функционал в текущей на тот момент времени версии стандарта недостаточен, и его желательно расширить. В результате у разных производителей систем управления баз данных СУБД в ходу разные диалекты SQL, в общем случае между собой несовместимые.

Среди недостатков использования стандартов оказывается ограничение гибкости и функциональных возможностей конкретной реализации. Для расширения функциональных возможностей многие разработчики, придерживающиеся принятых стандартов, добавляют к стандартному языку SQL различные расширения. Все конкретные реализации языка несколько отличаются друг от друга.

В интересах самих же производителей гарантировать, чтобы их реализация соответствовала современным стандартам ANSI в части переносимости и удобства работы пользователей.

Тем не менее каждая реализация SQL содержит усовершенствования, отвечающие требованиям того или иного сервера баз данных. Эти усовершенствования или расширения языка SQL представляют собой дополнительные команды и опции, являющиеся добавлениями к стандартному пакету и доступные в данной конкретной реализации.

До 1996 года вопросами соответствия коммерческих реализаций SQL стандарту занимался в основном Национальный институт стандартов и технологий NIST , который и устанавливал уровень соответствия стандарту. Положение изменилось с введением стандарта SQL:1999. Соответственно, остался только один уровень совместимости — Core, что означало поддержку этой основной части. Поддержка остальных возможностей оставлена на усмотрение производителей СУБД. SQL представляет собой субъязык данных, предназначенный для использования только в качестве интерфейса с БД.

Сам по себе SQL не содержит тех средств, которые необходимы для разработки законченных программ. Подобные задачи должны решаться либо с помощью языков программирования или управления заданиями, либо интерактивно, в результате действий, выполняемых самим пользователем.

По причине подобной незавершенности в плане организации вычислительного процесса язык SQL может применяться в форме одной из трех прикладных реализаций: 1. Интерактивный или автономный SQL дает возможность пользователям непосредственно извлекать информацию из базы или записывать в нее данные. Информация, получаемая по запросу SQL, может быть выдана на экран, переадресована в файл или на принтер. Статический SQL позволяет записать фиксированный исполняемый код SQL, он обычно используется в приложениях на процедурных языках.

Есть две разновидности статического SQL: встроенный и модульный. Встроенный SQL определен как код SQL, который включен в исходный текст программы, написанной на другом языке программирования.

В реальной жизни большинство приложений разрабатываются на алгоритмических языка например, Си или Кобол , однако для обращения к БД используется встроенный SQL. В модульном варианте операторы SQL записаны в отдельных модулях, которые компонуются с модулями основного языка.

Динамический SQL дает возможность генерировать код SQL во время исполнения приложения и используется вместо статического SQL в тех случаях, когда при разработке приложения необходимый код SQL еще не может быть определен или зависит от того, какой выбор сделает пользователь. Операторы динамического SQL обычно применяются в диалоговых средах для построения запросов и в графических средствах разработки приложений БД.

Типы команд SQL Реализация в SQL концепции операций, ориентированных на табличное представление данных, позволила создать компактный язык с небольшим набором предложений. Язык SQL может использоваться как для выполнения запросов к данным, так и для построения прикладных программ. Основные категории команд языка SQL предназначены для выполнения различных функций, включая построение объектов базы данных и манипулирование ими, начальную загрузку данных в таблицы, обновление и удаление существующей информации, выполнение запросов к базе данных, управление доступом к ней и ее общее администрирование.

ПОСМОТРИТЕ ВИДЕО ПО ТЕМЕ: Язык запросов 1С 8.3: ИЗ, ГДЕ, УПОРЯДОЧИТЬ

Процесс запрашивания данных и получения результата называется запросом к базе данных: отсюда и название — структурированный язык запросов. Язык структурированных запросов SQL (Structured Query Language) и его место в сфере доступа к информации в реляционных базах данных.

После выполнения инструкции появляется новая таблица, которой присваивается имя, указанное в инструкции. Обязательными операндами данной инструкции являются имя создаваемой таблицы и имя хотя бы одного столбца с указанием типа данных, хранимых в этом столбце. SQL поддерживает различные типы данных: целые числа, числа с плавающей запятой, строки символов, значения даты и времени и др. При создании таблицы для отдельных столбцов могут указываться некоторые дополнительные правила контроля вводимых в них значений. Конструкция — NOT NULL не пустое служит именно таким целям и для столбца таблицы означает, что в этом столбце должно быть непустое определенное значение. Пример 3. В процессе работы у пользователей возникает необходимость добавить в таблицу информацию. Примеры рассматриваются без учета ограничений целостности. Индекс — это средство, обеспечивающее быстрый доступ к строкам таблицы на основе значений одного или нескольких столбцов. В индексе хранятся значения данных и указатели на строки, где эти данные встречаются. Данные в индексе располагаются в убывающем или в возрастающем порядке, чтобы СУБД могла быстро найти требуемое значение. Затем по указателю СУБД сможет быстро определить строку, содержащую требуемое значение. Оператор позволяет создать индекс для одного или нескольких столбцов заданной таблицы с целью ускорения выполнение запросных и поисковых операций с таблицей. Для одной таблицы можно создать несколько индексов.

Целью разработки было создание простого непроцедурного языка, которым мог воспользоваться любой пользователь, даже не имеющий навыков программирования.

Скачать реферат SQL является инструментом, предназначенным для обработки и чтения данных, содержащихся в компьютерной базе данных. Как следует из названия, SQL является языком программирования, который применяется для организации взаимодействия пользователя с базой данных. На самом деле SQL работает только с базами данных реляционного типа.

Реферат на тему «Структура языка SQL 4»

Понятие и концепция базы данных и СУБД. Независимость приложений от организации данных во внешней памяти. Типы данных SQL, таблицы, структура языка и операторы. Преимущества модели реляционного подхода к организации баз данных и ее эффективность. Язык описания данных и язык манипулирования данными.

3.3.4. Структурированный язык запросов sql

Анализ программ, реализующих реляционную базу данных. Системы управления базами данных. Реляционные таблицы. Язык описания данных, средства описания данных в БД и связей между ними. Безопасность баз данных. Создание таблицы Дневник в режиме конструктора. Окно базы данных и создание таблиц. Ввод и редактирование данных. Обработка данных, содержащихся в таблице с помощью запросов. Создание схемы данных, отчетов, разработка логической структуры.

.

.

Структурированный язык запросов SQL

.

Реферат: Язык SQL

.

Язык SQL: общая характеристика, интерфейс с традиционными языками программирования

.

.

.

.

ВИДЕО ПО ТЕМЕ: 6. Базы данных. Оптимизация запросов. Оптимизация структуры данных - Технострим
Похожие публикации