2017-03-24 8 views
-1

기존 제약 조건을 수정해야합니다. 불가능한 점을 여러 주제로 읽었습니다. 삭제하고 다시 만들어야합니다. 그래서 나는 그것을 삭제하고 그것을 다시 썼습니다. SQL Server Management Studio에 저장하려고하면 다음과 같은 오류 메시지가 나타납니다.SQL - 기존 행을 확인하지 않고 검사 제약 조건을 추가 할 수 없습니다.

제약 조건 chk_AnneeNaissance를 (를) 추가 할 수 없습니다. ALTER TABLE 문이 CHECK CONSTRAINT chk_AnneeNaissance와 충돌했습니다.

데이터베이스에서이 제약 조건을 충족시키지 못하는 행이 있지만 다음 삽입을 위해 추가하려고합니다. ,

메시지 102 : 나는 주위를 둘러 보았다 봤는데, 내가 NOCHECK 그래서 난이 명령하려고 해요하여 명령을 자신 할 필요가 있음을 발견

ALTER TABLE [GENERAL].[dbo].[Base] WITH NOCHECK ADD CONSTRAINT chk_AnneeNaissance 

을하지만이 오류가 수준 15, 상태 1, 줄 3 'chk_AnneeNaissance'근처의 구문이 잘못되었습니다.

누군가 올바른 명령을 작성하는 데 도움을 줄 수 있습니까?

+0

MySQL과 SQL 서버는 두 가지 제품입니다. Pls 귀하의 질문에만 관련 태그 태그. – Shadow

+0

제약 조건 이름 chk_AnneeNaissance를 변경하고 작동하는지 확인하십시오. 예인 경우 CONSTRAINT를 추가하려고 시도한 – SKLTFZ

+0

어딘가에 chk_AnneeNaissance가 포함되어 있습니까? –

답변

1
ALTER TABLE [ERI_COPY_20170315].[dbo].[Base] WITH NOCHECK 
ADD CONSTRAINT chk_AnneeNaissance 
CHECK (
[Année de naissance] IS NOT NULL AND 
[Année de naissance]>=([Date de valeur]-(80)) AND 
[Année de naissance]<=([Date de valeur]-(15)) AND 
len([Année de naissance])=(4) 
) 

완벽하게 작동합니다. 제임스 Z 감사합니다! 제약 코드를 어디에 넣어야할지 몰랐습니다.