# 데이터타입
1. 숫자타입
- 정수 : tinyint, smallint, mediumint, [int(기본형)], [bigint] ..
- 소수 : float, [double(기본형)]
- number : 자동증가값 / number(4) : 4byte 길이형 증가값 / number(4, 2) : 정수가 앞에 4자리 소수가 뒤에 2자리 고정길이 값
2. 문자열 타입
- 텍스트 : char, [varchar(기본형)], varchar2(문자열), [text]
예)
char(5) : 5byte 데이터 저장, 단 1byte만 저장하더라도 5byte 할당 (낭비적)
varchar(5) : 5byte 데이터 저장, 단 1byte만 저장하면 공간을 1byte 줄여 할당 (유동적)
- 바이너리 : binary, varbinary
- 열거 : ENUM(보기중 하나만 선택가능 보기이외는 선택불가)
ex)
ENUM('남자','여자')
3.날짜와 시간타입
- 날짜 : date
- 날짜와 시간 : datetime, timestamp(1970년 1월 1일 0시0분0초 ~ 2038년 1월 19일 3시14분07초)
# 제약 조건
데이터의 무결성을 지키기 위해 데이터를 입력받을 때 실행하는 검사 규칙입니다.
1. NOT NULL
- 해당 필드에 NULL 값을 저장할 수 없습니다. 무조건들어가야한다.
2. UNIQUE
- 해당 필드는 서로 다른 값을 가져야 합니다. 중복된 값을 저장할 수 없습니다. 단, NULL 값은 저장할 수 있습니다.
3. DEFALUT
- 해당 필드의 기본값을 설정합니다. NULL값을 대체한다.
4. AUTO_INCREMENT
- 해당 필드는 자동으로 숫자가 증가되어 추가됩니다. 따라서 직접 데이터를 추가할 수 없습니다.(자동증가값/필드구별할때 장점)
5.PRIMARY KEY(기본키)
- 해당 필드는 UNIQUE 제약과 NOT NULL 제약의 특징을 모두 가집니다.
- 데이터를 쉽고 빠르게 찾도록 도와주는 역할을 합니다.(INDEX기능)
- 테이블에 단 하나의 필드에만 설정할 수 있습니다.
- 외래키가 참조할 수 있도록 만듭니다.
6. FOREIGN KEY(외래키, 참조키)
- 다른 테이블과 연결해주는 역할을 합니다. 기준이 되는 테이블의 내용을 참조해서 레코드가 입력됩니다.
- 다른 테이블에 의존하는 필드가 됩니다.
- 기본키를 참조합니다.
# 색인 (index) (- Oracle)
조회 속도의 향상을 위해 오라클에서 제공하는 색인 기술을 의미합니다. 테이블에 index를 생성하게 되면, index table을 생성해 index들을 관리합니다. 조회 성능은 향상되지만 insert, update, delete 시에는 index 테이블의 데이터도 갱신 되기 때문에 속도가 저하됩니다.
● 색인 만들기
create index 제약조건이름 on 테이블(컬럼명, 컬럼명 .. )
create index userid_idx on tb_user(userid);
● 인덱싱 테이블 조회
select * from USER_INDEXES where table_name = 'TB_USER';
● 색인 삭제
drop index 제약조건이름;
drop index userid_idx;
'🌏 DataBase > MySQL' 카테고리의 다른 글
[DB] 6. 기본 문법(INSERT/UPDATE/DELETE/SELECT) (0) | 2020.10.11 |
---|---|
[DB] 5. 연산자 (0) | 2020.10.11 |
[DB] 4. 테이블(Table) (0) | 2020.10.11 |
[DB] 2. 관계형 데이터베이스(RDBMS) (0) | 2020.10.11 |
[DB] 1. 데이터베이스(DataBase) 특징 및 기본 문법(CREATE/ALTER/DROP) (0) | 2020.07.01 |