2010-04-17 4 views
0

Management Studio에서 작업하는 동안 스키마를 변경하는 방법이 있는지 궁금합니다. 예를 들어 기본 스키마 dbo가있을 수 있습니다. 그러나 회계 스키마에서 개체를 쿼리 할 수도 있습니다. 커맨드를 발행하여 더 이상 테이블과 뷰 앞에 계정을 포함시키지 않아도된다면 좋을 것입니다. 그러나 다음에 들어갈 때 나는 dbo의 기본값으로 되돌아 갈 것입니다.내 스키마를 동적으로 변경하십시오.

답변

0

항상 개체에 스키마를 접두사로 사용해야합니다. AdventurWorks 데이터베이스에서는 광범위한 스키마의 사용에주의 할 것이다 : 각 쿼리에서

Select ... From Person.Contact 
Select ... From Person.StateProvince 

을, 당신은 스키마 객체를 앞에 마침표로 구분합니다. (<schema>.<object>). 스키마를 생략 할 때 원하는 오브젝트를 알아 내려면 시스템 부분에서 더 많은 작업이 필요합니다. 참조하는 모든 객체가 dbo 인 경우에도 모든 객체 참조에 dbo을 포함해야합니다.

이제 말했다 모두가 당신이 ALTER USER를 사용하여 기본 스키마를 변경할 수 있습니다

ALTER USER userName WITH DEFAULT_SCHEMA = schemaName 

을 그럼에도 불구하고, 내가보기 엔 모든 객체를 참조 할 때 항상 스키마를 포함하는 것이 좋습니다 것입니다.

+0

저는 항상 스키마 이름을 사용할 수 있으며 기본 스키마를 변경할 수 있음을 알고 있습니다. 내가 찾고있는 것은 특정 연결에 대한 기본값을 변경하는 빠른 방법입니다. 정규화 된 이름의 사실을 알고 있지만 정직한 사람이라면 스키마 정보의 추가 오버 헤드없이 빠르게 프로토 타입을 만들고 싶을 때가 있습니다. – Kirk

+0

@ Kirk - 연결 당 기본 스키마를 설정할 방법이 없습니다. 유일한 방법은 사용자를 위해 변경하는 Alter 문을 사용하는 것입니다. 물론, 스크립트의 상단과 하단에 각각 alter 문을 써서 재설정 할 수 있습니다. – Thomas

관련 문제