日期:2014-05-18 浏览次数:20571 次
-- 1、加字段,判断该字段如果存在不操作,否则添加字段 if(exists(SELECT * FROM SysColumns WHERE id=Object_Id('yourtable') and [name]='columnname')) exec('alter table yourtable add columnname [varchar](20) '); -- 2、没太懂你的问题 declare @a varchar(20) set @a = '100' -- 'abc' -- 变量或sql语句里可以用类似以下的方式处理 set @a = case isnumeric(@a) when 1 then cast(@a as int) else null end;
------解决方案--------------------
1.1判断是否已经存在欲添加的字段名,若存在不操作,不存在添加。
1.2判断添加VARCHAR(20)后表字段的总长度是否超过8060限制。
2.这要看你欲转化的字符串是否有什么规律了,若无规律那只能一个字符一个字符的判断了。