- 이 키를 이용해서 조회할때 자동으로 클러스터 인덱스(저장순서대로 만들어지는 인덱스 - 하나만생성) 를 생성합니다.
- 이 키를 이용하면 조회할때 가장 속도가 빠릅니다.
- 설정하는 것은 중요한 작업중의 하나입니다.
- NOT NULL이고 UNIQUE
- 중복 값을 가질수 없도록 하는 제약조건
- NULL 을 허용
- 인덱스를 생성하는데 PRIMARY KEY 가 없으면 UNIQUE 가 클러스터 인덱스가 되고 PRIMARY KEY가 있으면 보조 인덱스가 됩니다.
+PRIMARY KEY 와 더불어 다른 테이블에서의 FOREIGN KEY가 될수 있습니다.- 시험에서는 PRIMARY KEY만 FOREIGN KEY 가 될 수있다고 합니다.
desc tCity; #구조 확인
SELECT *from tCity;# 값 확
- Manual: 사용자가 직접 COMMIT 과 ROLLBACK을 하도록 하는 모드
- AUTO: 하나의 명령어가 성공적으로 수행되면 자동으로 COMMIT을 하는 모드
프로그래밍 언어에서 데이터베이스를 연결하거나 접속 도구 등에서 데이터베이스 서버에 접속해서 작업을 수행하는 경우 Auto로 설정하는 경우가 있습니다.
- Shared LOCK:공유가능한LOCK
- Exclusive: 공유가 불가능하다
- 읽기작업을 할때는 Shared LOCK 이 설정되고 그 이외의 작업을 할 때 는 Exclusive LOCK이 걸리게 되는데 이 경우는 트랜잭션이 종료되어야만 LOCK이 해제됩니다.
TRANSACTION MOODE를 Manunal 로 사용하는 경우 하나의 컴퓨터에서 DML 작업을 수행하고 COMMIT이나 ROLLBACK을 하지 않은 상태에서 다른 컴퓨터에서 SELECT를 하는 것은 아무런 문제가 없지만 DML작업이나 DDL작업을수행하는 것은 안되는데 무한 루프에서 빠지게 됩니다.
LOCK의 기본 단위는 테이블
- view는 테이블처럼 사용할수 있기 때문에 읽기와 쓰기 작업이 모두 가능
- WITH CHECK OPTION은 뷰를 만들 때 사용한 조건과 일치하는 데이터만 수정하거나 삭제 또는 삽입 할수 있도록 해주는 옵션
- WITH READ ONLY는 쓰기를 못하게 하는 옵션
뷰는 테이블과 동등한 권한을 가진다.
뷰는 테이블처럼 사용가능함, SQL을 가지고 있는것이지 실제 데이터를 가지고 있는 것이 아님
원본 테이블에 삽입 되는것
- 뷰에 삽입이나 수정이나 삭제 갱신 이벤트가 발생할때는 원본이 변하는것
sql은 비절차적(작성한 순서대로 동작하지 않는다.)
- select from 이렇게 작성하지만 실제 수행 순서는 FROM -> SELECT가 수행됨
- SELECT - DML - TCL -DDL -백업 및 복구 -테이블 이외의 개체- 최적화 - DCL
- 모델링이 가장중요