我该如何在Go中使用这个技巧:如何获取MySQL中最后更新行的ID?。
我正在使用go-sql-driver。这两个查询应该可以工作,但我该如何在Go中执行它们?
INSERT INTO table (unique_id) VALUES ("test")
ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id);
SELECT LAST_INSERT_ID();
我该如何在Go中使用这个技巧:如何获取MySQL中最后更新行的ID?。
我正在使用go-sql-driver。这两个查询应该可以工作,但我该如何在Go中执行它们?
INSERT INTO table (unique_id) VALUES ("test")
ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id);
SELECT LAST_INSERT_ID();
解决方案已经就在这里了。就是这么简单。我希望其他人也会发现这个有用:
stmt, err := db.Prepare("INSERT table SET unique_id=? ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id)")
res, err := stmt.Exec(unique_id)
lid, err := res.LastInsertId()
UPDATE items
SET qwe = 'qwe',
item_id=LAST_INSERT_ID(item_id)
WHERE asd = 'asd';
SELECT LAST_INSERT_ID();