티스토리 뷰

[한빛아카데미] 오라클로 배우는 데이터베이스 개론과 실습 책으로 학습한 내용을 정리한 것입니다.

 

* SQL(Structured Query Language)

- 데이터 부속어(Data Sublanguage)라고 있는데, 데이터베이스의 데이터와 메타 데이터를 생성하고 처리하는 문법만 가짐

구분 SQL 일반 프로그래밍 언어
용도 데이터베이스에서 데이터를 추출하여 문제 해결 모든 문제 해결
입출력 입력은 테이블, 출력도 테이블 모든 형태의 입출력 가능
번역 DBMS 컴파일러
문법 SELECT * 
FROM Book;
int main() {
   . . .
}

 

 

* 데이터 조작어(DML, Data Manipulation Language)

- 테이블에 데이터를 검색, 삽입, 수정, 삭제하는데 사용하며 SELECT, INSERT, DELETE, UPDATE문 등이 있음

 

[SELECT 문]

SELECT
	[ALL | DISTINCT]
    [테이블이름.]{*|속성이름 [[AS] 속성이름별칭]}
[FROM
	{테이블이름 [AS 테이블이름별칭]}
    [INNER JOIN | LEFT [OUTER] JOIN | RIGHT [OUTER] JOIN
    {테이블이름 [ON 검색조건]}
    | FULL [OUTER] JOIN {테이블이름}]]
[WHERE 검색조건(들)] 
[GROUP BY {속성이름, [..., n]}]
[HAVING 검색조건(들)]
[질의 UNION 질의 | 질의 UNION ALL 질의]
[ORDER BY {속성이름 [ASC | DESC],[..., n]}]
---------------------------------------------------------------------
[] : 대괄호 안의 SQL 예약어들은 선택적으로 사용함
{} : 중괄호 안의 SQL 예약어들은 필수적으로 사용함
| : 선택 가능한 문법들 중 한 개를 사용할 수 있음

 

[WHERE 조건]

출처 : https://mangkyu.tistory.com/24

 

[집계 함수의 종류]

출처 : https://mangkyu.tistory.com/24

 

[INSERT 문]

INSERT INTO 테이블이름[(속성리스트)]
	VALUES (값리스트);

 

[UPDATE 문]

UPDATE 테이블이름
SET	속성이름1=값1[, 속성이름2=값2, ...]
[WHERE <검색조간>];

 

[DELETE 문]

DELETE FROM 테이블이름
[WHERE 검색조건];

 

 

* 데이터 정의어(DDL, Data Definition Language)

- 데이터를 저장할 테이블의 구조를 만들 때 사용하는 명령어

 

[CREATE 문] 

CREATE TABLE 테이블이름
	(	{속성이름 데이터타입
    	[NULL | NOT NULL | UNIQUE | DEFAULT 기본값 | CHECK 체크조건]
        }
        [PRIMARY KEY 속성이름(들)]
        {FOREIGN KEY 속성이름 REFERENCES 테이블이름(속성이름)]
        	[ON DELETE {CASCADE | SET NULL}]
        }
    )

 

* 속성의 데이터 타입 종류

데이터 타입 설명 ANSI SQL 표전 타입
NUMBER(p,s) 실수형 p자리 정수 부분/s자리 소수 부분, p와 s를 생략하여 NUMBER라고 쓰면 NUMBER(8, 2)로 저장됨 DECIMAL(p,s)
NUMBER[(p,s)]
INTEGER, INT
SMALLINT
CHAR(n) 문자형 고정 길이, 문자를 저장하고 남은 공간은 공백으로 채움 CHARACTER(n)
CHAR(n)
VARCHAR2(n) 문자형 가변 길이, 4000Byte까지 저장됨 CHARACTER VARYING(n)
CHAR VARYING(n)
DATE 날짜형 연도/월/날/시간을 저장함  

 

[ALTER 문]

ALTER TABLE 테이블이름
	[ADD 속성이르 데이터타입]
    [DROP COLUMN 속성이름]
    [MODIFY 속성이름 데이터타입]
    [MODIFY 속성이름 데이터타입 [NULL | NOT NULL]]
    [ADD PRIMARY KEY(속성이름)]
    [[ADD | DROP] 제약이름]

 

[DROP 문]

DROP TABLE 테이블이름

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/06   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
글 보관함