>  기사  >  데이터 베이스  >  mysql 기본 키와 인덱스의 차이점은 무엇입니까

mysql 기본 키와 인덱스의 차이점은 무엇입니까

青灯夜游
青灯夜游원래의
2022-01-04 15:20:349310검색

차이점: 1. 기본 키는 테이블에 있는 행의 속성 또는 속성 그룹을 고유하게 식별하는 데 사용되는 반면, 인덱스는 특정 값이 있는 레코드를 빠르게 찾는 데 사용됩니다. 2. 테이블은 하나의 기본 키만 가질 수 있습니다. 그러나 여러 후보 인덱스를 가질 수 있습니다. 3. 기본 키 열은 null 값을 허용하지 않지만 인덱스 열은 null 값을 허용합니다. 4. 기본 키는 논리 키이고 인덱스는 물리적 키입니다.

mysql 기본 키와 인덱스의 차이점은 무엇입니까

이 튜토리얼의 운영 환경: windows7 시스템, mysql8 버전, Dell G3 컴퓨터.

관계형 데이터베이스는 데이터베이스 물리적 모델의 초석인 기본 키를 사용합니다. 기본 키에는 물리적 수준에서 두 가지 목적만 있습니다.

  • 행을 고유하게 식별합니다.

  • 외래 키로 효과적으로 참조할 수 있는 객체입니다.

기본 키는 테이블의 행을 고유하게 식별할 수 있는 속성 또는 속성 그룹입니다. 테이블에는 기본 키가 하나만 있을 수 있지만 후보 인덱스는 여러 개 있을 수 있습니다. 기본 키는 데이터 불일치를 방지하기 위해 외래 키와 함께 참조 무결성 제약 조건을 형성하는 경우가 많습니다. 기본 키를 사용하면 레코드가 고유하고 기본 키 필드가 비어 있지 않은지 확인할 수 있습니다. 데이터베이스 관리 시스템은 기본 키에 대한 고유 인덱스를 자동으로 생성하므로 기본 키도 특수 인덱스입니다.

Index는 특수 파일입니다(InnoDB 데이터 테이블의 인덱스는 테이블 공간의 구성 요소입니다). 여기에는 데이터 테이블의 모든 레코드에 대한 참조 포인터가 포함되어 있습니다. 색인은 특정 값을 가진 레코드를 빠르게 찾는 데 사용됩니다. 주로 검색의 편의와 액세스 속도를 높이기 위해 특정 규칙에 따라 생성되며 일반적으로 정렬 역할을 합니다.

다음은 기본 키와 인덱스 간의 몇 가지 차이점과 연결입니다.

1. 기본 키는 고유 인덱스여야 하며, 고유 인덱스가 반드시 기본 키일 필요는 없습니다.

기본 키는 테이블의 행을 고유하게 식별할 수 있는 속성 또는 속성 그룹입니다. 테이블은 기본 키를 하나만 가질 수 있지만 후보 인덱스는 여러 개 가질 수 있습니다. 기본 키는 레코드 행을 고유하게 식별할 수 있으므로 데이터를 업데이트하고 삭제할 때 오류가 발생하지 않도록 보장할 수 있습니다. 위의 기능 외에도 기본 키는 데이터 불일치를 방지하기 위해 외래 키와 참조 무결성 제약 조건을 형성하는 경우가 많습니다. 데이터베이스를 설계할 때 기본 키는 매우 중요한 역할을 합니다.

기본 키는 레코드가 고유하고 기본 키 필드가 비어 있지 않은지 확인할 수 있습니다. 데이터베이스 관리 시스템은 기본 키에 대한 고유 인덱스를 자동으로 생성하므로 기본 키도 특수 인덱스입니다.

2. 테이블에는 여러 개의 후보 인덱스가 있을 수 있지만 기본 키는 하나만 있을 수 있습니다.

3. 기본 키 열은 null 값을 허용하지 않지만 인덱스 열은 null 값을 허용합니다.

4. 인덱스는 쿼리 속도를 향상시킬 수 있습니다.

실제로는 기본키와 인덱스가 모두 키인데, 기본키는 논리키이고 인덱스는 물리키이기 때문에 기본키는 실제로 존재하지 않지만 인덱스는 실제로 데이터베이스에 존재한다는 의미입니다. 기본 키는 일반적으로 동일한 레코드에 대해 인덱스를 생성할 필요가 없지만 테이블을 쿼리해야 하는 경우 생성하는 것이 가장 좋습니다. 검색.

【관련 추천: mysql 비디오 튜토리얼

위 내용은 mysql 기본 키와 인덱스의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.