数据库批量修改表名,增加前缀(SQL server)

exec   sp_msforeachtable     
@command1='
  declare   @o   sysname,@n   sysname     
  select   @o=''?''   
  ,@n=stuff(@o,1,7,''GS_'')   
  ,@n=left(@n,len(@n)-1)   
  exec   sp_rename   @o,@n' 

  其中stuff函数是替换函数,从第一个位置开始,到第7个位置结束。因为SQLserver的括号匹配,表名aa实际上是[dao].[aa],如果直接加前缀就成了[dao].[GS_dao].[aa].

所以先把[dao].删去,从位置1,到7.

原文地址:https://www.cnblogs.com/yuanfuqiang/p/5325452.html