Coding 공부/DBMS

[DBMS] 쿼리문 명령어, SQL 명령어 분류

CBJH 2024. 3. 16. 09:44
728x90
반응형

1. SELECT

SELECT 명령어는 데이터베이스에서 데이터를 조회하는 데 사용됩니다. 가장 기본적인 형태는 SELECT 다음에 원하는 컬럼 이름을 나열하고, FROM 뒤에는 해당 컬럼들을 포함하고 있는 테이블 이름을 지정합니다.

  • 기본 구조: SELECT 컬럼1, 컬럼2 FROM 테이블명;
  • 예시: SELECT name, age FROM users;

SELECT문은 다양한 조건과 함께 사용될 수 있습니다. 예를 들어, 특정 조건을 만족하는 데이터만 조회하고 싶을 때 WHERE 절을 사용할 수 있습니다.

  • 조건부 조회: SELECT 컬럼1, 컬럼2 FROM 테이블명 WHERE 조건;

2. UPDATE

UPDATE 명령어는 기존에 저장된 데이터를 수정할 때 사용됩니다. 수정하고자 하는 테이블과 컬럼을 지정하고, 어떤 값으로 변경할지를 명시합니다. 또한, WHERE 절을 사용해 특정 조건을 만족하는 데이터에 대해서만 수정을 적용할 수 있습니다.

  • 기본 구조: UPDATE 테이블명 SET 컬럼1 = 값1, 컬럼2 = 값2 WHERE 조건;
  • 예시: UPDATE users SET age = 30 WHERE name = 'John';

주의할 점은 WHERE 절 없이 UPDATE를 사용하면 테이블의 모든 데이터가 변경될 수 있으므로 주의가 필요합니다.

3. DELETE

DELETE 명령어는 데이터를 삭제하는 데 사용됩니다. DELETE는 주로 WHERE 절과 함께 사용되어, 특정 조건을 만족하는 데이터만을 삭제합니다.

  • 기본 구조: DELETE FROM 테이블명 WHERE 조건;
  • 예시: DELETE FROM users WHERE age < 18;

각각의 명령어 사용 시, 데이터의 무결성을 유지하기 위해 주의 깊게 작업해야 하며, 특히 UPDATE와 DELETE 작업을 할 때는 되돌릴 수 없는 데이터 손실이 발생할 수 있으므로, 가능하면 작업 전에 데이터 백업을 수행하는 것이 좋습니다. SQL을 사용할 때는 이러한 명령어들을 조합하여 데이터를 효율적으로 관리할 수 있습니다. 

 

 

4. INSERT

INSERT 명령어는 새로운 데이터를 테이블에 추가할 때 사용됩니다. 데이터를 추가하려는 테이블의 이름과, 그 테이블의 컬럼에 맞게 데이터를 지정해야 합니다.

  • 기본 구조: INSERT INTO 테이블명 (컬럼1, 컬럼2, ...) VALUES (값1, 값2, ...);
  • 예시: INSERT INTO users (name, age) VALUES ('Alice', 25);

5. CREATE TABLE

CREATE TABLE 명령어는 새로운 테이블을 생성할 때 사용됩니다. 테이블을 생성할 때는 각 컬럼의 이름과 데이터 타입, 그리고 필요한 경우 다양한 제약조건(예: PRIMARY KEY, NOT NULL 등)을 명시해야 합니다.

  • 기본 구조: CREATE TABLE 테이블명 (컬럼1 데이터타입 [제약조건], 컬럼2 데이터타입 [제약조건], ...);
  • 예시: CREATE TABLE users (id INT PRIMARY KEY, name VARCHAR(100), age INT);

6. ALTER TABLE

ALTER TABLE 명령어는 이미 존재하는 테이블의 구조를 변경할 때 사용됩니다. 컬럼을 추가하거나 삭제하고, 컬럼의 데이터 타입을 변경하는 등의 작업을 수행할 수 있습니다.

  • 컬럼 추가: ALTER TABLE 테이블명 ADD 컬럼명 데이터타입;
  • 컬럼 삭제: ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
  • 예시(컬럼 추가): ALTER TABLE users ADD email VARCHAR(255);

7. DROP TABLE

DROP TABLE 명령어는 테이블 자체를 삭제할 때 사용됩니다. 이 명령어를 실행하면 테이블과 그 안에 있는 모든 데이터가 영구적으로 삭제됩니다.

  • 기본 구조: DROP TABLE 테이블명;
  • 예시: DROP TABLE users;

8. TRUNCATE TABLE

TRUNCATE TABLE 명령어는 테이블의 데이터를 모두 삭제하되, 테이블 구조는 유지하고 싶을 때 사용됩니다. 이 명령어는 DELETE 명령어보다 빠르게 작동하며, 삭제된 데이터는 복구할 수 없습니다.

  • 기본 구조: TRUNCATE TABLE 테이블명;
  • 예시: TRUNCATE TABLE users;

 

9. SQL 명령어 분류

 

  9-1. DDL (Data Definition Language) - 데이터 정의 언어

DDL은 데이터베이스 스키마를 정의하거나 수정하거나 삭제하는 데 사용되는 명령어 그룹입니다. 테이블, 인덱스 등의 구조를 생성, 변경, 삭제하는 작업을 포함합니다.

명령어설명

CREATE 새로운 데이터베이스, 테이블, 인덱스 등을 생성
ALTER 기존 데이터베이스 구조(테이블 등)를 수정
DROP 데이터베이스, 테이블, 인덱스 등을 삭제
TRUNCATE 테이블의 모든 데이터를 삭제하되 구조는 유지

  9-2. DML (Data Manipulation Language) - 데이터 조작 언어

DML은 데이터를 실제로 조작하는 데 사용되는 명령어 그룹입니다. 데이터를 삽입, 조회, 수정, 삭제하는 작업을 포함합니다.

명령어설명

SELECT 데이터베이스에서 데이터를 조회
INSERT 테이블에 새로운 데이터를 삽입
UPDATE 테이블의 데이터를 수정
DELETE 테이블의 데이터를 삭제

  9-3. DCL (Data Control Language) - 데이터 제어 언어

DCL은 데이터베이스에서 데이터에 대한 접근을 제어하는 데 사용되는 명령어 그룹입니다. 사용자에게 권한을 부여하거나 권한을 회수하는 작업을 포함합니다.

명령어설명

GRANT 사용자에게 권한을 부여
REVOKE 사용자의 권한을 회수