全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 学道会
474 0
2019-08-01
delimiter //
create procedure 自由操作字段(in op varchar(10),in n int)
begin
        declare i int default 1;
    set @sqlcodeall='alter table t1 ';
    if op='添加' then
    while i<n do
        set @sqlcodeall=concat(@sqlcodeall,'add c',cast(i as char(2)),' char(1),');
        set i=i+1;
    end while;
    set @sqlcodeall=concat(@sqlcodeall,'add c',cast(n as char(2)),' char(1);');
    elseif op='删除' then
    while i<n do
        set @sqlcodeall=concat(@sqlcodeall,'drop c',cast(i as char(1)),',');
        set i=i+1;
    end while;
    set @sqlcodeall=concat(@sqlcodeall,'drop c',cast(n as char(2)),';');
    else set @error1='参数错误';
    end if;
end //
delimiter ;
desc t1;
call 自由操作字段('添加',40);
select @sqlcodeall;

prepare a from @sqlcodeall;
execute a;
desc t1;

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群