2017-02-28 9 views
4

DDL 및 DML은 기본적으로 어디 :저장 프로 시저 DDL 또는 DML입니까?

  • DDL = 데이터 정의 언어
  • DML = 데이터 조작 언어

Structured Query language을 사용하기 때문에 나는 항상 DDL로 저장 프로 시저를 분류했다 .

하지만 최근에 나는 내부적으로 DDL과 DML을 가지고 있기 때문에 저장 프로 시저가 DML이어야하거나 다른 분류에 속해야한다고 최근에 논쟁을 벌였습니다.

나는 인터넷에서 검색하고 나는

따라서, 문제는 간단하다 ... 나는 더 주장 할 수없는, 저장 프로 시저가 DDL로 분류되는 모든 믿을 문서를 찾을 수 없습니다 : 저장되는 절차 DDL? 또는 DML?

+2

저장 프로 시저 * DDL을 사용하여 * 생성되지만 DML 및 DDL –

+0

당신과 함께 동의 _contain_ 수 있지만, 당신이를 나타냅니다 어떤 링크 나 문서를해야합니까? –

+0

모든 DBMS에 대한 모든 매뉴얼 –

답변

3

절차가 몸 안에 DML 및 DDL 로직을 포함 할 수 있습니다 저장하지만, 다음의 정의에 따라 자체는 DDL 분류에 맞게 저장 프로 시저, :

데이터 정의 언어 (DDL) 문는 데 사용됩니다 데이터베이스 구조 또는 스키마를 정의하십시오. 몇 가지 예 :

1. CREATE: To create objects in the database 
2. ALTER: Alters the structure of the database 
3. DROP:  Delete objects from the database 
4. TRUNCATE: Remove all records from a table, including all spaces allocated for the records are removed 
5. COMMENT: Add comments to the data dictionary 
6. RENAME: Rename an object 

데이터 조작 언어 (DML) 문는 스키마 객체 내에서 데이터를 관리하는 데 사용됩니다. 몇 가지 예 :

1. SELECT:  Retrieve data from the a database 
2. INSERT:  Insert data into a table UPDATE - updates existing data within a table 
3. DELETE:  Deletes all records from a table, the space for the records remain 
4. CALL:   Call a PL/SQL or Java subprogram  
5. EXPLAIN PLAN: Explain access path to data 
6. LOCK TABLE: Control concurrency