批量删除每个数据库中 某表的某列解决方法
批量删除每个数据库中 某表的某列
现象:多个数据库中存在表code,且此表中存在列 ccode
实现:或者叫做“自动”打开每个数据进行: alter table code drop column ccode 的操作
------解决方案--------------------
------解决方案--------------------
初始化,如果没有这一步,sqlserver不知道@sql这个变量是什么,
------解决方案--------------------
验证一下:任何值和null进行运行,都会返回null值
------解决方案--------------------
即使在C#等编程语言里面,初始化也是一个好习惯,能避免很多不必要的问题
现象:多个数据库中存在表code,且此表中存在列 ccode
实现:或者叫做“自动”打开每个数据进行: alter table code drop column ccode 的操作
------解决方案--------------------
declare @sql nvarchar(4000);
set @sql = ''
select @sql= @sql+'use '+name+'; if object_id(''code'') is not null alter table code drop column ccode;'
from sys.databases
where name not in ('master','tempdb','model','msdb')
exec(@sql)
------解决方案--------------------
初始化,如果没有这一步,sqlserver不知道@sql这个变量是什么,
------解决方案--------------------
验证一下:任何值和null进行运行,都会返回null值
declare @sql nvarchar(4000);
select @sql,@sql + '5'
/*
(无列名) (无列名)
NULL NULL
*/
------解决方案--------------------
即使在C#等编程语言里面,初始化也是一个好习惯,能避免很多不必要的问题