문제

어떻게 만드는 독특한 제약 조건에서 기존의 테이블에서 SQL Server2005?

내가 찾는 것은 모두 TSQL 고 그것을 어떻게 데이터베이스에서 다이어그램입니다.

도움이 되었습니까?

해결책

SQL 명령어는 다음과 같습니다.

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

전체 구문 .

당신이 원하는 경우에 데이터베이스에서 다이어그램:

  • 오른쪽 클릭하에 테이블을 선택합'인덱스/키'
  • 추가 버튼을 클릭하여 새로 추가 인덱스
  • 입력한 정보의 속성에서 오른쪽에:
    • 열 원(단추를 클릭하여 선택하려면)
    • 설정하는 고유한 네
    • 그것에게 적절한 이름

다른 팁

에서 SQL 서버 관리 익스프레스 스튜디오:

  • 오른쪽 클릭하 테이블,선택 디자인은(이후 버전)
  • 오른쪽 클릭하드,선택 인덱스/키...
  • 클릭 추가
  • , 선택 필드에 이름 당신이 원하는 고유합니다.
  • 유형, 선택 독특한 열쇠.
  • 클릭 닫기, 저장 테이블.
ALTER TABLE [TableName] ADD CONSTRAINT  [constraintName] UNIQUE ([columns])

경고:하나만 null 이 행에 있을 수 있습의 열을 설정하는 고유합니다.

당신이 할 수 있으로 필터링된 인덱스에서 SQL2008:

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

필드 값을 반드시 고유한 것이지 않으면 NULL 의 범위에 대한 답변이 있습니다.

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

나도 당신을 발견 할 수있는 이해,데이터베이스 다이어그램.

에서 마우스 오른쪽 단추를 클릭하여 표 선택하여 인덱스/키...

을 클릭하면'추가'버튼을 열을 변경하는 열(s)당신은 당신이 소원이 유일하다.

변경은 독특하는 예입니다.

닫기 및 저장을 클릭합니다 도표,그리고 그것에 추가될 것입니다.

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

ALTER TABLE dbo.doc_exz
ADD CONSTRAINT col_b_def
UNIQUE column_b

MSDN 문서

을 만드는 독특한 제약 조건에 하나 또는 여러 개의 열을 경우 테이블이 이미 만들어를 사용하여 다음 SQL:

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

을 허용하는 이름의 독특한 제약 조건에 대한 위 쿼리

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

쿼리를 지원하는 MySQL/SQL Server/Oracle/MS 액세스입니다.

에서 관리 스튜디오 도표 테이블을 선택하고 오른쪽 버튼을 클릭하여 새 열을 추가하고 원하는 경우,마우스 오른쪽 버튼으로 클릭 열 선택하고"Check",거기에 추가할 수 있습니다.

어떤 상황에서,그것은 될 수 있는지 확인하는 것이 바람직하다 독특한 키가 존재하지 않기 전에 그것을 만들 수 있습니다.그러한 경우에는 아래 스크립트 도움이 될 수 있:

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
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top