Computer Science/Etc

[DB] SQL에 대한 내용 간단한 정리

TwinParadox 2018. 12. 25. 12:34
728x90

SQL

SEQUEL(Structured English Query Language)

최초의 RDBMS인 SystemR을 위한 DB 언어로 개발되었음.

1986년 ANSI에서 관계형 DB의 표준언어로 인증.



SQL은 데이터 정의(DDL)/조작(DML)/제어(DCL)하는 종합 DB언어

관계 대수식에 비해 키보드로 표기하기 쉬움



관계 대수식(Relational Algebra)와 SQL의 차이


- 관계대수식

Relation

튜플의 집합

결과 중복 불허


- SQL

튜플의 백(Bag)

튜플 간의 순서는 없고, 결과 중복 허용



관계 대수식이 중복을 불허하면서, 결과에 대해 항상 중복 내용을 제거하는 작업이 발생하여, 결과를 내는데 시간이 오래 걸리는 성능 문제가 발생함.




기본 구문


DDL : 데이터 정의

  • CREATE

CREATE TABLE 테이블명

( 속성명 속성타입 [제약조건],

속성명 속성타입,

... )

제약조건 : NOT NULL, PRIMARY KEY, UNIQUE



  • DROP

DROP TABLE 테이블명



  • ALTER

ALTER TABLE 테이블명(ADD 속성명 속성타입)

ALTER TABLE 테이블명(DROP 속성명 속성타입)

ATLER TABLE 테이블명(ALTER 속성명 속성타입)




DML : 데이터 조작

  • INSERT

INSERT INTO 테이블명(속성명, 속성명, ...)

VALUES (속성값, 속성값, ...)



  • UPDATE

UPDATE 테이블명

SET 속성명= 수식

[WHERE 조건]



  • DELETE

DELETE FROM 테이블명

[WHERE 조건]



  • SELECT

SELECT 속성명, 속성명, ...

FROM 테이블명

[WHERE  조건]




DCL : 데이터 제어

  • 트랜젝션(COMMIT, ROLLBACK)
  • 사용자 권한 제어(GRANT, REVOKE, DENY)


728x90