데이터 조작 언어

Data manipulation language

데이터 조작 언어(DML)는 데이터베이스에서 데이터를 추가(삽입), 삭제 수정(업데이트)하는 데 사용되는 컴퓨터 프로그래밍 언어다. DML은 종종 SQL과 같은 더 넓은 데이터베이스 언어하위 언어로서, DML은 해당 언어의 일부 운영자를 구성한다.[1] 데이터의 읽기 전용 선택은 때로는 별도의 데이터 질의 언어(DQL)의 일부로 구분되기도 하지만, 밀접한 관련이 있고 때로는 DML의 구성 요소로 간주되기도 한다. 일부 운영자는 선택(읽기)과 쓰기를 모두 수행할 수 있다.

일반적인 데이터 조작 언어는 관계형 데이터베이스에서 데이터를 검색하고 조작하는 데 사용되는 구조화된 질의 언어(SQL)이다.[2] 다른 형태의 DML은 IDMS와 같은 IMS/DLI, CODASYL 데이터베이스에서 사용되는 것이다.

SQL

SQL에서 데이터 조작 언어는 저장된 데이터를 수정하지만 스키마나 데이터베이스 개체는 수정하지 않는 SQL 데이터 변경 문으로 구성된다.[3] 테이블이나 저장 프로시저와 같은 영구적인 데이터베이스 객체의 조작은 그 안에 저장된 데이터가 아닌 SQL 스키마 문을 통해 이루어지는 것으로,[3] 별도의 데이터 정의 언어(DDL)의 일부로 간주된다. SQL에서 이 두 범주는 상세한 구문, 데이터 유형, 표현식 등에서 유사하지만, 전체적인 기능에서는 구별된다.[3]

그 SQL-data의 진술들은 일반적인 관행에서 하지만, 이 차이 때문에 합하여서 모든 SQL-data 진술로 구성되어 있고자 널리 DML,[4]의 일부가 되지 않을 뿐더러로 여겨지고 있지 않는 SQL-data 변화 진술은 하위 집합;이것 또한 그 DQL이 아니라 합하여의 엄격하게 이야기 하고 있는 부분은 SELECT쿼리 statement,[3]을 포함하고 있다.. SQL-da진술을 바꾸다SELECT ... INTO ... 형태는 선택과 조작을 모두 결합하여, 데이터를 조작(즉, 수정)하기 때문에 DML로 엄격히 간주된다.

데이터 조작 언어는 거의 항상 동사인 문장의 첫 단어로 기능적 기능을 정리한다. SQL의 경우 이러한 동사는 다음과 같다.

를 들어, 테이블 직원에게 행을 삽입하는 명령:

삽입 INO 직원들. (first_name, last_name, fname) 가치 ('존', '카피타', 'xcapit00'); 

변형

대부분의 SQL 데이터베이스 구현은 필수, 즉 절차 언어를 제공함으로써 SQL 기능을 확장한다. OraclePL/SQLDB2SQL_PL이 그 예다.

데이터 조작 언어는 데이터베이스 공급업체 간에 많은 다른 맛과 기능을 가지고 있는 경향이 있다. ANSI가 SQL에 대해 확립한 표준은 여러 가지가 있지만,[2] 벤더는 여전히 표준 전체를 구현하지 않으면서 표준에 대한 자체 확장을 제공하고 있다.

데이터 조작 언어는 절차적 프로그래밍과 선언적 프로그래밍의 두 가지 유형으로 나뉜다.

데이터 조작 언어는 처음에는 컴퓨터 프로그램 내에서만 사용되었지만, SQL의 출현과 함께 데이터베이스 관리자에 의해 대화형으로 사용되게 되었다.

참고 항목

진술들

관련 언어

참조

  1. ^ Chatham, Mark (2012). Structured Query Language By Example - Volume I: Data Query Language. p. 8. ISBN 978-1-29119951-2.
  2. ^ a b SQL92
  3. ^ a b c d SQL92 4.22.2, 기능별로 분류된 SQL 문
  4. ^ "Data Manipulation Language Statements". Oracle. Data manipulation language (DML) statements query or manipulate data in existing schema objects.

외부 링크