집 >데이터 베이스 >MySQL 튜토리얼 >EF 데이터베이스에서 외래 키 참조 정수 열을 이중 정밀도로 변경하는 방법은 무엇입니까?
외래 키 종속성 문제: 'Rating' 열을 int에서 double로 변경
이 문제는 EF 데이터베이스 테이블에 열( 예를 들어 'Rating')은 int이고 다른 테이블의 외래 키에 의해 참조됩니다. 'Rating' 데이터 유형을 int에서 double로 변경하면 오류가 발생할 수 있습니다.
The object 'DF__*'' is dependent on column '*''. ALTER TABLE ALTER COLUMN * failed because one or more objects access this column.
원인:
'Rating' 열이 원래 다음과 같이 정의되었을 때 int인 경우 DBMS(예: SQL Server)는 이를 참조하는 외래 키 제약 조건을 자동으로 생성했습니다. 이 제약 조건은 '등급' 열의 값이 참조 테이블의 유효한 행과 일치하는지 확인하여 데이터베이스의 무결성을 강화합니다.
해결책:
'Rating'을 int에서 double로 성공적으로 변경한 경우 외래 키 제약 조건을 제거해야 합니다. 먼저.
제약 조건 식별:
개체 탐색기에서 테이블 속성을 확장하고 제약 조건 범주로 이동합니다. . 'DF_Movies_Rating__48CFD27E'와 같은 'Rating' 열과 관련된 제약 조건을 찾습니다.
제약 조건 제거:
제약 조건을 설정하고 제거를 선택하세요. 이렇게 하면 데이터베이스에서 제약 조건이 삭제됩니다.
열 변경:
제약 조건을 제거한 후 이제 '등급'을 변경할 수 있습니다. 적절한 SQL을 사용하여 열을 데이터 유형 double로
제약 조건 다시 만들기:
'Rating' 열이 변경되면 외래 키 제약 조건을 다시 만들어 데이터베이스를 유지할 수 있습니다. 무결성.
다음 단계를 따르면 데이터를 성공적으로 변경할 수 있습니다. 종속성 오류가 발생하지 않고 '등급' 열의 유형을 확인하세요.
위 내용은 EF 데이터베이스에서 외래 키 참조 정수 열을 이중 정밀도로 변경하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!