34,590
社区成员
发帖
与我相关
我的任务
分享
CREATE PROCEDURE mypro(in tablename varchar(10))
BEGIN
declare col_name varchar(100);
declare data_type varchar(100);
declare result varchar(4000);
declare done int ;
set result = '';
declare getcategory cursor for select distinct column_name,data_type from information_schema.COLUMNS where table_name = tableName;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;
open getcategory;
read_loop: LOOP
fetch getcategory into col_name,data_type;
if done=1 then
leave read_loop; -- 跳出游标循环
end if
begin
IF data_type='bigint' then
set result ='Integer';
elseif data_type='int' then
set result=result+'Integer';
elseif data_type='varchar' then
set result=result+'String';
elseif data_type='char' then
set result=result+'String';
elseif data_type='tinyint' then
set result=result+'String';
elseif data_type='date' then
set result=result+'Date';
elseif data_type='datetime' then
set result=result+'Date';
elseif data_type='enum' then
set result=result+'boolean';
elseif data_type='text' then
set result=result+'String';
elseif data_type='text' then
set result=result+'blob';
END IF;
end
END LOOP read_loop
select result;
end
declare result varchar(4000) DEFAULT '';