gpt4 book ai didi

mysql - 创建一个函数/过程/循环,用于在 MYSQL 中创建多个相同结构的表

转载 作者:行者123 更新时间:2023-11-29 15:23:30 25 4
gpt4 key购买 nike

有没有办法使用循环/函数/过程创建多个具有相同结构的表?我知道有一种“喜欢”的方法,但为了知识起见,我也在寻找其他选择。

示例我想创建 5 个具有结构但名称不同的表:表名:ABC定义吉jkl米诺问题

    drop procedure if exists create_table;
DELIMITER //
create procedure create_table
(in str varchar(10))
begin
set @query = concat('create table str',
'`col1` varchar(20), `col2` float,',
'`col3` int(10), `date` date,');'
execute query;
end //
DELIMITER ;

call create_table(abc)
call create_table(def)
call create_table(ghi)
call create_table(jkl)
call create_table(mno)

什么都不起作用,因为它只是创建一个名为“str”的表。

我希望我能够解释我在寻找什么。

最佳答案

我发现我的错误了,应该是

    drop procedure if exists create_table;
DELIMITER //
create procedure create_table
(in str varchar(10))
begin
set @query = concat('create table,',str,);
set @query = concat('`col1` varchar(20), `col2` float,',);
set @query = concat('`col3` int(10), `date` date,');');
prepare s from @query;
execute s;
end //
DELIMITER ;

call create_table(abc)
call create_table(def)
call create_table(ghi)
call create_table(jkl)
call create_table(mno)

关于mysql - 创建一个函数/过程/循环,用于在 MYSQL 中创建多个相同结构的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59202758/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com