2023. 12. 24. 10:37ㆍ데이터베이스
데이터베이스 언어는 데이터베이스를 구축하고 이용하기 위한 데이터베이스 시스템과의 통신 수단입니다 데이터베이스언어는 데이터베이스관리시스템을 통해 사용하며 기능과 사용 목적에 따라 정의 언어(DLL), 데이터 조작 언어(DML), 데이터 제어 언어(DCL)로 나뉩니다 이번엔 이 데이터베이스의 언어의 정의와 종류를 알아보겠습니다
데이터 조작 언어(DML : data manipulation language)
사용자로 하여 데이터를 처리할 수 있게하는 도구로써 사용자와 데이터베이스관리시스템과의 인터페이스를 제공합니다 대표적인 데이터 조작 언어에는 질의어가 있습니다 질의어는 터미널에서 주로 이용되는 비절차적 데이터 언어입니다 절차적 언어와 비 절차적 언어가 있습니다 데이터 조작언어는 입력하는 순간 즉시 반영이 되지 않습니다 그러므로 데이터 조작언어에 의한 데이터 변동은 영구적인 변경이 아닙니다 그래서 ROLLBACK으로 다시 되돌릴 수 있습니다 또한 데이터 조작언어는 테이블을 메모리 버퍼 위에 올려두고 변경을 수행하기 때문에 실시간으로 테이블에 반영되지 않습니다 Commit 명령어를 통하여 Transaction을 종료하여야 해당 변경 사항이 테이블에 반영됩니다
데이터 조작 언어의 종류
SELECT : 데이터베이스에서 데이터를 검색합니다
INSERT : 테이블에 데이터를 추가합니다
UPDATE : 테이블 내에 존재하는 데이터를 수정합니다
DELETE : 테이블에서 데이터를 삭제합니다
데이터 정의 언어(DDL : data definition language)
데이터베이스 구조, 데이터 형식, 접근 방식 등 데이터베이스를 구축하거나 수정할 목적으로 사용하는 언어입니다 외부 스키마를 명세합니다 데이터정의언어는 스키마, 도메인, 테이블, 뷰, 인덱스를 정의하거나 변경 또는 삭제할 때 사용하는 언어로써 논리적 데이터 구조와 물리적 데이터 구조의 사상을 정의합니다 데이터베이스 관리자나 데이터베이스 설계자가 사용합니다 데이터 정의언어는 명령어를 입력하는 순간 작업이 즉시 반영 됩니다 그래서 사용할 때 주의해야 합니다
데이터 정의 언어의 종류
CREATE : 테이블을 생성합니다
ALTER : 테이블의 구조를 수정합니다
DROP : 테이블을 삭제합니다
RENAME : 테이블의 이름을 변경합니다
TRUNCATE : 테이블을 초기화합니다
CREATE에는 규칙이 있습니다 객체를 의미하는 것이기 때문에 단수형으로 이름을 짓는 걸 권고합니다 유일한 이름으로 명명해야 합니다 테이블 내의 칼럼명 또한 중복되지 않는 유일한 이름으로 명명해야 합니다 정의할 때 각 컬럼은 ' , ' 으로 구분하며 테이블 생성문의 마지막은 ' ; ' 입니다 컬럼명은 데이터 표준화 관점에서 일관성 있게 사용해야 합니다 컬럼 뒤에 데이터 유형을 반드시 지정해야 합니다 테이블과 컬럼명은 반드시 문자로 시작합니다 대소문자를 구분하진 않지만 기본적으로 대문자로 만들어집니다
ALTER 컬럼 변경 문법
ADD COLUMN : 칼럼을 추가합니다
DROP COLUMN : 칼럼을 삭제합니다
MODIFY COLUMN : 칼럼을 수정합니다
RENAME COLUMN : 칼럼의 이름을 수정합니다
DROP CONSTRAIN : 칼럼의 제약조건을 기반하여 삭제하는 역할을 합니다
데이터 제어 언어(DCL : data control language)
데이터의 무결성 보안 및 권한제어 등을 하기 위한 언어입니다 데이터를 보호하고 데이터를 관리하는 목적으로 사용합니다 데이터 제어 언어를 사용하면 데이터베이스에 접근하여 읽거나 쓰는 것을 제한할 수 있는 권한을 부여하거나 박탈할 수 있고 트랜잭션을 명시하서나 조작할 수 있습니다 데이터 제어언어의 특징으로는 불법적인 사용자로부터 데이터를 보호하기 위한 데이터 보안의 역할을 수행하며 데이터의 정확성을 위한 무결성을 유지하기도 합니다 시스템 장애에 대비하여 회복과 병행수행을 제어합니다
데이터 제어 언어의 종류
GRANT : 권한을 정의할 때 사용하는 명령어입니다
REVOKE : 권한을 삭제할 때 사용하는 명령어입니다
'데이터베이스' 카테고리의 다른 글
데이터베이스 인덱스(Index) (1) | 2023.12.26 |
---|---|
데이터베이스 트랜잭션(TCL)이란 (0) | 2023.12.25 |
데이터베이스의 구조 (0) | 2023.12.23 |
데이터베이스의 기본개념 (1) | 2023.12.22 |
데이터 베이스란 (0) | 2023.12.22 |