35
테이블의 열에 외래 키가 있는지 쉽게 확인 할 수 있습니까? 존재하지 않는 경우에만 외래 키를 추가하는 스크립트를 작성 중입니다.SQL 2005에 외래 키가 있는지 확인하는 방법
당신이 스크립트를 사용할 수테이블의 열에 외래 키가 있는지 쉽게 확인 할 수 있습니까? 존재하지 않는 경우에만 외래 키를 추가하는 스크립트를 작성 중입니다.SQL 2005에 외래 키가 있는지 확인하는 방법
당신이 스크립트를 사용할 수:
기존 FK에 테이블과 오른쪽 클릭을 확장하여 "TO DROP"으로 스크립트 키를 선택하고 당신이 생성 얻을 것이다 경우에 수행 할 수 있습니다IF EXISTS (SELECT *
FROM sys.foreign_keys
WHERE object_id = OBJECT_ID(N'[dbo].[FK_NAME]')
AND parent_object_id = OBJECT_ID(N'[dbo].[MyTable]'))
BEGIN
-- do stuff
END
SQL의 스크립트.
우후! 방금 이틀 동안이 일을했습니다.
IF NOT EXISTS (SELECT name
FROM sys.foreign_keys
WHERE name = 'FK_Name')
ALTER TABLE table_name ADD CONSTRAINT FK_Name FOREIGN KEY (idcol)
REFERENCES OtherTable(idcol)
이 스크립트는 효과적이었습니다! 나는 당신이 메뉴에서 그런 것을 대본을 쓴다는 것을 믿을 수 없다. 도와 줘서 고마워. –
당신은 SQL에서 거의 모든 것을 마우스 오른쪽 버튼으로 클릭 할 수 있으며, 테이블, 저장 프로 시저, 외래 키 등을위한 스크립트를 생성 할 수 있습니다. 관리 스튜디오는 자신이 할 수있는 멋진 기능 중 일부를 배운 후 친구입니다. – CodeLikeBeaker
이 방법은 외래 키의 기본 이름을 사용하는 경우에만 작동합니다. 특히 다른 명명 규칙을 따를 수있는 다른 사람들이 만든 데이터베이스에서 작업하는 경우에는 가정을 기반으로 이름을 처리하는 것이 신뢰할 수 없습니다. 외래 키의 이름을 확인하는 대신 특정 열이 다른 테이블의 외래 키인지 확인하는 방법이 있습니까? –