使用 mysqli 将数据从一个表复制到另一个表

问题描述 投票:0回答:2

如果我的客户删除一条记录,我在数据库中有一些记录,我使用该记录 ID 从该表复制数据并将其插入到存档表中

$sqlarch = "INSERT customers_archive SELECT * FROM customers_record WHERE UCI = '8233379' "
php mysqli mysql-insert-id
2个回答
0
投票

仅给出数据库中两个表的名称以及一个可能被误解的问题,与有关

trigger
的评论一致,也许以下内容可能有用。

要复制

customers_record
表,使其适合充当
archived
表的
customers_record
版本,您可以简单地使用以下命令创建克隆:

create table `customers_archive` like `customers_record`

然后创建一个简单的触发器,它将使用删除的任何记录的副本填充新表:

CREATE TRIGGER `trCustomers_Archive` BEFORE DELETE ON `customers_record` FOR EACH ROW BEGIN
    insert into `customers_archive` select * from `customers_record` where `UCI`=old.`UCI`;
END

如果添加额外的列来记录正在执行的 sql 操作的类型以及可能用于审计目的的用户,则可以扩展此相同的逻辑以充当在特定表上执行的任何操作的日志。


0
投票

要将一个表中的所有数据插入到另一表中,您可以使用以下查询:

插入 tableName_to_which_data_inserting(column1,column2,.....) 从 tableName_from_which_data_inserting

选择 col1,col2,....
© www.soinside.com 2019 - 2024. All rights reserved.