데이터베이스 설계(스키마 설계)
물리명(실제 테이블 이름, 열 이름)과 논리명(설계상의 이름)
자료형(check 제약으로 조건에 맞는 값만 허용가능)
큰 데이터는 lob지정(인덱스가 안된다)
ER다이어그램
기본키가 되는 열부터 상단 열 이름은 논리명
연계(릴레이션십) 외래키와 다른 테이블 기본키 연결
정규화
제1정규형 : 반복되는 데이터를 줄이기 위해 테이블 추가 생성
테이블 분할과 기본키 지정
제2정규형 : 부분 함수 종속성을 찾아내 테이블 분할
함수종속성은 키 값을 이용해 데이터를 특정지을수 있는 것
제3정규형 : 중복되는 항목이 있을 경우 기본키 생성하고 분할
제5정규형까지 있지만 대부분 제3정규형까지 채택
목적 : 하나의 데이터가 한 곳에만 존재하도록 해 관리 편이
트랜잭션
start transaction;
insert into ..
...
commit; commit하기전에 rollback;하면 트랜잭션 이후의 명령 롤백됨
sql server postgresql은 begin transaction
oracle이나 db2에는 transaction 없다고 하지만 oracle에는 존재한다
sqlplus로 확인해 보았고 start transaction을 사용한다
'개발정보 > DB' 카테고리의 다른 글
SQL 첫걸음 7장 복수 테이블 제어 (0) | 2019.01.28 |
---|---|
SQL 첫걸음 6장 생성과 삭제 (0) | 2019.01.28 |
SQL 첫걸음 5장 집계와 서브쿼리 (0) | 2019.01.28 |
SQL 첫걸음 4장 추가,삭제,갱신 (0) | 2019.01.27 |
SQL 첫걸음 3장 정렬과 연산 (0) | 2019.01.27 |