1. 데이터 유형
- 데이터베이스의 테이블에 특정 자료를 입력할 때, 그 자료를 받아들일 공간을 자료의 유형별로 나누는 기준
- 자주 쓰이는 데이터 유형
- CHAR vs VARCHAR
- VARCHAR 유형은 가변 길이이므로 필요한 영역은 실제 데이터 크기뿐이다.
그렇기 때문에 길이가 다양한 칼럼과, 정의된 길이와 실제 데이터 길이에 차이가 있는 칼럼에 적합하다.
저장 측면에서도 CHAR 유형보다 작은 영역에 저장할 수 있으므로 장점이 있다. - 문자열의 비교 방법
- CHAR에서는 문자열을 비교할 때 공백(BLANK)을 채워서 비교
- VARCHAR 유형에서는 맨 처음부터 한 문자씩 비교하고 공백도 하나의 문자로 취급하므로 끝의 공백이 다르면 다른 문자로 판단
- CHAR 유형 : 'AA' = 'AA '
- VARCHAR 유형 : 'AA' ≠ 'AA '
- VARCHAR 유형은 가변 길이이므로 필요한 영역은 실제 데이터 크기뿐이다.
2. CREATE TABLE
- 테이블 및 칼럼 생성 명령어
- 테이블 및 칼럼 명명 규칙
- 테이블명은 객체를 의미할 수 있는 적절한 이름을 사용하고 가능한 단수형을 권고함
- 테이블 명은 다른 테이블의 이름과 중복되지 않아야 함
- 한 테이블 내에서는 칼럼명이 중복되게 지정될 수 없음
- 각 칼럼들은 콤마 ","로 구분되고, 테이블 생성문의 끝은 항상 세미클론 ";"으로 끝남
- 칼럼 뒤에 데이터 유형은 꼭 지정되어야 함
- 테이블명과 칼럼명은 반드시 문자로 시작해야 하고, 벤더별로 길이에 대한 한계가 있음
- 예약어는 쓸 수 없고 A-Z, a-z, 0-9, _, $, # 문자만 허용함
- 제약조건
- NULL 의미
- NULL은 공백이나 숫자 0과는 전혀 다른 값이며, 조건에 맞는 데이터가 없을 때의 공집합과도 다르다.
- 'NULL'은 '아직 정의되지 않은 미지의 값'이거나 '현재 데이터를 입력하지 못하는 경우'를 의미한다. - DEFAULT 의미
- 데이터 입력 시에 칼럼의 값이 지정되어 있지 않을 경우 기본값(DEFAULT)을 사전에 설정할 수 있다.
- 데이터 입력시 명시된 값을 지정하지 않은 경우 NULL 값이 입력된다.
- DEFAULT 값을 정의했다면 해당 칼럼에 NULL값이 입력되지 않고 사전에 정의된 기본값이 입력된다.
- NULL 의미
- 생성된 테이블 구조 확인
- Oracle의 경우 "DESCRIBE 테이블명;"
- SQL Server의 경우 "sp_help 'dbo.테이블명'" - 예시
- SELECT 문장을 통한 테이블 생성(복사)
3. ALTER TABLE
- 테이블 칼럼 관련 변경 명령어
- 칼럼 추가
- 마지막 칼럼으로 추가됨(칼럼 위치 지정 불가)
- 칼럼 삭제
- 삭제 후 복구 불가
- 칼럼 설정 변경
- NULL만 있거나 행이 없는 경우에만 칼럼의 크기 축소 가능
- NULL만 있을 때는 데이터 유형도 변경 가능
- NULL이 없으면 NOT NULL 제약조건 추가 가능
- 기본값 변경 작업 이후 발생하는 데이터에 대해서만 기본값이 변경됨 - 칼럼명 변경
- 제약조건 추가
- 제약조건 제거
4. RENAME TABLE
- 테이블명 변경
5. DROP TABLE
- 테이블의 데이터화 구조 삭제, 복구 불가
- CASCADE CONSTRAINT 옵션으로 관련 테이블의 참조 제약조건도 삭제하여 참조 무결성을 준수할 수 있음
6. TRUNCATE TABLE
- 테이블의 전체 데이터 삭제(↔ DROP TABLE은 테이블 자체를 제거함 )
- 로그를 기록하지 않기 때문에 ROLLBACK 불가
'SQLD > 2과목 SQL 기본 및 활용' 카테고리의 다른 글
[SQLD]Ⅱ- 1장 SQL 기본 - 6절 함수(FUNCTION) (0) | 2022.04.07 |
---|---|
[SQLD]Ⅱ- 1장 SQL 기본 - 5절 WHERE 절 (0) | 2022.04.06 |
[SQLD]Ⅱ- 1장 SQL 기본 - 4절 TCL(TRANSACTION CONTROL LANGUAGE) (0) | 2022.04.01 |
[SQLD]Ⅱ- 1장 SQL 기본 - 3절 DML(DATA MANIPULATION LANGUAGE) (0) | 2022.03.31 |
[SQLD]Ⅱ- 1장 SQL 기본 - 1절 관계형 데이터베이스 개요 (0) | 2022.03.29 |