Язык манипулирования данными ( DML ) является компьютерный язык программирования используется для добавления (вставки), удаление и изменение данных (обновления) в базе данных . DML часто является подъязыком более широкого языка баз данных, такого как SQL , при этом DML включает в себя некоторые операторы на этом языке. [1] Выбор данных только для чтения иногда выделяется как часть отдельного языка запросов данных (DQL), но он тесно связан и иногда также считается компонентом DML; некоторые операторы могут выполнять как выбор (чтение), так и запись.
Популярным языком обработки данных является язык структурированных запросов (SQL), который используется для извлечения и обработки данных в реляционной базе данных . [2] Другие формы DML используются базами данных IMS / DLI, CODASYL , такими как IDMS и другими.
SQL
В SQL, язык манипулирования данных включают изменения SQL-данные заявления, [3] , которые изменяют хранимые данные , но не в схемах или базы данных объектов. Манипулирование постоянными объектами базы данных, например таблицами или хранимыми процедурами , с помощью операторов схемы SQL [3], а не данными, хранящимися в них, считается частью отдельного языка определения данных (DDL). В SQL эти две категории похожи по своему подробному синтаксису, типам данных, выражениям и т. Д., Но различаются по своей общей функции. [3]
Операторы изменения данных SQL являются подмножеством операторов данных SQL ; он также содержит оператор запроса SELECT [3], который, строго говоря, является частью DQL, а не DML. Однако в обычной практике это различие не проводится, и SELECT широко считается частью DML, [4] поэтому DML состоит из всех операторов SQL-данных , а не только операторов изменения данных SQL . В SELECT ... INTO ...
формах комбинатов как выбор и манипуляция, и , таким образом , строго считаются DML , потому что он манипулирует (т.е. модифицирует) данные.
Функциональные возможности языков манипулирования данными организуются с помощью начального слова в операторе, которое почти всегда является глаголом . В случае с SQL это глаголы:
SELECT ... FROM ... WHERE ...
(строго говоря DQL)INSERT INTO ... VALUES ...
UPDATE ... SET ... WHERE ...
DELETE FROM ... WHERE ...
Например, команда для вставки строки в таблицу сотрудников :
INSERT INTO сотрудников ( first_name , last_name , Fname ) VALUES ( 'Джон' , 'Capita' , 'xcapit00' );
Варианты
Большинство реализаций баз данных SQL расширяют свои возможности SQL, предоставляя императивные , то есть процедурные языки. Примерами этого являются Oracle 's PL / SQL и DB2 ' s SQL_PL .
Языки манипулирования данными, как правило, имеют множество разновидностей и возможностей у разных поставщиков баз данных. Там было несколько стандартов , установленных для SQL по ANSI , [2] но поставщики по- прежнему предоставляют свои собственные расширения стандарта , а не реализации всего стандарта.
Языки манипулирования данными делятся на два типа: процедурное программирование и декларативное программирование .
Языки манипулирования данными изначально использовались только в компьютерных программах , но с появлением SQL они стали использоваться администраторами баз данных в интерактивном режиме.
Смотрите также
Заявления
Родственные языки
Рекомендации
- Перейти ↑ Chatham, Mark (2012). Структурированный язык запросов на примере - Том I: Язык запросов данных . п. 8 . ISBN 978-1-29119951-2.
- ^ a b SQL92
- ^ a b c d SQL92 4.22.2, операторы SQL, классифицированные по функциям
- ^ «Заявления на языке манипулирования данными» . Oracle .
Операторы языка управления данными (DML) запрашивают или управляют данными в существующих объектах схемы.
- «Стандарт SQL92» .
Внешние ссылки
- Команды DML в Oracle