6

SQL Server 데이터베이스에 1000 개의 테이블이 있습니다.SQL Server - 테이블 메타 데이터

응용 프로그램에서 각 테이블이 수행하는 작업에 대한 간략한 설명을 추가하려면 해당 정보를 유지 관리하기 위해 다른 테이블을 만들어야합니까? 아니면 이것에 대한 더 좋은 방법이 있습니까?

예 : 테이블이 [PurchaseOrdersConcrete]인데 주목하고 싶습니다. - 이 테이블은 Fortune500 기업의 모든 PO를 저장합니다.

나는이 목적을 위해 다른 메타 데이터 테이블을 만들 경우, 또는이 - Notes - 열이 이미 SQL 서버에 somwhere (sys.tables에 말)?

답변

9

확장 속성을 사용하면됩니다. usage of them can be found here의 msdn 개요입니다. 나는 당신이 위에서 묘사 한 정확한 목적을 위해 그것들을 사용했습니다.

을 관리하는 쉬운 방법은 객체와 속성을 선택 마우스 오른쪽 버튼으로 클릭하여 직접 SSMS에 있습니다. 그러나 tsql을 통해 응용 프로그램 내에서 작업 할 수도 있습니다.

새 확장 속성을 추가하려면 sp_addextendedproperty을 사용하십시오.

기존의 확장 된 속성을 검색하려면 다음 예제와 같이 ::fn_listextendedproperty을 쿼리하는 것이 일반적입니다. 그들에

SELECT objType, objName, Type, Value 
FROM ::fn_listextendedproperty (null, 'user', 
'dbo', 'table','<your table>', null, null) 

업데이트 및 삭제 작업을 추가 sp_updateextendedpropertysp_dropextendedproperty


의 사용을 통해 가능하게되어, SSMS은 자신의 메타 데이터의 일부들을 사용한다. SSMS에있는 views 중 하나를 살펴 보는 것이 좋습니다. 그것을 마우스 오른쪽 버튼으로 클릭하고 속성을 선택하십시오. 그런 다음 '확장 속성'을 클릭하십시오. 아마도 MS_DiagramPane???에 관한 항목을 보게 될 것입니다. 이것은 MS가 뷰의 레이아웃을 저장하는 곳이기 때문에 디자인 모드에서 뷰를 열 때마다 마지막으로 왼쪽에서 본 것과 같은 모양이됩니다.

이들은 far back as SQL2000으로 입수 할 수 있지만 더 최근에 널리 보급되었습니다. 그것은 심지어 인쇄 및/또는 웹 생산하고

http://www.red-gate.com/products/sql-development/sql-doc/

: RTHomas 제안으로

1

, 확장 된 속성, 쉽게 당신이 그 필드를 채우고 유지 관리 할 수 ​​있도록 할 것이다 더 나은 사용 RedGates의 SQLDoc 도구를 사용하여 완료되면 문서가 제공됩니다. 훌륭한 도구.