안녕하세요. IT회사에서 일하고 있는 4년차 개발자 입니다.
일을 하다보면 기본적일 수 있지만, 처음엔 잘 모를수 있다고 생각하여 적게되었습니다.
용어 | 명령어 | 설명 |
데이터 정의어 (DDL : Data Definition Language) |
CREATE | 테이블, 뷰, 인덱스 등을 정의하는 명령어 |
ALTER | 테이블에 대한 정의를 변경하는 명령어 | |
DROP | 테이블, 뷰, 인덱스 등을 삭제하는 명령어 | |
TRUNCATE | 테이블을 초기화 시키는 명령어 | |
데이터 조작어 (DML : Data Manipulation Language) |
SELECT | 데이터 베이스에 들어있는 데이터를 조회 또는 검색하기 위한 명령어 |
INSERT | 데이터 베이스에 데이터를 저장하기 위한 명령어 | |
UPDATE | 데이터 베이스에 저장되어있는 데이터를 변경하기 위한 명령어 | |
DELETE | 데이터 베이스에 저장되어있는 데이터를 삭제하기 위한 명령어 | |
데이터 제어어 (DCL : Data Control Language) |
COMMIT | 명령에 의한 수행된 결과를 실제 물리 디스크에 저장하고, 데이터 베이스 조작 작업이 정상적으로 완료되었음을 관리자에게 알려준다. |
ROLLBACK | 데이터 베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구함 | |
GRANT | 데이터 베이스 사용자에게 특정 사용권한을 부여함 | |
REVOKE | 데이터 베이스 사용자의 특정 권한을 취소함 |
DDL 같은경우 테이블이나, 뷰, 인덱스, 패키지 등 초기 객체들을 만들때 사용한다,
DML 데이터를 조작하는 명령어라고 생각하면 된다.
DCL 사용자에게 테이블 SELECT, INSERT, UPDATE, DELETE 권한을 부여하기도 하고 패키지, 프로시저 등을 EXECUTE (실행)권한을 부여하는 GRANT 명령어와 권한을 다시 취소하는 REVOKE 명령어가 있고,
COMMIT, ROLLBACK은 한번의 작업이 모두 정상적으로 완료 되었을때 COMMIT 데이터베이스에 실제 적용하고, ROLLBACK은 한번의 작업안에서 한 작업이라도 비정상적으로 종료(에러)가 났을경우 데이터가 변경되기 전의 상태로 되돌리는 명령어이다.
COMMIT, ROLLBACK관련해서 추가적으로 트랜잭션이 있는데, 한가지 함수를 호출하는데 함수안에서 여러가지 DB 변경이 일어날경우 변경이 일어날때마다 COMMIT을 하면 트랜잭션이 잘못되었다고 말한다. 트랜잭션은 한번의 작업하는 일련의 과정들을 말한다.
개발자 일을 하면서 DDL권한 DML 권한 주세요라는 말을 많이하게된다. DDL은 객체 생성, DML은 데이터 조작 이라고 생각하면 편하다.
처음 쓰는 블로그여서 말주변이 없지만, 조금씩 같이 공부하면서 말주변을 늘려보겠습니다!
DML관련해서 추가로 CRUD라고도 많이하는데 CREATE, READ, UPDATE, DELETE라고 한다. 처음 일하면서 이런 용어들을 잘 몰라서 많이 공부하고 찾아본 기억들이 있어서 처음 개발공부를 하시거나 취직하신분들에게 도움이 되었으면 하고 작성해봅니다.
궁금하신 부분이나 수정해야될꺼 있으면 알려주시면 더 같이 공부하겠습니다.
감사합니다.
'DB' 카테고리의 다른 글
ORACLE GRANT, SYNONYM 권한 , 별칭 주기 (0) | 2023.04.14 |
---|
댓글