[英]Submit multiple queries same time mysql inserting same id twice
想要同时将table_a
自动递增值提交到table_b
中。 我首先将记录插入table_a
,然后从table_a
获取最后一个主要id
并将其插入table_b
。 它在低速下运行良好,如每秒20条记录,但速度快,多用户级别,它将table_a
重复id插入table_b
。
我的做法是错的吗? 请建议更好的方法来做到这一点。
码
query1 = "insert into `table_a` (`aid`,`name`) values(null,'val')";
query2 = "select `id` from `table_a` order by `id` desc limit 1";
$aid='retrieved_value';
query3 = "insert into table_b (`bid`,`aid`,`btype`) values (null,'$aid','val')";
是的,你的做法是错误的。 这非常有趣。 您无法保证query2
返回与query1
相关的id。 更好的方法是使用last_insert_id函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.