[Database] DB 명령어

TW·2025년 4월 19일
0

Database

목록 보기
2/2

다른 언어도 명령어가 있듯이, DB에도 명령어가 있다. 오늘은 관계형 데이터베이스(DBMS)에서 쓰이는 SQL의 구조와 명령어에 대해서 알아보려고 한다.

SQL


SQL 이란(Structured Query Language)의 약자로 구조화된 쿼리 언어이다.
관계형 데이터베이스에 저장된 데이터를 관리하고 처리하기 위한 프로그래밍 언어라고도 한다.

이 SQL의 구조를 보면 크게 DML, DDL, DCL, TCL 4가지로 볼 수 있다.


오늘은 그 중에서 DML, DDL, DCL 3가지에 대해서 알아보려고 한다.

DDL


DDL이란(DDL: Data Definition Language)의 약자로 데이터베이스의 구조를 정의하는 명령어이다.

데이터베이스의 뼈대를 만드는 명령어로, 테이블을 생성, 수정, 삭제 할 수 있다.

CREATE

  • 테이블 생성
CREATE TABLE 학생 ( -- 말 그대로 '학생'이라는 테이블을 생성해준다.
    학생ID INT PRIMARY KEY,
    이름 VARCHAR(50),
    나이 INT,
    전공 VARCHAR(50) -- 총 4가지로 학생, 이름, 나이, 전공 순으로 타입에 맞게 생성 해줄수있다.
);

ALTER

  • 테이블 수정
ALTER TABLE 학생 ADD COLUMN 주소 VARCHAR(100); 
--'학생' 테이블에 주소라는 열을 추가해줄 수 있다. 타입은 VARCHAR 타입이고 길이는 100이다.

여기서 VARCHAR는
가변 길이 문자열을 뜻함. 문자와 숫자를 저장할 수 있는 데이터 타입이다.

DROP

  • 테이블 삭제
DROP TABLE 학생; 
-- 학생이라는 테이블을 삭제한다. 테이블을 삭제하는 것이기에 안에 있는 데이터도 같이 삭제된다.

DML


DML은(DML: Data Manipulation Language)의 약자로 데이터를 조작하는 명령어 이다.

데이터를 조회, 추가, 수정, 삭제 할 수 있다.

SELECT

  • 데이터 조회
SELECT * FROM 학생; --학생 테이블의 전체 데이터를 조회 할 수 있다.

INSERT

  • 데이터 추가
INSERT INTO 학생 (학생ID, 이름, 나이, 전공) VALUES (4, '박지민', 23, '화학공학');
--학생 테이블에 학생ID, 이름, 나이, 전공 순으로 4, '박지민', 23, '화학공학' 값이 추가됨.

UPDATE

  • 데이터 수정
UPDATE 학생 SET 나이 = 22 WHERE 학생ID = 1;
--학생 테이블에 학생ID가 1인 데이터 중 나이를 22로 수정한다.

DELETE

  • 데이터 삭제
DELETE FROM 학생 WHERE 학생ID = 2;
--학생 테이블에 학생ID가 2인 데이터를 전체 삭제한다.
--DROP과는 다르게 WHERE 조건을 걸어 테이블 안에 있는 일정 데이터 삭제가 가능하다.

DCL


DCL이란(DCL: Data Contral Language)의 약자로 데이터를 제어하는 명령어이다.

데이터베이스에 대한 접근 권한을 제어할 수 있다.

GRANT

  • 데이터 권한 부여
GRANT SELECT, INSERT ON 학생 TO 사용자1;
--사용자1에게 학생테이블의 SELECT, INSERT 권한을 부여한다.

REVOKE

  • 데이터 권한 취소
REVOKE INSERT ON 학생 FROM 사용자1;
--사용자1에게 학생테이블의 INSERT 권한을 취소한다.

<출처>


사진

0개의 댓글