외래키로 참조되어있는 테이블은 삭제하고 싶어도 삭제가 되지 않는다.
하지만 프로시저에 참조되어진 테이블은 삭제가 가능하다.
그런 관계를 확인하고 싶을 때
1. 첫 번째 방법
Microsoft SQL Server Management Studio 경우
테이블에 오른쪽 마우스를 눌러 View Dependencies로 들어간다.
그렇게 하면 이 테이블에 속해져있는 것과 이 테이블이 속한 곳이 나온다.
이 테이블이 의존하는 객체
이 테이블에 의존하는 객체
2. 두 번째 방법
A테이블에 의존하는 모든 객체 가져오는 명령문Returns all the objects that depend on ATable
Select * from sys.dm_sql_referencing_entities('dbo.ATable','Object')
sys.dm_sql_referencing_entities - 참조하는 엔티티sys.dm_sql_referenced_entities - 참조되어지는 엔티티
example:
Create view VwEmployees --> Referencing entity
as
Select * from Employees --> Referenced entity
스키마 바운드 종속성 vs Non 스키마 바운드 종속성Schema-bound dependency VS Non-Schema-bound dependency
스키마 바운드 종속성은 참조하는 개체가 삭제되거나 수정되는 것을 방지한다.넌 스키마 바운드 종속성은 그런 것에 연연해 하지 않고 삭제나 수정이 가능하다.
3. 세 번째 방법
sp_depends 사용하기.
저장된 프로시저로 종속성 확인.
1. 개체의 종속 관계를 보여주는 프로시저 A system stored procedure that returns object dependencies.
2. 예를들어 For example,
2-1. 만약 인자로 테이블이름으로 지정한다면 , 그 테이블의 종속 관계가 보여질 것이다.If you specifiy a table name as the argument, then the views and procedures that depend on the specified table are displayed
2-2. 먄약 인자로 뷰나 프로시저 이름을 지정한다면, 그 뷰나 프로시저가 속해진 테이블이름이 보일 것이다. If you specify a view or a procedure name as the argument, then the tables and views on which the specified view or procedure depends are displayed.
종속된 테이블 이름과 각 열의 이름을 리턴한다.
Returns the name of the table and the respective column names on which the stored procedure sp_Get depends.
만약 종속된 테이블이 삭제되거나 다시 만들어졌다면 이 프로시저는 정확하게 종속관계를 보여주지 않는다.
sp_depends does not report dependencies correctly, if the table on which the stored procedure depends is deleted and recreated.
이 프로시저는 안 쓰는 추세라 없어질 수도 있다.
sp_depends is on the deprecation path. This might be removed from the future versions of SQL Server.
'Database > SQL Server' 카테고리의 다른 글
sql 연습 (0) | 2020.12.22 |
---|---|
SQL Server - sys.dm_sql 참조 엔티티 referencing entities (0) | 2020.12.22 |
SQL Server - 오프셋, 페치 넥스트 Offset, Fetch Next, Pagination (0) | 2020.12.22 |
SQL Server - DateTime vs DateTime2 차이, 비교 (0) | 2020.12.19 |
SQL Server - DateTime2FromParts 함수 (0) | 2020.12.19 |