본문 바로가기

프로그래밍/MSSQL

MS SQL - PRIMARY KEY 와 FOREIGN KEY 를 전부 뽑아주는 쿼리

Method 1: INFORMATION_SCHEMA

SELECT
DISTINCT
Constraint_Name AS [Constraint],
Table_Schema AS [Schema],
Table_Name AS [TableName]
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
GO

Method 2: sys.objects

SELECT OBJECT_NAME(OBJECT_IDAS NameofConstraint,
SCHEMA_NAME(schema_idAS SchemaName,
OBJECT_NAME(parent_object_idAS TableName,
type_desc AS ConstraintType
FROM sys.objects 
WHERE type_desc IN ('FOREIGN_KEY_CONSTRAINT','PRIMARY_KEY_CONSTRAINT')
GO



PRIMARY KEY 와 FOREIGN KEY 를 전부 뽑아주는 쿼리 들이다.

METHOD 2 가 성능이 제일 좋고, 결과값도 많다.



http://aspdotnet.tistory.com/265에서 가져온 자료.


제약조건 걸기


ALTER TABLE 테이블명
ADD CONSTRAINT 제약조건명


제약조건 끊기


ALTER TABLE 테이블명
DROP CONSTRAINT 제약조건명;