2011-01-20 5 views
1

나는 관리자로 로그인하면 그렇지 않기 때문에다른 테이블 소유자와 테이블을 쿼리하는 방법

a_user.[table1] 
a_user.[table2] 

나도 테이블을 쿼리 할 수있는 SQL Server의 정의 소유자의 사용자 2008 데이터베이스에 여러 테이블이 [해당 사용자 네임 스페이스에] 존재합니다.

관리자 또는 다른 사용자가 사용자를 참조하지 않고 [테이블 1] 테이블을 쿼리 할 수 ​​있습니까? 당신이보고있는 무엇

select * from a_user.table1 --> works 
select * from table1 --> doesn't work, i'd like this to work 
+0

a_user에 table1이 있고 b_user에 table1이 있다면 어떤 테이블을 사용 하시겠습니까? –

답변

2

스키마하지 소유자 있습니다. 두 개념은 구별됩니다 (SQL Server 2005 onwards).

테이블 이름을 확인하기 위해 SQL Server는 기본 스키마를 조사합니다. 기본적으로 이것은 dbo가됩니다. 스키마 이름을 지정하지 않고 테이블에 액세스하는 유일한 f}은 기본 스키마에 있거나 테이블의 기본 스키마에 synonym을 추가하는 것입니다.

관련 문제