SQL | 구문 사용법 SELECT, INSERT, UPDATE, DELETE

|

개요

Structured Query Language(구조적 질의 언어) 의 줄임말입니다. 에스큐엘, 시퀄이라고도 하며 데이터베이스 시스템에서 자료를 처리하는 용도로 사용되고 있습니다.

SELECT조회SELECT 컬럼 FROM 테이블 {WHERE …};
INSERT추가INSERT INTO 테이블 (컬럼1,컬럼2) VALUES (‘값1′,’값2′,’값3’);
UPDATE변경UPDATE 테이블 SET 컬럼 = ‘값’ WHERE 조건문;
CREATE생성CREATE TABLE 테이블;
DELETE데이터 삭제DELETE FROM 테이블 WHERE 조건문;
DROP테이블 삭제DROP {DB명} 테이블명;
COMMIT트랜젝션 작업 결과 반영COMMIT;
ROLLBACK트랜젝션 작업 취소 및 원복ROLLBACK;
GRANT사용자 권한 부여GRANT SELECT ON TABLE 테이블 FROM 유저
REVOKE사용자 권한 취소REVOKE SELECT ON TABLE 테이블 FROM 유저

기본적인 사용방법을 정리한 자료입니다. 추가로 SAVEPOINT 가 있지만 ANSI 표준 SQL 이 아니기 때문에 조심해서 사용해야 합니다.

문법 분류

SQL 문법은 크게 3가지 종류로 나뉩니다.

  • DDL (데이터 정의어 : Data Definition Language)
    테이블이나 관계의 구조를 생성하는데 사용됩니다.
    CREATE ALTER DROP TRUNCATE RENAME
  • DML (데이터 조작어 : Data Manipulation Language)
    데이터를 검색, 삽입, 수정, 삭제하는데 사용됩니다.
    SELECT INSERT DELETE
  • DCL (데이터 제어어 : Data Control Language)
    데이터 사용권한을 관리하는데 사용됩니다.
    GRANT REVOKE


일부에서 사용하는 문법입니다.

  • DQL (질의어 : Data Query Language)
    데이터를 조회할 때 사용하는 유형입니다.
    SELECT

  • TCL (트랜젝션 제어어 : Transaction Conrol Language)
    트랜잭션을 제어하는데 사용됩니다.
    COMMIT ROLLBACK SAVEPOINT

특성

SQL은 다음과 같은 특성을 가지고 있습니다.

1. 객체를 표현할 때 백틱 ( “ ) 으로 감싸줍니다.
ex) SELECT `TITLE` , `NAME` FROM `INVOICE`

2. 고유 값을 표현할 때 따옴표 ( ” ) 로 감싸줍니다
ex) SELECT * FROM table WHERE NAME = ‘정라잇’;

3. SQL 명령은 반드시 세미콜론을 붙여야 합니다.

4. 같음을 표현하는데는 = 하나만 사용합니다.

5. SQL 예약어는 대문자, 테이블이나 속성 이름소문자로 적는것을 권장합니다. (필수아님)

처리 순서

내림차순으로 처리가 됩니다

  • FROM
  • ON
  • JOIN
  • WHERE
  • GROUP BY
  • WITH CUBE, WITH ROLLUP
  • HAVING
  • SELECT
  • DISTINCT
  • ORDER BY
  • TOP

주석

한줄 주석 : 코드 앞에 — 를 입력합니다 -- SELECT * FROM table
여러 줄 주석 : 코드를 /* */ 로 감싸줍니다 /* SELECT * FROM table */

단어 설명

  • 트랜잭션 (Transaction) : 데이터베이스의 상태를 변화하기 위해 수행하는 작업 단위
    ex) SELECT, INSERT, DELETE, UPDATE 를 이용한 작업 구문 단위
  • 커밋 (Commit) : 하나의 트랜잭션이 끝났고, 데이터베이스가 일관성 있는 상태로 있을 때 트랜젝션이 끝났다는 것을 알리기 위해 사용하는 연산. 이 연산을 수행하면 수행했던 트랜잭션이 로그에 저장됩니다.
  • 롤백 (Rollback) : 하나의 트랜잭션 처리가 비정상적으로 종료되어 트랜잭션의 원자성이 깨진 경우, 트랜잭션을 처음부터 다시 시작하거나. 트랜잭션의 부분적으로만 연산된 결과를 다시 취소합니다.
    DROP , DELETE 는 작동이 되지 않기 때문에 주의해야합니다
  • URL 쿼리스트링 : URL 주소에 미리 협의된 데이터를 파라미터를 통해 넘기는 방법
  • * : 모든 컬럼의 데이터를 대상으로 선택하고싶을 때 사용합니다.

참조

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다