【问题标题】:Stored procedure to select column from table and insert to multiple table in mysql从表中选择列并插入到mysql中的多个表的存储过程
【发布时间】:2017-12-09 02:31:16
【问题描述】:

我想从basic2 中选择值并使用存储过程插入basic3basic4

这些是表定义:

create table basic2(
    id int AUTO_INCREMENT,
    name varchar(50),
    address varchar(50),
    PRIMARY KEY (id)
);

create table basic3(
    id int AUTO_INCREMENT,
    name varchar(50),
    address varchar(50),
    PRIMARY KEY (id)
);

create table basic4(
    id int AUTO_INCREMENT,
    name varchar(50),
    address varchar(50),
    PRIMARY KEY (id)
);

这是new_person 存储过程

drop procedure if exists new_person;
DELIMITER // 
CREATE PROCEDURE new_person 
    select (id, name,address)
    from basic2;
    BEGIN

        START TRANSACTION;
        INSERT INTO basic3 (id,name,address) 
                VALUES(LAST_INSERT_ID(),bname,baddress);

        INSERT INTO basic4 (id,name,address) 
                VALUES(LAST_INSERT_ID(),bname,baddress); 

        COMMIT;
    END//

    DELIMITER;

【问题讨论】:

  • 请提供您现在的输出!什么是想要的!

标签: mysql select stored-procedures create-table


【解决方案1】:

我们可以通过两种方式来做到这一点,一种是使用光标,另一种是使用 SELECT 和 insert i 对你来说,SELECT 更好

这样

INSERT INTO basic3(姓名、地址) 从 basic2 中选择名称、地址;

【讨论】:

    猜你喜欢
    • 2016-05-12
    • 1970-01-01
    • 2011-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多