[SQL] 어떻게 2005 SQL Server에서 데이터베이스의 기본 스키마를 설정하는 방법?
SQL어떻게 2005 SQL Server에서 데이터베이스의 기본 스키마를 설정하는 방법?
다음 줄의 작품 :
SELECT * FROM [myschema].users
하지만이되지 않습니다 :
SELECT * FROM users
해결법
-
==============================
1.기본 스키마는 사용자 별입니다 :
기본 스키마는 사용자 별입니다 :
USE yourDatabase; ALTER USER [yourUser] WITH DEFAULT_SCHEMA = myschema;
SQL 2005에 대한 ALTER 표에 대한 자세한 내용은뿐만 아니라 당신을 도울 수 있습니다.
이 사용자 별이기 때문에 여러 사용자가 있다면, 당신은 누구의 기본 스키마를 업데이트 할 각 사용자에 대해 (각 데이터베이스)이 쿼리를 실행해야합니다.
그것은주의하는 것이 중요하다 :
The value of DEFAULT_SCHEMA is ignored if the user is a member of the sysadmin fixed server role. All members of the sysadmin fixed server role have a default schema of dbo.
-
==============================
2.당신이 사용할 수있는:
당신이 사용할 수있는:
ALTER USER Mary51 WITH DEFAULT_SCHEMA = Purchasing;
사용자의 기본 스키마를 설정합니다.
-
==============================
3.user960567 같이, 나는 모두 아담과 이반에서 답변을 시도하고 작업을 가져올 수 없습니다.
user960567 같이, 나는 모두 아담과 이반에서 답변을 시도하고 작업을 가져올 수 없습니다.
나는 실행했다 :
ALTER USER myuser WITH DEFAULT_SCHEMA=newschema
제안하지만,이를 실행하고 실행 한 후
SELECT SCHEMA_NAME()
여전히 기본 스키마로 'DBO'를 반환했다.
실행이 I를 해결하려면 :
ALTER USER myuser WITH DEFAULT_SCHEMA=newschema EXECUTE AS USER='myuser'
그리고 예상대로 일 - 지금 실행 :
SELECT SCHEMA_NAME()
반환 '하여 newSchema'.
from https://stackoverflow.com/questions/8208019/how-to-set-the-default-schema-of-a-database-in-sql-server-2005 by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 공간 오라클 테이블 열 이름 (0) | 2020.07.09 |
---|---|
[SQL] 당신은 GROUP BY는 CASE THEN 별칭 이름으로 할 수 있습니까? (0) | 2020.07.09 |
[SQL] "절"평가 순서를 선택합니다 (0) | 2020.07.09 |
[SQL] DECIMAL에 VARCHAR (0) | 2020.07.09 |
[SQL] 하나 개의 레코드로 쿼리를 제한하면 성능을 향상합니까 (0) | 2020.07.09 |