SQL Database의 기본 키: 정의, 장점 및 선택 방법

게시 됨: 2021-05-25

목차

기본 키란 무엇입니까?

SQL로 새 데이터베이스를 설계하는 것은 모방할 수 없는 선택의 몫과 함께 제공됩니다. 적절한 기본 키를 식별하는 것은 가장 중요한 결정 중 하나입니다. 기본 키의 기본 목적은 간단하고 간단합니다.

기본 키는 두 갈래의 기본 역할을 합니다. 첫째, 관계를 정의하는 데 도움이 됩니다. 둘째, 이 관계를 구현하는 데 도움이 됩니다. 즉, 기본 키가 없으면 관계 데이터베이스가 존재하지 않습니다. 당연히 기본 키의 개념이 이상하게 들립니다.

그러나 일상 생활에서 자신도 모르게 기본 키를 사용하고 있다고 말하면 어떨까요? 우리는 깨어 있는 모든 순간에 데이터베이스 세계에서 말 그대로 기본 키로 둘러싸여 있지만 이를 당연하게 여깁니다. 예를 들어, 학생 ID를 고려하십시오. 기본 키의 필요성에 대한 고전적인 예입니다. 마찬가지로 직원마다 고유한 회사 코드가 있고 전 세계의 각 국가에는 고유한 이름과 코드가 있습니다.

읽기: SQL의 정규화

기본 키의 장점은 무엇입니까?

SQL에서 기본 키는 단일 값 또는 테이블의 몇 가지 값의 조합으로 정의됩니다. 테이블의 각 레코드를 명확하게 나타냅니다. 이 값에 대한 액세스는 동일한 레코드의 다른 값 외에도 테이블의 관련 레코드 배치에 대한 적시 액세스를 보장합니다. 이 시점에서 제기해야 할 중요한 질문이 있을 수 있습니다. 각 테이블에 기본 키를 생성해야 합니까? 절대적으로하지.

SQL은 기본 키 생성을 필요로 하지 않습니다. 그러나 데이터베이스 모델링의 가장 효율적이고 가장 좋은 방법은 SQL의 모든 테이블에 대한 기본 키를 만드는 것이 좋습니다. 기본 키의 장점은 테이블 간의 공통 링크 필드인 것 외에도 여러 가지가 있습니다.

아래 목록에는 기본 키의 주요 이점이 요약되어 있습니다.

  1. 기본 키가 인덱스 역할을 하기 때문에 레코드 정렬 및 검색과 같은 속도 기반 데이터베이스 작업이 더 빨라집니다.
  2. 기본 키는 특정 데이터베이스 테이블에서 고유한 행을 빠르게 식별하고 찾는 데 도움이 됩니다.
  3. 안전 모드에서는 업데이트 및 삭제가 대용량 데이터가 아닌 특정 행에만 영향을 미치도록 기본 키를 사용하여 특정 레코드만 고유하게 식별할 수 있습니다.
  4. 데이터베이스 내의 다른 테이블에서 외래 키로 사용될 때 참조 무결성을 유지하는 데 도움이 됩니다.

기본 키를 선택하는 방법은 무엇입니까?

테이블은 SQL 데이터베이스의 주요 개체를 구성합니다. 이러한 테이블은 데이터를 레코드 또는 행으로 저장합니다. 따라서 테이블의 각 행을 식별하려면 각 행에 대해 다른 입력 값을 가진 동일한 테이블의 열을 찾아야 합니다. 예를 들어, 모든 미국 시민에 대한 데이터가 포함된 테이블이 있다고 가정해 보겠습니다. 이름이 'social_security_number'인 열은 이러한 테이블에서 한 행을 다른 행과 구별하는 데 도움이 됩니다.

그와 비슷하게 다른 예를 살펴보겠습니다. 개인 은행에 저축 계좌 테이블이 있다고 가정합니다. 이름이 'account_number'인 열을 사용하여 이 테이블의 특정 행을 고유하게 식별할 수 있습니다.

이 두 예에서 테이블의 각 행, 즉 'social_security_number' 및 'account_number'에 대해 다른 값을 가진 열을 식별하면 기본 키를 생성할 수 있습니다. 이 기본 키는 식별한 특정 열을 기반으로 테이블의 모든 행에 대한 기본 식별자가 됩니다.

따라서 예제 데이터베이스 디자인의 표시는 SQL의 기본 키입니다. 따라서 선택된 기본 키가 100% 고유해야 하고 데이터의 각 행에 대해 기본 키의 고유 값이 있어야 함은 두말할 나위가 없습니다. 일반적으로 개인은 고유 식별자를 생성하기 위해 데이터베이스 관리 시스템 자체에 의존하는 경향이 있습니다.

강력한 기본 키의 특성은 다음과 같습니다.

  1. 강력한 기본 키는 일반적으로 길이가 짧고 컴팩트하며 가능한 가장 적은 속성을 포함합니다. 긴 데이터 유형과 복합 키는 SQL에 복잡성을 더합니다. 기본 키 길이는 900바이트를 초과할 수 없습니다.
  2. 완전히 숫자로 된 기본 키는 쿼리 성능을 향상시키는 데 도움이 됩니다.
  3. 특수 문자나 대문자와 소문자의 조합을 사용하지 마십시오. SQL이 숫자 값보다 문자열 값을 비교하는 데 훨씬 더 오래 걸리므로 텍스트 데이터 유형을 사용하지 마십시오.
  4. 우편번호, 이메일 주소 및 주민등록번호와 같이 동일한 행의 키가 아닌 열에서 식별 가능한 정보를 피하십시오. 기본 키가 실제 데이터를 기반으로 하는 경우 미래의 어느 시점에서 변경해야 할 수 있으며 이는 권장하지 않는 모델링 방식입니다. 기본 키가 임의의 식별자인 경우 사용자에게 표시되는 데이터는 나중에 변경될 수 있지만 식별자는 변경할 필요가 없습니다.
  5. 기본 키 값은 안정적으로 유지되어야 하며 수정되지 않아야 합니다.

