我有许多表格是“共享”一个自动递增的主键 - 这是通过插入时的触发器,它看起来像这样完成的:没有自动递增上次插入行信息PK
FOR EACH ROW
BEGIN
INSERT INTO master (time) VALUES (NOW());
SET NEW.id = LAST_INSERT_ID();
END
这会为刚刚插入的行生成PK。然而,这确实造成了我似乎无法弄清楚那个ID是什么的问题。 last_insert_id显然没有返回任何内容,因为上述语句没有在被认为是“当前连接”的地方执行。
有没有方法可以访问连接上最近插入的行而无需自动递增主键?
更新:作为临时(?)度量,我已经删除了触发器,现在通过在我的模型中插入master
来生成ID。看起来好像会更好,如果我能以某种方式返回触发器设置的值。
那么如果你没有标识符(PK),你将如何识别哪一行被插入? – 2011-06-02 18:32:52