批量修改表\视图\存储过程\用户函数的架构

1250阅读 0评论2015-08-26 wwmshe
分类:系统运维

mssql修改架构的基本命令是:

 

ALTER SCHEMA 新架构名 TRANSFER 旧架构名.对象名

这里的对象名是指具体的表\视图\存储过程\用户函数的名称。这条命令一次只能修改一个对象的架构。如需批量修改,可以先把所有的对象通过select语句列出来,再一起执行。

批量修改表、视图

先执行以下命令:

SELECT 'ALTER SCHEMA 新架构名 TRANSFER ' + '旧架构名' + '.' + table_name

from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='旧架构名'

 

然后将命令执行的结果拷出来再执行一次。例如:



批量修改存储过程

方法同上。先把存储过程都列出来:

 

SELECT 'ALTER SCHEMA 新架构名 TRANSFER ' + s.Name + '.' + p.Name

FROM sys.Procedures p INNER JOIN sys.Schemas s on p.schema_id = s.schema_id

WHERE s.Name = '旧架构名'

 

然后把结果贴出来执行。

 

批量修改函数

也是同样的方法,先执行:

 

SELECT 'ALTER SCHEMA 新架构名 TRANSFER ' + s.Name + '.' + p.Name

FROM SYS.objects p  INNER JOIN sys.Schemas s on p.schema_id = s.schema_id

WHERE s.Name = '旧架构名'

 

然后将执行的结果拷出来再执行一次。

上一篇:在 sys.database_files 中找不到数据库 'xxx' 的文件 'xxx'
下一篇:centos 7下dedecms页面访问空白