SQLSERVER 修改实例名以及架构信息

1. GUI的方式 后者是 alter database 的方式修改 instance的名字

2. 在全局的安全性下面创建用户.

3. 在实例的安全性下面创建架构和用户(架构名与用户名一直, 使用新实例的名字).

4. 使用sa 执行命令 sp_change_users_login 'Update_one','NEWname','NEWname'

5. 删除之前的的老的架构名和实例.(如果提示有连接 在执行完第六步之后 重新删除.)

6.修改数据库实例中表和视图的属主:

use newname; 
DECLARE @table SYSNAME; 
DECLARE @schema SYSNAME; 
DECLARE @new_schema SYSNAME; 
SELECT @schema = 'oldname' --原有属主
SELECT @new_schema = 'newname' --新属主
DECLARE csr CURSOR FOR  
SELECT o.name, u.name FROM sys.objects o  
INNER JOIN sys.schemas u ON o.schema_id = u.schema_id  
WHERE o.type in( 'u','p','v','tf','fn','if') AND u.name = @schema  
OPEN csr; 
FETCH NEXT FROM csr INTO @table, @schema;  
WHILE @@FETCH_STATUS = 0  
BEGIN  
exec ('ALTER SCHEMA ' + @new_schema + ' TRANSFER [' + @schema + '].[' + @table + ']'); 
FETCH NEXT FROM csr INTO @table, @schema; 
END  
CLOSE csr  
DEALLOCATE csr ;

自己写的 改天验证一下.

原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/9797723.html