programing

기본, 고유 및 외부 키 제약 조건과 인덱스의 차이점은 무엇입니까?

newsource 2023. 7. 4. 21:57

기본, 고유 및 외부 키 제약 조건과 인덱스의 차이점은 무엇입니까?

사이의 차이점은 무엇입니까?primary,unique그리고.foreign key constraints,그리고.indexes?

는 업중작에서 .Oracle 10g그리고.SQL Server 2008

기본: null일 수 없는 모든 행을 고유하게 식별합니다.중복될 수 없습니다.

외부: 두 테이블 간의 관계를 만듭니다.null일 수 있습니다. 중복일 수 있습니다.

기본 키 및 고유 키는 엔티티 무결성 제약 조건입니다.

기본 키를 사용하면 테이블의 각 행을 고유하게 식별할 수 있으며 중복된 행이 존재하지 않고 null 값이 입력되지 않도록 합니다.

고유 키 제약 조건은 테이블 행 내에서 키 값의 중복을 방지하고 null 값을 허용하는 데 사용됩니다.(오라클에서 한 null은 다른 null과 같지 않습니다.)

  • KEY 또는 INDEX는 고유하지 않은 일반 인덱스를 나타냅니다.인덱스에 대한 고유하지 않은 값은 허용되므로 인덱스의 모든 열에 동일한 값을 가진 행이 포함될 수 있습니다.이러한 인덱스는 데이터에 구조를 적용하지 않으므로 쿼리 속도를 높이는 데만 사용됩니다.
  • UNIQUE는 인덱스의 모든 행이 고유해야 하는 인덱스를 말합니다.즉, 동일한 행이 이 인덱스의 모든 열에 대해 다른 행과 동일한 비 NULL 값을 가질 수 없습니다.데이터베이스 시스템은 데이터를 삽입하거나 업데이트할 때 이 고유한 값 규칙이 깨지는 것을 허용하지 않기 때문에 쿼리 속도를 높이는 데 사용될 뿐만 아니라 고유한 인덱스를 사용하여 데이터 구조를 적용할 수 있습니다.데이터베이스 시스템에서 NULL 값을 허용하는 열의 고유 인덱스를 허용할 수 있습니다. 이 경우 두 행 모두 NULL 값을 포함하는 경우 두 행이 동일하도록 허용됩니다( NULL은 응용 프로그램에 따라 바람직하지 않을 수 있습니다).
  • 주 인덱스는 항상 '주 인덱스'로 명명되고 테이블에 하나만 있을 수 있다는 점을 제외하고는 고유 인덱스와 동일하게 작동합니다(일부 데이터베이스 시스템에서는 이를 적용하지 않지만 항상 하나만 존재해야 함).주 인덱스는 테이블의 행을 고유하게 식별하는 방법으로 사용되므로 NULL 값을 허용하는 열에는 사용할 수 없습니다.주 인덱스는 항상 행을 고유하게 식별하기에 충분한 최소 수의 열에 있어야 합니다.종종 이 열은 고유한 자동 증분 번호가 포함된 하나의 열이지만 국가 목록에서 "국가 코드"와 같이 행을 고유하게 식별할 수 있는 다른 열이 있는 경우에는 해당 열을 대신 사용할 수 있습니다.
  • 전체 텍스트 색인은 위의 모든 색인과 다르며, 데이터베이스 시스템마다 그 동작이 더 다릅니다.일반적으로 b-tree(가장 왼쪽 열에서 시작하여 선택, 정렬 또는 범위 지정 가능) 또는 해시(가장 왼쪽 열에서 시작하여 선택 가능)인 위의 세 가지와 달리 FULLTEXT 인덱스는 MATCH() / AGONT() 절을 사용하여 수행된 전체 텍스트 검색에만 유용합니다.

MySQL에서 INDEX, PRIMARY, UNIKEY, FULLTEXT의 차이점을 확인하십시오.

다음은 귀하를 위한 몇 가지 참조 자료입니다.

