2011-11-13 2 views
2

SQL Server 2005를 사용하며 데이터베이스에 많은 테이블이 있습니다.
db를 탐색 할 때 모든 테이블 이름의 접두어가 "dbo"로 표시됩니다. 나는 데이터베이스 이름으로 "DBO"는 아래를 참조 교체하려면 :테이블에 db 이름을 표시하는 방법

enter image description here

+1

dbo가 기본 스키마입니다. 원한다면 데이터베이스는 기본적으로 네임 스페이스를 사용하여 수많은 스키마에서 객체를 가질 수 있습니다. 필자는 데이터베이스 이름과 일치하는 스키마를 만들 때 요점을 보지 못합니다. –

+0

+1을 사용하여 이미지를 사용하여 (편집) 이미지의 의미를 설명합니다. –

답변

0

다른 설명에 따르면 dbo는 기본 스키마입니다.

  • 새로운 만들기 : 데이터베이스와 같은 이름을 가진 스키마를 만들 것입니다,하지만 당신은 다음과 같이해야 할 것이다 요구 한 것을 수행하는 이유는 확실하지 않다 CREATE SCHEMA 문을 사용하는 스키마

  • ALTER SCHEMA 문을 사용하여 기본 스키마에서 새 스키마로 테이블을 이동합니다.

예제는 다음과 같습니다 당신은 INFORMATION_SCHEMA.TABLES보기에서 데이터를 사용하여 모든 테이블을 전송하는 스크립트를 작성할 수

IF NOT EXISTS (SELECT * FROM sys.schemas WHERE name ='iMature_US') 
EXEC dbo.sp_executesql @statement=N'CREATE SCHEMA iMature_US'; 
GO 

ALTER SCHEMA iMature_US TRANSFER dbo.PODetail 
GO 

.

2

DBO 스키마 이름, 그것은 데이터베이스 이름과는 아무 상관이 없습니다. SQL Server는 [ServerName]. [Database name]. [Schema name]. [Table/View/Trigger/SP/Function/etc Name]의 4 가지 부분 이름을 사용합니다. 기본 스키마는 dbo이지만 원하는 경우 데이터베이스 뒤에 지정할 수 있습니다 (자세한 내용은 http://msdn.microsoft.com/en-us/library/ms189462.aspx 참조).

관련 문제