> 데이터 베이스 > MySQL 튜토리얼 > SQL Server의 여러 열에 고유 제약 조건을 적용하는 방법은 무엇입니까?

SQL Server의 여러 열에 고유 제약 조건을 적용하는 방법은 무엇입니까?

DDD
풀어 주다: 2025-01-24 23:51:11
원래의
389명이 탐색했습니다.

How to Enforce a Unique Constraint Across Multiple Columns in SQL Server?
여러 SQL 서버 열에서 고유성을 시행합니다

종종 데이터베이스 무결성은 여러 열 값을 기반으로 한 중복 행을 방지해야합니다. 이 기사는 테이블의

열을 가로 질러 고유 한 제약을 시행하는 방법을 보여줍니다.

고유 한 제약 조건을 구현 PersonNumber Active 기존 중복 항목을 제거한 후 다음 방법 중 하나를 사용하여 제약 조건을 적용하십시오. Person

문 : 이것은 기존 테이블에 제약 조건을 직접 추가합니다.

    진술 :
  • 이것은 고유 한 인덱스를 생성하여 독창성 제약을 암시 적으로 시행합니다.

    . ALTER TABLE

    대안 접근법 및 최적화
    <code class="language-sql">ALTER TABLE dbo.Person ADD CONSTRAINT uq_Person_NumberActive UNIQUE (PersonNumber, Active);</code>
    로그인 후 복사
  • 위의 방법은 효과적이지만 이러한 개선 사항을 고려하십시오
  • 성능 :

    CREATE UNIQUE INDEX

    <code class="language-sql">CREATE UNIQUE INDEX uq_Person_NumberActive ON dbo.Person (PersonNumber, Active);</code>
    로그인 후 복사
    insert를 시도하면 블록 내에서 예외를 피함으로써 삽입을 시도하면 성능이 향상 될 수 있습니다.
  • 트리거 :
an

트리거는 조건부 삽입 로직을 허용하여 응용 프로그램 계층으로 전파되는 것을 방지합니다. 이것은보다 강력한 오류 처리 메커니즘을 제공합니다 예시적인 예

이 예제는 행동의 고유 한 제약 조건을 보여줍니다

이것은 및 상태의 각 고유 한 조합에 대해 하나의 레코드 만 존재하도록합니다. 중복을 삽입하려는 시도는 오류가 발생합니다.

를 실제 스키마 및 테이블 이름으로 바꾸는 것을 잊지 마십시오.

    위 내용은 SQL Server의 여러 열에 고유 제약 조건을 적용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