기본 키는 모든 행이 기본 키 열에 비어 있지 않은 고유한 값을 갖도록 하는 기술적 메커니즘을 사용한다는 점에 유의해야 합니다. 이는 레코드의 기본 키 값이 null일 수 없음을 의미합니다. 또한 기본 키 열에서 중복 항목을 찾을 수 있는 값으로 새 항목을 삽입하려고 한다고 가정합니다. 이 경우 새 행의 삽입은 기본 키에 의해 거부됩니다.

확인: SQL 프로젝트 아이디어 및 주제

하나 이상의 열이 있는 기본 키

어떤 경우에는 자연적인 1열 기본 키가 존재하지 않습니다. 여러 열을 사용하여 기본 키를 정의하는 경우 이를 다중 열 또는 복합 기본 키라고 합니다. 예를 들어 'customer_name', 'reservation_day', 'reservation_time' 및 'number_of_people' 열이 있는 'reservation' 테이블이 있다고 가정해 보겠습니다.

여기서 'customer_name'은 기본 키로 사용할 수 없습니다. 왜냐하면 고객은 당연히 다른 날 또는 같은 날에 두 개 이상의 예약을 가질 수 있기 때문입니다. 따라서 기본 키에 'reservation_day' 및 'reservation_time'을 추가하여 각 값에 대해 고유한 조합을 만듭니다.

이 고려 사항은 32개 열을 초과하지 않아야 합니다. 열 수가 많을수록 저장 공간 요구 사항도 커집니다. 다중 열 기본 키를 추가하는 구문은 단일 열 기본 키를 추가하는 것과 다릅니다.

세계 최고의 대학에서 온라인으로 소프트웨어 엔지니어링 과정을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.

합산

고객센터에 전화를 걸어 고객번호를 물어본 적이 있습니까? 우편번호나 전화번호를 물어볼 때 잊어버렸을 수도 있습니다.

이유가 궁금하신가요? 짧은 대답은 기본 키입니다. 긴 대답은 기본 키의 장점이 모든 데이터베이스 시스템의 시작점이라는 것입니다. 기본 키가 없으면 데이터베이스가 현재 작동하는 것처럼 작동하지 않거나 정확하게는 전혀 작동하지 않습니다.

SQL, 전체 스택 개발에 대해 자세히 알아보려면 작업 전문가를 위해 만들어졌으며 10개 이상의 사례 연구 및 프로젝트, 실용적인 실습 워크샵, 업계 전문가와의 멘토링, 업계 멘토와의 1:1 학습, 일류 기업과의 400시간 이상의 학습 및 취업 지원.

SQL의 기본 키는 무엇입니까?

기본 키는 엔터티의 ID를 정의하는 데 사용되는 고유 값이 있는 필드입니다. 기본 키는 일단 정의되면 삭제하거나 수정할 수 없습니다. 사실 프라이머리 키는 테이블의 특별한 특성으로 테이블 관계의 기초가 됩니다. 기본 키는 항상 테이블의 첫 번째 열에 정의되며 변경할 수 없습니다. 데이터의 논리적 및 물리적 레코드 구조에서 매우 중요한 역할을 합니다. 기본 키는 레코드를 고유하게 식별하는 데 사용되므로 후보 키라고 합니다.

SQL에서 기본 키의 특성은 무엇입니까?

기본 키는 테이블의 각 레코드를 고유하게 식별하는 열 또는 열 그룹입니다. 테이블에는 하나의 기본 키만 있을 수 있습니다. 무결성을 유지하려면 기본 키가 항상 필요합니다. 기본 키는 서로 다른 열의 조합으로 구성되어야 합니다. 기본 키가 단 하나의 열로 구성된 경우 이를 단순 기본 키라고 합니다. 데이터베이스 엔진은 기본 키를 사용하여 데이터베이스에서 레코드를 찾고 업데이트합니다. Null은 정의되지 않았거나 알 수 없음을 의미하므로 기본 키는 Null일 수 없습니다. 기본 키는 단일 열 또는 다중 열일 수 있습니다. 기본 키 값은 고유하거나 고유하지 않을 수 있습니다. 기본 키에는 인덱싱할 수 있는 기능이 있습니다. 기본 키는 데이터베이스 엔진이 테이블 무결성을 유지하는 데 도움이 됩니다. 기본 키는 데이터베이스에서 쉽게 식별할 수 있습니다.

SQL에서 기본 키를 선택하는 방법은 무엇입니까?

기본 키는 테이블에서 가장 중요한 열입니다. 앱에서 각 레코드를 고유하게 식별하는 데 사용하는 ID입니다. 기본 키로 선택한 필드는 고유해야 하며 null이 아니어야 합니다. 기본 키는 일반적으로 인덱싱에 가장 적합한 후보 열입니다. 기본 키는 다음 용도로 사용됩니다. 테이블의 각 레코드에 대한 고유 참조 데이터가 이미 있는 레코드의 ID를 조회하여 각 행에 기본 키의 유효한 값이 있는지 확인합니다. 테이블의 데이터가 유효하고 일관성 있게 유지되도록 하려면 모든 기본 키 값이 고유하고 기본 키 값이 null이 아닌지 확인하십시오.