이상한 상황이 있습니다. 기본 키 열을 알고 있지만 테이블이 아닌 경우를 알고 있습니다.기본 키를 알고있는 테이블 찾기
누구나 그 정보를 쉽게 찾을 수 있습니까? sp_pkeys가 그 일을 할 수 있기를 바랬지 만 열로 매개 변수를 사용할 수는 없습니다.
편집 : 이것은 열있는 테이블을 찾고 동일하지 않습니다 (난 이미 그렇게하는 방법을 알고). 특정 기본 키 ("duplicate question"의 하위 집합) 테이블을 찾고 있습니다.
이상한 상황이 있습니다. 기본 키 열을 알고 있지만 테이블이 아닌 경우를 알고 있습니다.기본 키를 알고있는 테이블 찾기
누구나 그 정보를 쉽게 찾을 수 있습니까? sp_pkeys가 그 일을 할 수 있기를 바랬지 만 열로 매개 변수를 사용할 수는 없습니다.
편집 : 이것은 열있는 테이블을 찾고 동일하지 않습니다 (난 이미 그렇게하는 방법을 알고). 특정 기본 키 ("duplicate question"의 하위 집합) 테이블을 찾고 있습니다.
SELECT COLUMN_NAME, TABLE_NAME
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE OBJECTPROPERTY(OBJECT_ID(CONSTRAINT_SCHEMA + '.' + CONSTRAINT_NAME), 'IsPrimaryKey') = 1
AND COLUMN_NAME = 'yourColumnName'
이것은 작동하는 것 같습니다! –
여기에 다른 방법이 있습니다.
select OBJECT_NAME(c.Object_ID)
from sys.columns c
join sys.indexes i on c.object_id = i.object_id
where i.is_primary_key = 1
and c.name = 'YourColumn'
[지정된 이름을 가진 열을 포함하는 모든 테이블을 찾기]의
나를 위해 작동하지 않았다 - 그것을 테스트하기 위해, 나는 결과와 함께 sp_pkeys를 실행 해 보았다. 그리고 나에게 다른 칼럼을 가진 PK를 준 답을 주었다. 죄송합니다. –
다른 스키마에 같은 이름의 테이블이있을 수도 있습니다. 오 잘 ... 당신에게 맞는 대답이있는 것처럼 보입니다. –
아마도. SSC에서 당신을 알기 때문에 저는 편견을 가지고 답으로 당신의 것을 표시하고 싶지만 c'est la vie. :-) 오 잘. –
가능한 복제 (http://stackoverflow.com/questions/4849652/find-all-tables-containing-column-with-specified-name) –
없음 , 같은 질문이 아닙니다. 특정 열이있는 테이블을 찾는 방법을 이미 알고 있습니다. 특정 기본 키가있는 테이블을 찾고 있습니다. –