RSS구독하기:SUBSCRIBE TO RSS FEED
즐겨찾기추가:ADD FAVORITE
글쓰기:POST
관리자:ADMINISTRATOR

특정 스키마에 속한 개체들을 다른 스키마로 한번에 이동하기 SQL Server 


SQL2000에서 SQL2005로 업그레이드 혹은 복원을 하였을 경우에, 기존의 개체 소유자가 SQL2005의 스키마로
자동 등록이 됩니다. 이 때문에 사용상의 불편함을 격는 분들이 계신데요.
이런 경우에 사용할 수 있는 스키마 일괄 변경 프로시져입니다.


create proc up_changeObjectSchema
 @oriSchema varchar(20),  --원래 스키마
 @newSchema varchar(20)   --변경할 스키마
as
 declare @objectName varchar(100)
 declare @schemeID int
 declare @schemaName varchar(100)
 declare @strSQL varchar(8000)
 set @strSQL = ''

 declare myCursor cursor
 for
  select O.name as objectName,O.uid as schemaID,S.name as schemaName from sys.sysobjects O join sys.schemas S
  on O.uid = S.schema_id where S.name = @oriSchema and O.xtype = 'U' and O.parent_obj = 0
 open myCursor
 fetch next from myCursor into @objectName,@schemeID,@schemaName
 while @@fetch_status = 0
 begin
  set @strSQL = @strSQL + 'alter schema ' + @newSchema + ' transfer ' + @oriSchema + '.' + @objectName + char(13)
  fetch next from myCursor into @objectName,@schemeID,@schemaName
 end
 close myCursor
 deallocate myCursor
 --print @strSQL
 exec (@strSQL)
go

-- 프로시져 실행 테스트 (jkkim이 소유한 스키마를 dbo스키마가 소유하게 변경)
exec up_changeObjectSchema 'jkkim','dbo'

이올린에 북마크하기
2009/04/22 22:25 2009/04/22 22:25
http://jiny.kr/trackback/423
전체 (406)
지니소식 (4)
자료실 (4)
정보|뉴스 (5)
SmartPhone (1)
Languages (206)
Server (153)
Database (27)
Design (4)
Gallery (0)
분류하기귀찬.. (2)
«   2012/05   »
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
  1. 창의력과 상상력을 넘어서  2009
    Tomcat 6.0 기본 환경 설정
  2. 닥공  2009
    서블릿 tomcat 6.0 실행시 에러
  1. 2010/07 (1)
  2. 2010/05 (1)
  3. 2010/02 (3)
  4. 2010/01 (3)
  5. 2009/05 (2)
Statistics Graph