본문 바로가기

SQLD/SQL 전문가 가이드

2.1.3 제3절 DML

1. INSERT

  • 방법
INSERT INTO 테이블명 (COLUMN_LIST) VALUES (VALUE_LIST);
INSERT INTO 테이블명 VALUES ( 전체 COLUMN에 넣을 VALUE_LIST );
  • 1번 : 경우 컬럼의 순서는 테이블의 컬럼순서와 매치할 필요는 없으나, 단 PK OR NOT NULL일 경우 NULL 허용하지 않는다.
  • 2번 : 컬럼 순대로 누락없이 데이터를 입력하여야 한다. 컬럼의 순서대로 빠짐없이 데이터가 입력되어야 한다.
  • 문자형은 싱글쿼테이션, 숫자는 제외

 

2. UPDATE

 

 

3. DELETE

  • DML과 DDL의 처리 방식 차이
    • DDL명령어인 경우에는 직접 데이터베이스의 테이블에 영향을 미치기 때문에 DDL 명령어를 입력하는 순간 명령어에 해당하는 작업이 즉시 Auto Commit 완료된다.
    • DML명령어인 경우, 조작하려는 테이블을 메모리 버퍼에 올려놓고 작업하기 때문에 실시간으로 테이블에 영향을 미치지 않으며, 메모리에 처리된 내역을 실제 테이블에 반영되기 위해서는 COMMIT을 수행하여야 TRANSACTION이 종료 된다.
    • SQL-Server에서는 자동으로 Auto Commit이 됨

 

4. SELECT 

  • ALL vs DISTINCT
    • ALL : Default 옵션이므로 별도로 표시하지 않아도 된다. 중복된 데이터가 있어도 모두 출력한다. 
    • DISTINCT : 중복된 데이터가 있는 경우 1건으로 처리해서 출력한다. 
    • WILDCARD 사용 : 아스타리크, 전체 컬럼 정보 조회
    • ALIAS 부여
      • 이중 인용부호(DOUBLE QUOTATION)은 ALIAS가 공백, 특수문자를 포함할 경우와 대소문자 구분이 필요할 경우 사용

5. 산술 연산자와 합성 연산자

  • 산술 연산자
  • 합성 연산자 : 문자와 문자를 연결
    • ('||') 수직 바 사용 - ORACLE
    • ('+') 사용 - SQL Server
    • CONCAT(STRING1, STRING2)
반응형