My SQL 의 몇 가지 개념

1. 메 인 키
메 인 키 는 유일 하 게 기록 할 수 있 는 속성 이나 속성 그룹 이다. 예 를 들 어 하나의 기록 은 신분증 번호, 이름, 나 이 를 포함한다.신분증 번 호 는 유일 하 게 당신 이라는 사람 을 확인 할 수 있 는 것 입 니 다. 다른 것 은 중복 이 있 을 수 있 기 때문에 신분증 번 호 는 메 인 키 입 니 다.하나의 시 계 는 하나의 메 인 키 만 있 을 수 있 지만 여러 개의 후보 색인 이 있 을 수 있 습 니 다.메 인 키 는 항상 외부 키 와 구성 되 어 완전 성 제약 을 참조 하여 데이터 가 일치 하지 않 는 것 을 방지 합 니 다.메 인 키 는 기 록 된 유일한 키 필드 와 비어 있 지 않 습 니 다. 데이터베이스 관리 시스템 은 메 인 키 에 대해 자동 으로 유일한 색인 을 생 성 할 수 있 기 때문에 메 인 키 도 특수 한 색인 입 니 다.
2. 외부 키
외부 키 (foreign key) 는 두 표 데이터 간 의 링크 를 만 들 고 강화 하 는 열 또는 여러 열 입 니 다.외부 키 제약 은 주로 두 표 사이 의 데이터 의 일치 성 을 유지 하 는 데 쓰 인 다.쉽게 말 하면 시계의 외 키 는 다른 시계의 메 인 키 이 고 외 키 는 두 시 계 를 연결 시킨다.일반적인 상황 에서 표 의 메 인 키 를 삭제 하려 면 먼저 다른 표 에 같은 키 가 없 는 지 확인 해 야 합 니 다. (즉, 이 표 의 메 인 키 는 외부 키 와 연결 되 어 있 지 않 습 니 다)
CREATE TABLE province(
  Id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCERMENT,
  Pname VARCHAR(20) NOT NULL
);
CREATE TABLE user(
  Id SMALLINT UNSIGNED PRIMIARY KEY AUTO_INCREMENT,
  Username VARCHAR(10)  NOT NULL,
  Pid SMALLINT UNSIGNED,
  FOREIGN KEY (pid) REFERENCES provinces (id)
);

user 는 표 에서 pid 는 외 키 이 고 province 메 인 표 의 id 는 메 인 키 이 며 외 키 를 통 해 메 인 표 와 의 관 계 를 찾 습 니 다.
외부 키 를 사용 하 는 요구: 메 인 시트 와 시계 에서 같은 저장 엔진 을 사용 해 야 합 니 다.데이터 시트 의 저장 엔진 은 InnoDB 일 수 있 습 니 다.외 키 열 과 참조 열 은 반드시 비슷 한 데이터 형식 을 가 져 야 하 며, 그 중에서 숫자의 길이 나 기호 가 있 는 지 없 는 지 는 반드시 같 아야 한다.문자 의 길 이 는 다 를 수 있다.외부 키 열 과 참조 열 은 색인 을 만들어 야 합 니 다.외부 키 열 에 색인 이 존재 하지 않 으 면 My SQL 은 자동 으로 색인 을 생 성 합 니 다.
[문제: 당신 의 데이터 베 이 스 는 어떤 엔진 을 저장 합 니까? 차 이 는?
정 답: 흔히 볼 수 있 는 것 은 MyISAM 과 InnoDB 다.
MyISAM: 외부 키 제약 은 지원 되 지 않 습 니 다. 트 랜 잭 션 은 지원 되 지 않 습 니 다. 데 이 터 를 대량으로 가 져 올 때 데 이 터 를 삽입 하면 서 색인 을 만 듭 니 다. 따라서 실행 효율 을 높이 기 위해 서 는 색인 을 사용 하지 않 고 완전히 가 져 온 후에 색인 을 열 어야 합 니 다.
InnoDB: 외부 키 제약 을 지원 하고 사 무 를 지원 합 니 다. 색인 은 모두 단독 처리 되 며 색인 을 참조 할 필요 가 없습니다. (이 부분 은 정리 해 야 합 니 다. 완료 되 지 않 았 습 니 다)]
3. 색인
색인 (index) 은 특정 값 을 가 진 기록 을 빠르게 찾 는 데 쓰 인 다.주로 검색 의 편 의 를 위해 방문 속 도 를 높이 고 일정한 규칙 에 따라 만 든 것 으로 정렬 역할 을 합 니 다.유일한 색인 이란 앞의 '일반 색인' 과 대체적으로 같 지만 하나의 차이 가 있 습 니 다. 색인 열의 모든 값 은 한 번 만 나타 날 수 있 습 니 다. 즉, 유일 해 야 합 니 다.
메 인 키 는 반드시 유일한 색인 일 것 입 니 다. 유일한 색인 이 반드시 메 인 키 는 아 닙 니 다.
하나의 표 에는 여러 개의 유일한 색인, 여러 개의 외부 키 가 있 을 수 있 지만, 하나의 메 인 키 만 있 을 수 있다.
주 키 열 은 빈 값 을 허용 하지 않 으 며, 유일한 색인 열 은 빈 값 을 허용 합 니 다.
홈 키 는 다른 필드 에서 외부 키 로 참조 할 수 있 으 며, 색인 은 외부 키 로 참조 할 수 없습니다.

좋은 웹페이지 즐겨찾기