SQLServer使用存储过程增加列

--将添加一列写成存储过程
--if exists(select * from sysobjects where id=object_id(N['addcol']) and objectproperty (id,N'isProcedure')=1)
IF  EXISTS (  SELECT  * FROM SYS.OBJECTS WHERE TYPE='P' AND NAME='addcol' )
begin
print '存在这个存储过程';
drop procedure addcol;
end;
go
create procedure addcol ( @tablename varchar(15),@colname varchar (15),@coltype varchar(20))
as
begin
declare @sql varchar(300);---要执行添加列的sql语句
if not exists(select * from syscolumns where id=object_id(@tablename) and name=@colname)
    begin
    set @sql='ALTER TABLE '+@tablename+' '+'ADD '+ @colname+' '+@coltype +' DEFAULT 2 NOT NULL';
    print  @sql;
    --ALTER TABLE @tablename ADD @colname @coltype DEFAULT 2 NOT NULL;
    exec (@sql);----!!!!一定要带括号!!!
    end;
end;
Go
--调用存储过程以下几种都可以
execute addcol 'test2','test2id','int'; 

 

小飞鱼通达二开 CSDN认证博客专家 软件开发平台 通达OA二次开发 工作流系统集成
知识范围主要涉及SCJP 、MCP、CCNA、通达OA二次开发、OA系统及微信系统的系统集成与整合。对通达OA二次开发进行深入研究与探索,主要研究信息化软件系统的整合与开发工作。
©️2020 CSDN 皮肤主题: 精致技术 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值