gpt4 book ai didi

带触发器的 Mysql 克隆 id

转载 作者:行者123 更新时间:2023-11-29 12:20:36 26 4
gpt4 key购买 nike

我有两个表:

CREATE TABLE IF NOT EXISTS `users` (
`id` int(8) NOT NULL AUTO_INCREMENT,
`username` varchar(45) NOT NULL,
`password` varchar(200) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;

CREATE TABLE IF NOT EXISTS `users_info` (
`id` int(8) NOT NULL,
`name` varchar(35) NOT NULL,
`address` varchar(35) NOT NULL,
PRIMARY KEY (`id`),
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

我希望当用户插入表 users 时,自动在表 users_info 中插入一个新行,该行将在 id 中包含相同的 id 列,如 users 表。当我进行插入时,我这样做: INSERT INTO users (username,password) VALUES ('user1','pass1');

我认为我应该看看 MySQL 触发器。我确实看了一下,但我不知道如何从用户表中检索插入的最后一行的键 ID,假设其他行可以在其他线程中并行插入。

最佳答案

如果您创建 AFTER INSERT 触发器,则可以使用 NEW 对象:

CREATE
TRIGGER `aftInsert_users` AFTER INSERT ON `users`
FOR EACH ROW BEGIN
INSERT INTO users_info (itemID) VALUES (NEW.id);
END;

关于带触发器的 Mysql 克隆 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29083182/

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