为表添加和删除字段的存储过程

SQLserver:FuncADDColumn(为表添加字段)。

用于为表添加字段。可以侦测表中有没有这字段。
如果没有,添加该字段。

/*
author:nyb
time :2003/12/29
fixtime :
aim   :看表中是否有这个字段,如果没有,添加上
input :
调用:
execute FuncADDColumn ’a’,’c’,’int’
execute FuncADDColumn ’a’,’ddd’,’varchar(100)’
*/
CREATE   PROCEDURE FuncADDColumn
@tablename varchar(128), -- 表名
@Columnname varchar(128),---列名
@ColumnType varchar(128) -- 列定义

as
set @tablename = ltrim(rtrim(@tablename))
set @Columnname = ltrim(rtrim(@Columnname))
set @ColumnType = ltrim(rtrim(@ColumnType))

declare @string varchar(8000)

IF not EXISTS( select * from syscolumns where id=object_id(@tablename) and name = @Columnname )
begin
select @string =’ ALTER TABLE ’+ @tablename + ’ ADD [’ + ltrim(rtrim(@Columnname)) + ’] ’ + @ColumnType + ’ null’
print @string
execute(@string)
end


GO

FuncDropColumn(为表删除某字段)。

自动侦测表中有没有该字段,既可以避免删除出错,也可以提高程序的灵活性。

/*
author:nyb
time :2003/12/29
fixtime :
aim   :看表中是否有这个字段,如果有,删除
input :
调用:

execute FuncDropColumn ’PSZ31’,’Z31No’
*/
CREATE   PROCEDURE FuncDropColumn
@tablename varchar(128), --表名
@Columnname varchar(128)--列名

as
set @tablename = ltrim(rtrim(@tablename))
set @Columnname = ltrim(rtrim(@Columnname))

declare @string varchar(8000)

IF EXISTS( select * from syscolumns where id=object_id(@tablename) and name = @Columnname )
begin
select @string =’ ALTER TABLE ’+ @tablename + ’ DROP COLUMN [’ + ltrim(rtrim(@Columnname)) + ’]’
print @string
execute(@string)
end


GO

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值