Что такое язык описания данных пояснить требования перечислить наиболее распространенные
Языковые средства СУБД: ЯОД и ЯМД
Современная СУБД содержит в своем составе программные средства создания баз данных, средства работы с данными и дополнительные сервисные средства (рис. 7.2).
Рис. 7.2. Состав СУБД
Для работы с базами данных используются специальные языки. В ранних СУБД поддерживалось несколько специализированных по своим функциям языков.
Чаще всего выделялись два языка: ЯОД(Язык Описания Данных или Язык Определения Схемы БД) и ЯМД (Язык Манипулирования Данными). ЯОД служил главным образом для определения логической структуры БД, т.е. той структуры БД, какой она представляется пользователям. ЯМД содержал набор операторов манипулирования данными, т.е. операторов, позволяющих заносить данные в БД, удалять, модифицировать или выбирать существующие данные.
Таким образом, с помощью средств создания БД проектировщик, используя ЯОД, переводит логическую модель БД в физическую структуру, а на ЯМД разрабатывает программы, реализующие основные операции с данными (в реляционных БД это реляционные операции). При проектировании привлекаются визуальные средства, т.е. объекты и программа-отладчик, с помощью которых соединяются и тестируются отдельные блоки разработанной программы управления конкретной БД.
Средства работы с данными предназначены для пользователя. Они позволяют установить удобный, как правило, графический многооконный интерфейс с пользователем, создать необходимую функциональную конфигурацию экранного представления выводимой и вводимой информации (цвет, размер и количество окон, пиктограммы и т.д.), производить операции с данными, манипулируя текстовыми и графическими объектами.
Сервисные средства позволяют при проектировании и использовании БД привлечь другие системы. Например, воспользоваться текстом из редактора Word или таблицей из табличного процессора Excel, или обратиться к сетевому серверу.
В современных СУБД обычно поддерживается единый интегрированный язык, содержащий все необходимые средства для работы с БД, начиная от ее создания, и обеспечивающий базовый пользовательский интерфейс с базами данных.
Стандартным языком наиболее распространенных в настоящее время реляционных СУБД является язык SQL (Structured Query Language – Структурированный Язык Запросов).
Язык SQL сочетает средства ЯОД и ЯМД, т.е. позволяет определять схему реляционной БД и манипулировать данными. Для «диалекта» SQL, разработанного компанией Microsoft, рассмотрим примеры, поясняющие основные операторы (инструкции) языка [26].
Пример 1. Создать таблицу «Сотрудник» с полями: Табельный номер, ФИО, Оклад, Дата приема на работу, используя инструкцию CREATE TABLE.
Это инструкция ЯОД формата:
CREATE TABLE ИмяТабл (Поле1 тип [(длина поля)], Поле2 тип [(длина поля)]…);
Для создания таблицы «Сотрудник»:
CREATE TABLE Сотрудник (ТабНомер TEXT (6), ФИО TEXT (15), Оклад INTEGER, Дата DATETIME);
Пример 2. Выбрать из таблицы «Сотрудник» сотрудника с табельным номером, равным 1251, используя инструкцию SELECT.
Это инструкция ЯМД формата:
SELECT
В примере выбираются все поля таблицы, что обозначается знаком *, а условие отбора заключается в скобки:
При этом именование объектов БД (для реляционной БД наименование таблиц и полей) поддерживается на языковом уровне таким образом, что компилятор языка SQL производит преобразование имен объектов в их внутренние идентификаторы на основании специально поддерживаемых служебных таблиц каталогов. Внутренняя часть СУБД (ядро) вообще не работает с именами таблиц и полей.
Язык SQL содержит специальные средства определения ограничений целостности БД. Ограничения целостности так же хранятся в специальных таблицах-каталогах. Обеспечение контроля целостности БД производится на языковом уровне, т.е. при компиляции операторов модификации БД (вставке, удалении, обновлении записи) компилятор SQL на основании имеющихся в БД ограничений целостности генерирует соответствующий программный код.
Специальные операторы языка SQL позволяют определять так называемые представления БД, фактически являющиеся хранимыми в БД запросами (результатом любого запроса к реляционной БД является таблица) с поименованными столбцами.
Наконец, авторизация доступа к объектам БД производится также на основе специального набора операторов SQL. Для выполнения операторов SQL разного вида пользователь должен обладать различными полномочиями. Пользователь, создавший таблицу БД, обладает полным набором полномочий для работы с этой таблицей. Полномочия пользователей описываются в специальных таблицах-каталогах, и контроль полномочий поддерживается на языковом уровне.
Диапазон в запросах, помимо значения ALL (по умолчанию) может принимать:
для отдельной таблицы – DISTINCT – указывает на исключения из результирующего запроса, содержащего не все поля, повторяющиеся записи;
DISTINCTROW – используется, как правило, для связанных таблиц в запросах, содержащих не все поля таблиц, опускает целиком повторяющиеся записи;
TOP n – используется, как правило, при наличии сортировки:
ORDER BY… – выводит n-первых отсортированных записей:
ORDER BY… WHERE
Если не использовать ORDER BY, то система возвратит n-произвольных записей.
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет
Языки запросов. Языки описания данных. Языки манипулирования данными. Особенности языковых средств управления и обеспечения безопасности данных в реляционных СУБД.
Внутренний язык СУБД для работы с данными состоит из двух частей:
— язык определения (описания) данных (Data Definition Language – DDL) – используется для определения схемы базы данных;
— язык управления данными (Data Manipulation Language – DML) – используется для чтения и обновления данных.
Язык DDL – это декларативный язык, который позволяет описать и поименовать сущности, необходимые для работы некоторого приложения, а также связи между различными сущностями. Язык нельзя использовать для управления данными.
Результатом компиляции DDL-операторов является набор таблиц, хранимый в особых файлах, называемых системным каталогом (словарь данных, каталог данных).
Теоретически для каждой схемы в трехуровневой архитектуре можно было бы выделить несколько различных языков DDL:
— язык DDL внешних схем;
— язык DDL концептуальной схемы;
— язык DDL внутренней схемы.
На практике существует один общий язык DDL, который позволяет задавать спецификации, как минимум, для внешней и внутренней схем.
Язык DML – это язык, содержащий набор операторов для поддержки основных операций манипулирования содержащимися в базе данными.
К операциям управления данными относятся следующие:
— вставка в базу данных новых сведений;
— модификация сведений, хранимых в базе данных;
— извлечение сведений, содержащихся в базе данных;
— удаление сведений из базы данных.
Понятие манипулирования данными применимо как к внешнему и концептуальному уровням, так и к внутреннему уровню.
Таким образом, одна из основных функций СУБД заключается в поддержке языка манипулирования данными, с помощью которого пользователь может задавать выражения для выполнения перечисленных выше операций с данными.
Следует различать два типа языков DML:
Процедурный язык DML – это язык, который позволяет сообщить системе о том, какие данные необходимы, и точно указать, как их можно извлечь.
С помощью процедурного языка DML программист указывает:
— какие данные ему необходимы
— как их можно получить.
Это значит, что программист должен определить все операции доступа к данным посредством вызова соответствующих процедур. Обычно процедурный язык DML позволяет извлечь запись, обработать ее и, в зависимости от полученных результатов, извлечь другую запись, которая должны быть подвергнута аналогичной обработке, и т. д.
Языки DML сетевых и иерархических СУБД обычно являются процедурными.
Непроцедурный язык DML– это язык, который позволяет указать лишь то, какие данные требуются, но не то, как их следует извлекать.
Непроцедурные языки DML позволяют определить весь набор требуемых данных с помощью одного оператора извлечения или обновления. С помощью непроцедурных языков DML пользователь указывает, какие данные ему нужны, не определяя способ их получения. СУБД транслирует выражение на языке DML в процедуру (набор процедур), которая обеспечивает манипулирование набором данных.
Непроцедурные языки часто также называют декларативнымиязыками.
Непроцедурные языки обычно проще в понимании и использовании, т. к. большая часть работы при этом выполняется СУБД, а не пользователем.
Запроспредставляет собой специальным образом описанное требование, определяющее состав производимых над БД операций по выборке, удалению или модификации хранимых данных.
Для подготовки запросов с помощью различных СУБД чаще всего используются два основных языка описания запросов:
— язык QBE (Query By Example) — язык запросов по образцу;
— SQL (Structured Query Language) — структурированный язык запросов.
По возможностям манипулирования данными при описании запросов указанные языки практически эквивалентны. Главное отличие между ними, заключается в способе формирования запросов:
— язык QBE предполагает ручное или визуальное формирование запроса,
— SQL предполагает программирование запроса.
Теоретической основой языка QBE является реляционное исчисление с переменными доменами. Структурированный язык запросов SQL основан на реляционном исчислении с переменными кортежами.
Языки безопасности баз даных
Администратору СУБД необходим специальный инструментарий:
— определения конкретных назначений или установления правил;
— управления системой разграничения доступа;
— управления системой коллективной обработки данных.
Такой инструментарий должен основываться на определенном языке, позволяющем описывать и устанавливать необходимые установки политики безопасности в конкретной АИС.
В реляционных СУБД такой язык должен являться соответственно составной частью языка SQL.
В перечне базовых инструкций языка SQL представлены инструкции GRANT и REVOKE, предоставляющие или отменяющие привилегии пользователям. Структура инструкции GRANT и REVOKE выглядит следующим образом:
GRANT ON ТО [WITH GRANT OPTION];
REVOKE ON FROM ;
Список привилегий составляют разрешенные инструкции (операции) над объектом:
1. Роли. Когда роли назначены привилегии, она становится пользователем. Основная идея использования ролей заключается в том, чтобы упаковать и управлять дискретными наборами привилегий, которые могут назначаться и отменяться как одно целое.
2. Просмотры. Просмотрам нужны полномочия для доступа к таблицам, другим просмотрам и к хранимым процедурам.
3. Процедуры и триггеры. Хранимой процедуре, которая обращается к таблицам и просмотрам и выполняет другие процедуры, нужны полномочия к этим объектам. Триггеру, который выполняет процедуры, нужны к ним полномочия, а также к любым таблицам и просмотрам, к которым он обращается, отличным от той таблицы, которой он принадлежит.
Директива WITH GRANT OPTION наделяет перечисленных пользователей дополнительными особыми полномочиями по предоставлению указанных в списке привилегий-полномочий другим пользователям. Необязательное предложение.
ДирективаWITH ADMIN OPTION позволяет получающему роль предоставлять эту роль другим пользователям, а также отменять ее. Она работает таким же образом, что и WITH GRANT OPTION для обычных полномочий.
Оператор REVOKE требуется для удаления полномочий, назначенных операторами GRANT. Согласно стандарту, REVOKE должен каскадом отменить все привилегии, полученные всеми пользователями как результат WITH GRANT OPTION от данного пользователя.
Полномочия, предоставленные «в куче», не могут отменяться индивидуально. Это означает:
— привилегия, которую пользователь получил в результате назначения ALL или в качестве роли, может быть отменена только предоставившим эту привилегию, путем отмены ALL или роли соответственно;
— привилегии, предоставленные для PUBLIC, могут быть отменены только FROM PUBLIC.
Язык описания данных
В качестве примера описания данных рассмотрим ЯОД СУБД dBASE IV или FOXPRO. В данной СУБД элементы данных описаны следующими параметрами: номер элемента, имя, тип, длина значения элемента в байтах или символах, точность представления. Тип элемента принимается одним из следующих: символьный, целый, с плавающей запятой, дата, логический, поле памяти, графический.
Например, элемент “Высота” описывается следующим образом:
Следующим примером является ЯОД СУБД “ПОТОК”. В нем элемент описывается следующими параметрами:
ИМЯ (принятое по технологии);
ИНД (положение элемента в агрегате, т.е. относительный адрес в байтах);
РЗДЭ (символ, отделяющий данный элемент от следующего при вводе данных);
МАХ (максимально допустимое значение);
MIN (минимально допустимое значение);
ЕДН (единица измерения элемента);
РАЗМ (длина в символах при выводе);
ЗАГЛ (заголовок поля);
ГРН (правая граница поля, начиная с которой будет печататься элемент);
ТОЧН (количество знаков после запятой для выводимых чисел);
ЕДВВ (единица измерений для печати);
Тогда схема элемента “ВЫСОТА” будет следующей
ИМЯ “Н”, ТИП “Д”, ДЛИНА 4, ПРЗН 0, РЗДЭ “:”, МАХ 9000, MIN 100, ЕДН “М”, РАЗМ 9, ЗАГЛ “Н”, ГРН 2, ТОЧН 3, ЕДВВ “М”.
Агрегат также может быть описан определенным образом. Например в СУБД “ПОТОК” параметрами агрегата “РЕПЕР” приняты следующие величины:
НЗВН (количество единиц в имени агрегата)
КОЛВО (количество элементов в агрегате)
РЗДА (символ, отделяющий данный агрегат от следующего) и др.
Тогда описание имени агрегата “РЕПЕР” будет следующим:
НЗВН 8; КОЛВО 7; РЗДЭ “*”.
Схема всего агрегата тогда будет
описание имени агрегата
В примере с тахеометрической съемкой агрегатами являются: пикет, станции, исполнитель, участок, диспетчер, план. Примерами элементов: отсчет по горизонтальному кругу, вертикальному, высота, ФИО исполнителя, номер участка и др.
Язык описания данных
57. Язык описания данных
Data definition language
Язык, предназначенный для описания схем без данных
Смотреть что такое «Язык описания данных» в других словарях:
Язык описания данных — высокоуровневый непроцедурный язык декларативного типа, предназначенный для описания физической и/или логической структуры данных. См. также: Системы управления базами данных Структуры данных Финансовый словарь Финам … Финансовый словарь
язык описания данных — ЯОД Язык, предназначенный для описания схем баз данных. [ГОСТ 20886 85] Тематики организация данных в сист. обраб. данных Синонимы ЯОД EN data definition languageDDL … Справочник технического переводчика
язык описания конфигурации системы — Данный язык обеспечивает возможность обмена информацией о конфигурации устройств в стандартизованном формате между программным обеспечением различных фирм производителей. [Новости Электротехники №3(75). Релейная защита. МЭК 61850] Все параметры… … Справочник технического переводчика
язык описания хранения данных — — [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом EN data storage description languageDSDL … Справочник технического переводчика
язык — 3.1.6. язык: Система знаков, обеспечивающая коммуникацию и включающая набор знаков (словарь) и правила их употребления и интерпретации (грамматика) Источник … Словарь-справочник терминов нормативно-технической документации
ЯЗЫК ПРОГРАММИРОВАНИЯ — это совокупность набора символов (алфавита) системы, правил образования (синтаксис) и истолкования конструкции из символов (семантика) для задания алгоритмов с использованием символов естественного языка. В самом общем виде формальный язык… … Большая политехническая энциклопедия
ЯЗЫК ПРОГРАММИРОВАНИЯ — формальный язык для описания данных (информации) и алгоритма (программы) их обработки на ЭВМ. Основу Я. п. составляют алгоритмические языки. Первыми Я. п. были внутренние машинные языки, представляющие собой системы команд конкретной ЭВМ,… … Большой энциклопедический политехнический словарь
Язык программирования — формальная знаковая система, используемая для связи человека с ЦВМ; предназначена для описания данных (информации) и алгоритмов (программ) их обработки на вычислительной машине. Примеры Я. п. Алгол, Кобол, Фортран, а также машинные языки… … Большая советская энциклопедия
ЯЗЫК — 1) система знаков, служащая средством человеческого общения, мышления и выражения. С помощью языка осуществляется познание мира, в языке объективизируется самосознание личности. Язык является специфическим социальным средством хранения и передачи … Профессиональное образование. Словарь
Язык разметки прогнозного моделирования — Язык разметки для прогнозного моделирования (Predictive Model Markup Language PMML) является языком разметки на основе XML, разработанным Data Mining Group (DMG), и обеспечивающим приложениям способ определения моделей, относящихся к… … Википедия
Язык описания данных
Языки описания данных состоят из двух составляющих: языка представления данных и языка описания метаданных. Языки представления задают формальные характеристики документов: форматы, кодировку, тип, структуру документов.
К языкам представления относятся прежде всего языки библиографического описания данных, применяемых при организации каталогов и картотек. На автоматизированный поиск рассчитаны машинные библиографические форматы. Их основу составляют форматы MARC (Machine-Aided Readable Cataloging) и ISO 2709. На современном этапе наиболее распространены международные форматы UNIMARC, американский MARC21 и в России RUS- MARC.
Международный коммуникативный формат предназначен для обмена библиографическими данными в машиночитаемой форме. UNIMARC определяет структуру и наполнение библиографических записей и включает «МАРКЕР» записи, «СПРАВОЧНИК», «ПОЛЯ ДАННЫХ».
Маркер записи 24-х символьный и, кроме всего прочего, содержит элементы, описывающие структуру справочника и полей данных. Справочник представляет собой перечень статей. Каждая статья справочника состоит из трех частей: метки поля, относительного адреса данного поля, длины поля. Например, Вестник Санкт-Петербургского университета будет иметь запись: 011 ##$a0132-4624.
Для электронных документов разработаны и используются следующие форматы:
1) текст, структурированный или нет (ISO 646);
2) текст на языке SQML (ISO 8879);
3) текст на языке HTML;
4) ODA-текст (ISO 8613);
5) CCIT-формат кодировки графических образов страниц;
7) мультимедийные составные файлы (текст, аудио, видео).
В связи с ростом Интернет найти необходимый ресурс становится все сложнее, использование форматов (UNIMARK, MARC21) в сети нереально, т.к.
Работы по стандартизации набора семантических свойств с ориентацией на электронные документы были активизированы в 1995 г. после семинара в Дублине (штат Огайо), в связи с чем вариант языка метаданных получил название Дублинского ядра. Текущая версия спецификаций Дублинского ядра включает 15 элементов или полей, которые могут повторяться. При описании поля кроме имени вводят понятия схемы и подполей.
Схема — это наименование правил, в которых оговаривается содержание полей. Например:
1) поле «Дата» — стандарт ввода дат;
2) поле «Язык» — стандарт кодировки ASCII, KOI8 и т.д.
Подполе — это информация, уточняющая содержание поля.
Перечень подполей еще четко не определен. При использовании стандарта DC описание ресурса может быть прочитано специальным роботом и помещено в каталог с разбиением на поля.
Кратко рассмотрим описание некоторых элементов Дублинского ядра (Dublin Согу Metadata Element Set).
1. Название ресурса.
Определение: имя, данное ресурсу автором или издателем.
Схема: не используется.
DC. Title — основное заглавие (подполе по умолчанию);
DC. Title Alternative — альтернативное заглавие.
2. Автор или создатель.
Определение: лицо или организация, ответственные за содержание ресурса.
DC. Creator — автор (подполе по умолчанию);
DC. Creator. Personal Name — имя индивидуального автора;
DC. Creator. Corporate Name — имя коллективного автора (включая наименование конференций);
DC. Creator. Personal Name. Address — любой тип адреса индивидуального автора, включая электронный;
DC. Creator. Corporate Name. Address — любой тип адреса коллективного автора, включая электронный.
3. Предмет и ключевые слова.
Определение: описание ресурса. Обычно предмет описывается ключевыми словами или фразами. Рекомендуется использовать контролирующие словари или формальные классификационные схемы.
Определение: описание содержания ресурса.
Остальные поля далее рассмотрим в порядке перечисления:
2. Издатель (пять подполей).
3. Сведения об ответственности (сведения об организации или лице, внесших значительный вклад в создание ресурса, но не указанных в поле «автор» или «создатель», содержит пять подполей).
4. Дата (согласовано только два подполя: «дата создания» и «дата поступления»).
5. Тип ресурса (текст, программы, изображения, перечень которых приведен в Интернете):
6. Формат используется при определении программного и технического обеспечения (doc, pdf, htm, jpeg). Для его определения рекомендуется использовать контролируемый словарь стандарта MIME (Multipurpose Internet Mail Extensions) — Internet Media Types.
7. Идентификатор ресурса (строка или число для однозначного определения ресурса).
8. Источник (строка или число для однозначного определения источника, из которого ресурс был создан).
Текст по умолчанию:
URL (Uniform Resource Locator):
ISBN (International Standard Book Number) и т.д.
10. Отношения (указываются другие ресурсы, на которые имеются ссылки).
11. Охват (пространственная и временная характеристика).
12. Правовые аспекты (источник информации об авторских правах).
Стандарт DC полностью соответствует стандарту HTML, и поэтому он может непосредственно включаться в сам ресурс. В языке HTML для этого используется специальный тег Meta с атрибутами NAME (название поля) и CONTENT (значение). В последних версиях HTML введены атрибуты LANG и SCHEME,
которые позволяют задать язык представления и соответственно схему, уточняющую контекст.
Стандарт DC достаточно прост, и для разработчиков ресурсов существуют сайты с формами для описания ресурса и набора метаданных, а также правил кодировки.