Database
SQL이란 데이터베이스의 언어입니다. 관계형 데이터베이스에서 데이터를 조작하고 쿼리하는 표준 언어 입니다. 조금 더 쉽게 이야기한다면 사용자가 필요하고 원하는 것을 RDBMS에게 요청(쿼리)을 하는 걸 이야기합니다.
RDBMS에는 여러 가지 종류가 있습니다. SQL은 몇 가지 개념만 완벽하게 이해하신다면 오라클은 물론이고, 그 어떤 RDBMS에서도 능숙하게 사용할 수 있습니다.
각각의 RDBMS (oracle, mysql, mariadb, ms-sql, postgresql, greenplum 등등)가 있지만 그중에 하나의 데이터베이스를 골라 SQL을 공부하시면 됩니다. 그렇게 하나만 제대로 배워두시면 나머지는 약간씩 다른 문법이나 사용법을 숙지하시면 큰 틀 안에서 SQL을 활용하는 데는 무리가 없습니다.\
ANSI SQL이란
1986년 SQL-86의 명칭으로 ANSI에 의해 최초로 표준화된 SQL문법을 말하며,
ANSI 표준으로 작성된 SQL은 모든 데이터베이스에서 호환된다. 기본적인 데이터 조
회 구문은 ANSI SQL을 이용해서 작성이 가능하나, 특정 DBMS에서만 제공하는 함
수를 사용하는 경우에는 데이터 조회가 불가능하다.
SQL 명령어 종류
안전모드 해제(Workbench에서만) : SET SQL_SAFE_UPDATES=0;
. DDL - Data Definition Language (데이터 정의 언어)
. DML - Data Manipulation Language (데이터 조작 언어)
. DCL - Data Control Language (데이터 제어 언어)
DDL - 정의어
. CREATE : 데이터베이스내 개체 (테이블, 인덱스 제약조건, 프로시저, 펑션 등)을 생성 할 때
. DROP : 데이터베이스내 개체를 삭제할 때
. ALTER : 데이터베이스내 개체의 속성 및 정의를 변경할 때
. RENAME : 데이터베이스내 개체의 이름을 변경할 때
. TRUNCATE : 테이블 내 모든 데이터를 빠르게 삭제할 때
DML
. INSERT : 특정 테이블에 데이터를 신규로 삽입할때
. UPDATE : 특정 테이블에 데이터의 전체, 또는 일부를 갱신할때
. DELETE : 특정 테이블에 데이터의 전체, 또는 일부를 삭제할때
. SELECT : 특정 테이블에 데이터의 전체, 또는 일부를 획득할때
DCL
. GRANT : 데이터베이스 사용자에게 특정 작업의 수행 권한을 부여할 때
. REVOKE : 데이터베이스 사용자에게 부여된 수행 권한을 박탈할 때
. SET TRANSACTION : 트랜잭션 모드로 설정할 때
. BEGIN : 트랜잭션의 시작을 의미
. COMMIT : 트랜잭션을 실행할 때
. ROLLBACK : 트랜잭션을 취소할 때
. SAVEPOINT : 롤백 지점을 설정할 때
. LOCK : 테이블 자원을 점유할 때
댓글