mysql简单的函数封装
这里以给某个表生成指定个数的字段为例
delimiter //
create procedure build(in 表名 varchar(10),in 变量名 varchar(100),in 类型 varchar(100),in 数量 int)
begin
declare i int default 1;
set @result=concat("create table ",表名,"(");
while i<数量 do
set @result=concat(@result,变量名,i," ",类型," not null,");
set i=i+1;
end while;
set @result=concat(@result,变量名,i," ",类型," not null);");
set @final=concat('desc ',表名);
prepare state from @result;
execute state;
prepare state1 from @final;
execute state1;
end //
delimiter ;
调用:
call build('abc','a','int',50);
最后的结果:
以上是个简单的小栗子,可以写更多复杂的函数,实现事半功倍的效果。