上传数据到数据库的时候,我是先通过查询出第一个表的最大值的自增id,在for语句循环累加,累加的数字为第二个表的某个字段,然后在进行mysql语句操作。但我想问下,如果出现同时几个人在操作数据的时候,这个最大值id累加会出现一些错误,我该怎样去防止多人同时添加数据呢?
如何考虑好数据库并发问题?有没有什么例子可以参照下?
如果需要自增id做key,直接在sql语句中插入的时候不要写这个字段,db自己会生成自增的值,并发插入的时候,db底层会排序生成,不用人工介入。如果需要人工实现一个自增序列,那需要自己实现一个获取id的服务,所有db操作必须调用同一个服务获取id,不允许自己写代码插入。怎么实现这个顺序产生id的服务,可以自己再参考一下,有很多已经有的实现。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。