Certificate/SQLD

[SQLD] SQL 기본 이론 정리

다닿 2023. 11. 8. 23:58

문장들의 종류

명령어의  종류 명령어 설명
데이터 조작어 DML
(Data Manipulation Language)
SELECT  
INSERT
UPDATE
DELETE
 
데이터 정의어 DDL
(Data Definition Language)
CREATE
ALTER
DROP
RENAME
 
데이터 제어어 DCL
(Data Control Language)
GRANT
REVOKE
 
트랜잭션 제어어 TCL
(Transaction Control Language)
COMMIT
ROLLBACK
 

 

제약조건의 종류

PRIMATY KEY 기본키

UNIQUE KEY 고유키

NOT NULL

CHECK

FOREIGN KEY 오래키

 

테이블 생성의 주의 사항

테이블명은 객체를 의미할 수 있는 적절한 이름을 사용한다. 가능한 단수형을 권고한다.

테이블 명은 다른 테이블의 이름과 중복되지 않아야 한다.

한 테이블 내에서는 칼럼명이 중복되게 지정될수 없다.

테이블 이름을 지정하고 각 칼럼들은 "()"로 붂어 지정한다.

각칼럼들은 ",'로 구분되고, 데이블 생성문의 끝은 항상 ";"로 끝난다.

칼럼에 대해서는 다른 테이블까지 고려하여 데이터베이스 내에서는 일관성 있게 사용하는 것이 좋다.

칼럼 뒤에 데이터유형은 꼭 지정되어야 한다.

테이블명과 칼럼명은 반드시 문자로 시작해야 하고, 벤더별로 길이에 대한 한계가 있다.

벤더에서 사전 정의한 예약어는 쓸 수 없다.

A-Z,a-z,0-9,_,$,#

 

테이블의 불필요한 칼럼 삭제

ALTER TABLE 테이블명 DROP DOLUMN 칼럼명

 

이름 수정

RENAME 테이블명 TO 변경할 테이블명

 

테이블에 데이터를 입력하는 두 가지 유형

INSERT INTO 테이블명 VALUES (값)

INSERT INTO 테이블명 VALUES (값들)

 

입력된 데이터의 수정

UPDATE 테이블명 SET 수정되어야할 칼럼명 = 수정될 값

 

테이블에 입력된 데이터 조회

SELECT [ALL/DISTINCT] 칼럼 FROM 테이블

ALL : 별도 지정 안해도 됨

DISTINCT : 중복빼줌

 

TRUNCATE TABLE 테이블

테이블 자체가 삭제되는 것이 아니고, 해당 테이블에 들어있던 모든 행들이 제거되고 저장공간을 재사용하능하도록 해제한다. 테이블 구조를 완정히 삭제하기 위해서는 DROP TABLE을 실행하면된다.

 

트랜잭션 특성 acid

원자성 - 트랜잭셩에서 정의돈 연산들은 모두 성공적으로 실행되던지 아니면 전혀 실행됮 않은 상태로 남아 있어야한다

일관성 - 트랜잭션이 실행되기 전의 데이터베이스 내용이 잘못 되어 있지 않다면 트랜잭션이 실행된 이후에도 잘못된 내용이 있으면 안된다

고립성 - 트랜잭션이 실행되는 도중에 다른 트랜잭션의 영향을 받아 잘못된 결과를 만들어서는 안된다

지속성 - 트랜잭션이 성공적으로 수행되면 그 트랜잭션이 갱신한 데이터 베이스의 내용은 영구적으로 저장된다

 

테이블 내 입력한 데이터나, 수정한 데이터 삭제한 데이터에 대하여 COMMIT 이전에는 변경 사항을 취소할 수 있는데 데이터베이스에서는 ROLLBACK 기능을 사용한다.

ROLLBACK은 데이터 변경 사항이 취소되어 데이터의 이전상태로 복구되며, 관련된 행에 대한 잠금이 풀리고 다른 사용자들이 데이터 변경을 할 수 있게 된다.