[주요 SQL 데이터 유형과 그에 해당하는 키워를 정리한 표]
데이터 유형 | 키워드 | 설명 |
문자열 | VARCHAR(n) | 가변 길이 문자열, 최대 n 글자까지 저장 가능 |
CHAR(n) | 고정 길이 문자열, 길이가 부족할 경우 공백으로 채움 | |
TEXT | 매우 긴 문자열, 길이 제한 없음 | |
숫자 | INT | 정수 |
BIGINT | 아주 큰 정수 | |
SMALLINT | 작은 범위의 정수 | |
DECIMAL(p, s) | 소수점이 있는 숫자, p는 전체 자릿수, s는 소수점 이하 자릿수 | |
FLOAT | 부동 소수점 숫자 | |
날짜와 시간 | DATE | 날짜 (YYYY-MM-DD 형식) |
TIME | 시간 (HH:MM:SS 형식) | |
DATETIME | 날짜와 시간 (YYYY-MM-DD HH:MM:SS 형식) | |
TIMESTAMP | 날짜와 시간, 자동으로 현재 시간 기록 가능 | |
논리형 | BOOLEAN | 참(true) 또는 거짓(false) |
이진 데이터 | BLOB | 바이너리 대형 객체, 이미지, 동영상, 소리 파일 등 저장 |
[정의]
💡CREATE란?💡
데이터베이스에서 새로운 테이블이나 다른 객체(예: 데이터베이스, 뷰, 인덱스 등)를 처음으로 만드는 명령어이다.
[형식]
초급 레벨
CREATE 테이블명 (
컬럼1 데이터 타입(size),
컬럼2 데이터 타입(size),
...
);
중급 레벨
CREATE 테이블명 (
컬럼1 데이터 타입(size) NOT NULL,
컬럼2 데이터 타입(size) DEFAULT'기본값',
...
);
- NOT NULL
- 이 컬럼은 절대 빈 값일 수 없다는 의미이다.
- 학교 학생 테이블을 만들 때 학번같은 꼭 있어야하는 데이터를 저장할 때 사용한다.
- DEFAULT'기본값'
- 열의 값이 지정되지 않았을 때 자동으로 들어가는 값을 설정하는 것
- 즉, 새로운 데이터가 들어오면 해당 부분은 자동으로 기본 값이 들어가는 것이다.
고급 레벨
CREATE 테이블명 (
컬럼1 데이터 타입(size) NOT NULL,
컬럼2 데이터 타입(size) DEFAULT'기본값',
...
);
CONSTRAINT PK명 PRIMARY KEY (PK컬럼명);
COMMENT ON TABLE 테이블명 IS'나의테이블';
COMMENT ON COLUMN 테이블명.컬럼1 IS'코멘트';
-- [활용 예시]
CONSTRAINT pk_student_id PRIMARY KEY (학번);
COMMENT ON TABLE student IS '우리 반 학생들 정보';
COMMENT ON COLUMN student.이름 IS '학생 이름';
- CONSTRAINT PK명 PRIMARY KEY (PK컬럼명);
- 기능: 이 열을 테이블에서 가장 중요한 값으로 설정 해준다.
- 예시: 학번을 기본 키로 설정해서, 같은 학번이 중복되지 않게 해준다.
- COMMENT ON TABLE 테이블명 IS'나의테이블';
- 기능: 테이블에 대한 설명을 추가해준다.
- 예시: 학생 명단이라는 테이블에 "우리 반 학생들 정보"라는 설명을 달아준다.
- COMMENT ON COLUMN 테이블명.컬럼1 IS'코멘트';
- 기능: 특정 열에 설명을 추가해준다.
- 예시: 이름이라는 열에 "학생 이름"이라는 설명을 달아준다.