mssql sql server 系统更新,如何正确的增加表字段


摘要:
下文主要讲述,如何对”已上线的系统”中的表,增加新的字段。



系统部署脚本,增加列的方法

在系统脚本发布中,如何是存储过程 自定义函数 视图的修改和新增,我们通常采用以下步骤来编写此类脚本
1 判断对象(存储过程 自定义函数 视图)是否存在,如何存在我们就删除对象(存储过程 自定义函数 视图)
2 新建对象


但是增加系统字段(列)时,我们不能采用删除表,然后重新的方式进行脚本处理,
那么我们通常采用 先判断列是否存在,如果不存在就创建列,如果存在就修改列属性(修改列属性–请注意是否会影响历史数据)
例:

  IF NOT EXISTS(SELECT * FROM SYS.COLUMNS 
WHERE OBJECT_ID = OBJECT_ID(N'表名') 
AND NAME = '列名')   ---判断列是否存在
begin
 ---增加列
   alter table [表名] 
   add column [列名] [列类型]
end
else
begin
  ---修改列属性
  alter table [表名] 
   add column [列名] [列类型]
end


采用以上方式编写sql部署脚本的优点为,sql脚本可以执行多次,不会出现报错信息,可以避免已经手动增加列的数据库产生部署错误提示信息