복붙노트

[SQL] SQL Server 2005는 어떻게 고유 제한 조건을 만들기?

SQL

SQL Server 2005는 어떻게 고유 제한 조건을 만들기?

어떻게 2005 SQL Server의 기존 테이블에 고유 제한 조건을 만들려면 어떻게해야합니까?

나는 SQL 방법 데이터베이스 다이어그램에서 작업을 수행하는 두 찾고 있습니다.

해결법

  1. ==============================

    1.SQL 명령은 다음과 같습니다

    SQL 명령은 다음과 같습니다

    ALTER TABLE <tablename> ADD CONSTRAINT
                <constraintname> UNIQUE NONCLUSTERED
        (
                    <columnname>
        )
    

    여기에 전체 구문을 참조하십시오.

    당신은 데이터베이스 다이어그램에서 작업을 수행하려는 경우 :

  2. ==============================

    2.SQL Server 관리 Studio Express에서 :

    SQL Server 관리 Studio Express에서 :

  3. ==============================

    3.

    ALTER TABLE [TableName] ADD CONSTRAINT  [constraintName] UNIQUE ([columns])
    
  4. ==============================

    4.경고 : 하나의 널 (null) 행은 고유하게 설정 한 컬럼에있을 수 있습니다.

    경고 : 하나의 널 (null) 행은 고유하게 설정 한 컬럼에있을 수 있습니다.

    당신은 SQL 2008에서 필터링 된 인덱스로이 작업을 수행 할 수 있습니다

    CREATE UNIQUE NONCLUSTERED INDEX idx_col1
    ON dbo.MyTable(col1)
    WHERE col1 IS NOT NULL;
    

    이 답변의 범위에 대한 NULL이 아닌 참조 필드 값은 고유해야합니다.

  5. ==============================

    5.

    ALTER TABLE dbo.<tablename> ADD CONSTRAINT
                <namingconventionconstraint> UNIQUE NONCLUSTERED
        (
                    <columnname>
        ) ON [PRIMARY]
    
  6. ==============================

    6.또한 데이터베이스 다이어그램을 통해이 작업을 수행 할 수 있습니다 발견했다.

    또한 데이터베이스 다이어그램을 통해이 작업을 수행 할 수 있습니다 발견했다.

    마우스 오른쪽 버튼으로 클릭하여 테이블 및 선택 인덱스 / 키 ...

    '추가'버튼을 클릭하고 고유하게하려는 컬럼 (들)에 열을 변경합니다.

    예로 변경됩니다 고유.

    닫기를 클릭하고 다이어그램을 저장하고이 테이블에 추가합니다.

  7. ==============================

    7.당신은 다음과 같은 뭔가를 찾고있다

    당신은 다음과 같은 뭔가를 찾고있다

    ALTER TABLE dbo.doc_exz
    ADD CONSTRAINT col_b_def
    UNIQUE column_b
    

    MSDN 문서

  8. ==============================

    8.테이블이 이미 만들어 질 때 하나 개 또는 여러 개의 컬럼에 UNIQUE 제약 조건을 만들려면 다음 SQL을 사용 :

    테이블이 이미 만들어 질 때 하나 개 또는 여러 개의 컬럼에 UNIQUE 제약 조건을 만들려면 다음 SQL을 사용 :

    ALTER TABLE TableName ADd UNIQUE (ColumnName1,ColumnName2, ColumnName3, ...)
    

    위의 쿼리에 대한 UNIQUE 제약 조건의 이름 허용하려면

    ALTER TABLE TableName ADD CONSTRAINT un_constaint_name UNIQUE (ColumnName1,ColumnName2, ColumnName3, ...)
    

    MySQL은 / ​​SQL 서버 / 오라클 / MS 액세스에서 지원하는 쿼리.

  9. ==============================

    9.관리 스튜디오 다이어그램에서 하나가 추가 할 수 있습니다, 오른쪽 열을 마우스 오른쪽 단추로 클릭을 원하는 경우 새 열을 추가 클릭하고 "제약 조건 확인"테이블을 선택합니다.

    관리 스튜디오 다이어그램에서 하나가 추가 할 수 있습니다, 오른쪽 열을 마우스 오른쪽 단추로 클릭을 원하는 경우 새 열을 추가 클릭하고 "제약 조건 확인"테이블을 선택합니다.

  10. ==============================

    10.어떤 상황에서는, 전에 그것을 만드는 존재하지 않는 고유 키를 보장하는 것이 바람직 할 수있다. 이러한 경우, 힘의 도움 아래 스크립트 :

    어떤 상황에서는, 전에 그것을 만드는 존재하지 않는 고유 키를 보장하는 것이 바람직 할 수있다. 이러한 경우, 힘의 도움 아래 스크립트 :

    IF Exists(SELECT * FROM sys.indexes WHERE name Like '<index_name>')
        ALTER TABLE dbo.<target_table_name> DROP CONSTRAINT <index_name> 
    GO
    
    ALTER TABLE dbo.<target_table_name> ADD CONSTRAINT <index_name> UNIQUE NONCLUSTERED (<col_1>, <col_2>, ..., <col_n>) 
    GO
    
  11. from https://stackoverflow.com/questions/64981/sql-server-2005-how-create-a-unique-constraint by cc-by-sa and MIT license