如何从表中插入新数据到另一个表?
问题描述:
我有两个表名为search
和search2
。当用户在我的网站上搜索某些内容时,它将插入到第一个表中,并且mySQL会为此分配自动增量ID。我想从search
表中自动将ID插入到search2
表中。这是我的表结构:如何从表中插入新数据到另一个表?
TABLE search(
id INT AUTO_INCREMENT PRIMARY KEY,
search_keyword VARCHAR(50) NOT NULL
)
TABLE search2(
id INT FOREIGN KEY REFERENCES search (id)
)
,这是我的查询:
INSERT INTO search2 (id) SELECT id FROM search WHERE condition
我不知道在条件写,每次新的记录添加到search
表那么它的ID插入到search2
表。
注:我的网站由PHP编写。
答
插入
DELIMITER $$
CREATE TRIGGER new_load_id
AFTER INSERT ON search
FOR EACH ROW
INSERT INTO search2 (id) VALUES (NEW.id);
END$$
DELIMITER ;
首先之后创建触发器,你必须添加一条记录进行搜索之后,你必须将记录添加到sreach2与搜索LAST_INSERT_ID。 – Jens
插入后创建触发器 –
如@Jens所述,您可以查看[mysqli.insert-id](http://php.net/manual/en/mysqli.insert-id.php) – OldPadawan