기본 및 외부 키 제약 조건입니다.

기본 키: 기본 키는 테이블에서 레코드를 고유하게 식별하는 필드 또는 필드의 조합으로, 개별 레코드를 혼동 없이 찾을 수 있습니다.

외부 키: 외부 키(참조 키라고도 함)는 두 테이블을 함께 연결하는 데 사용되는 키입니다.일반적으로 한 테이블에서 기본 키 필드를 가져와 다른 테이블에 삽입하여 외부 키가 됩니다(원래 테이블의 기본 키는 그대로 유지됨).

그러나 인덱스는 일부 열에 적용할 수 있는 속성이므로 해당 열에서 수행되는 데이터 검색 속도를 높일 수 있습니다.

키/인덱스 : 키는 논리적 데이터베이스 설계의 한 측면이며 인덱스는 물리적 데이터베이스 설계의 한 측면입니다.키는 무결성 제약 조건에 해당하며 인덱스는 이러한 제약 조건을 적용할 때 유용하게 적용할 수 있는 값을 물리적으로 기록하는 기술입니다.

Primary/Foreign : "primary" 키는 값이 전체 테이블에서 고유한 조합을 형성해야 합니다.이러한 집합은 둘 이상일 수 있으며(> 1개의 키), "기본"이라는 단어는 디자이너가 여러 개의 키 중 하나를 "가장 중요한/관련된 키"로 선택하도록 강요받은 초기의 흔적입니다.그 이유는 주로 외부 키와 함께 사용되었기 때문입니다.

기본 키와 마찬가지로 "외부" 키도 속성 집합입니다.이러한 특성의 값은 참조된 테이블의 기존 기본 키 값인 조합을 형성해야 합니다.오늘날 SQL에서 이 규칙이 얼마나 엄격하게 적용되는지 정확히 모르겠습니다.어쨌든 용어는 남아 있습니다.

고유 : 인덱스가 중복 항목을 허용할 수 없음을 나타내는 데 사용되는 키워드입니다.고유 인덱스는 기본 키를 적용하는 데 탁월한 수단입니다.논리적 설계의 맥락에서 '독특한'이라는 단어가 사용될 정도로 불필요하고 엉성하며 불필요하고 혼란스럽습니다.키(기본 키)는 정의상 고유합니다.

A은(는) 관계 내에서 튜플을 고유하게 식별하는 하나 이상의 속성 집합입니다.

A은(는) 다른 관계 체계에서 튜플을 고유하게 식별할 수 있는 관계 체계의 속성 집합입니다.

  1. 기본 키는 테이블에서 행을 고유하게 식별하는 열 또는 열 집합입니다.기본 키는 짧고 안정적이며 단순해야 합니다.외부 키는 원래 테이블의 기본 키 값과 일치하는 값이 필요한 두 번째 테이블의 열(또는 열 집합)입니다.일반적으로 외부 키는 기본 키가 일치해야 하는 테이블과 다른 테이블에 있습니다.테이블에는 여러 개의 외부 키가 있을 수 있습니다.
  2. 기본 키는 null 값을 허용할 수 없습니다.외부 키는 여러 개를 허용할 수 있습니다.
  3. 테이블에는 기본 키를 하나만 사용할 수 있습니다.테이블에 둘 이상의 외래 키를 둘 수 있습니다.
  4. 기본적으로 기본 키는 클러스터된 인덱스이며 데이터베이스 테이블의 데이터는 클러스터된 인덱스의 순서로 물리적으로 구성됩니다.외부 키는 자동으로 인덱스, 클러스터 또는 비클러스터를 생성하지 않습니다.외부 키에 인덱스를 수동으로 생성할 수 있습니다.

기본 키는 주로 중복을 방지하고 열의 고유성을 표시합니다. 외부 키는 주로 두 테이블의 관계를 표시합니다.

언급URL : https://stackoverflow.com/questions/1692538/what-is-the-difference-between-primary-unique-and-foreign-key-constraints-and