gpt4 book ai didi

MySQL 使用相同的临时表触发器替换表值而不定义列

转载 作者:行者123 更新时间:2023-11-29 16:06:21 27 4
gpt4 key购买 nike

在 MySQL 8 数据库中,我有两个不同模式的相同表,其中一个用作其等效生产表的临时表。这些表包含 200 多个列,将来还会添加更多列,这使得显式定义列名称的值变得困难。

我需要使用 AFTER INSERT 触发器将生产表中的值与临时表中的值进行 INSERT 或 UPDATE,其中生产表中行的所有值都将在存在重复主键时被替换。请注意,生产表已定义其主键。

此后,我应该从临时表中删除所有行。

这是我尝试过的代码:

CREATE TRIGGER stage.my_table_after_insert AFTER INSERT ON my_table
FOR EACH ROW
BEGIN
REPLACE INTO prod.my_table
SELECT * FROM new;
DELETE FROM stage.my_table
END

最佳答案

我不明白你为什么这样做,但你为什么不做类似的事情:

REPLACE INTO prod.my_table
SELECT * FROM stage.my_table;
DELETE FROM stage.my_table;

关于MySQL 使用相同的临时表触发器替换表值而不定义列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55709243/

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