sqlserver 批量修改表前缀】的更多相关文章

先把第一句话放到sqlserver查询器中执行一下.然后把查询结果复制出来,进行编辑...一看你就懂了..简单的sql语句拼装 select ' exec sp_rename "' + name + '","new'+ name +'","object" ' from sysobjects where xType= 'U ' and name like '老的前缀_%' --0.把sql语句执行结果复制到记事本或者ue中--1.替换 new老的前…
修改表名 ALTER TABLE 原表名 RENAME TO 新表名; 一句SQL语句只能修改一张表 show tables; 1. SELECT CONCAT( 'ALTER TABLE ', table_name, ' RENAME TO db_', substring(table_name, ), ';' ) FROM information_schema. TABLES WHERE table_name LIKE 'ct%'; 批量复制一下到Notepad++中,只保留sql语句,再复制…
error_reporting(0); $old_pre = 'tdr_'; // 原表前缀 $new_pre = 'db_'; // 新表前缀 // 配置连接 $db = new mysqli('127.0.0.1', 'db_user', 'db_pass', 'db_name'); if ($db->connect_error) die('Connect Error (' . $db->connect_errno . ') ' . $db->connect_error); $que…
直接贴码: SELECT a.*, concat( 'alter table ', a.TABLE_NAME, ' rename ge_', SUBSTR( a.TABLE_NAME FROM INSTR(a.TABLE_NAME, '_') + 1 ), ';' ) FROM information_schema.`TABLES` a WHERE a.TABLE_SCHEMA = 'geekweb'; 查询出结果,复制最后一列.然后跑一遍就好了…
解决:在SQLServer中修改表的列名,可以调用存储过程sp_rename. [sql]use Test;--使用数据库  sp_rename 'd_s_t.avg_grade','avg_g','column';  --d_s_t是表名,avg_grade是原来的列名,avg_g是新的列名  --也可以这样执行:  www.2cto.com    -- exec sp_rename 'd_s_t.avg_grade','avg_g','column';   注意:1.  avg_g前面不要有…
1.我们在创建sqlserver得数据表的主键的时候,有时会出现,后面加一串随机字符串的情况,如图所示: 2.如果你有强迫症的话,可以使用以下sql脚本进行修改,将主键的名称修改为PK_表名. --将表的主键名统一规范为PK_表名 DECLARE @PK_Name_Old varchar(100),@Table_Name varchar(100),@PK_Name_New varchar(100),@Col_Name varchar(100) DECLARE Cursor_Update_Tabl…
SELECT NAME FROM SYS. ALL_OBJECTS WHERE TYPE= 'U' ORDER BY MODIFY_DATE DESC --查询所有表名 SELECT NAME FROM SYS. ALL_OBJECTS WHERE TYPE= 'U' AND name LIKE  '%\_0%' escape '\' AND name NOT LIKE '%_OLD' ORDER BY MODIFY_DATE DESC     DECLARE @COUNT INT ) ) )…
--批量删除表 ) DECLARE tmpCur CURSOR FOR SELECT name FROM sys.objects WHERE TYPE='U' AND name LIKE N'%_QueryLog' --删除所有含有"_QueryLog"的表 OPEN tmpCur FETCH NEXT FROM tmpCur INTO @Table BEGIN ) SELECT @sql = 'drop table ' + @Table EXEC(@sql) FETCH NEXT F…
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]…
比如前缀由mms_修改为 ets_ exec   sp_msforeachtable     @command1='  declare   @o   sysname,@n   sysname       select   @o=''?''     ,@n=stuff(@o,1,charindex(''].[mms_'',@o)+6,''ets_'')     ,@n=left(@n,len(@n)-1)     exec   sp_rename   @o,@n',     @whereand='…