oracle 多个客户端同时执行查询,如果没有某个记录,就插入一条记录,记录重复 5

多个java程序连接一个oracle数据库将程序接收到的信息存入oracle,前提是先查询有没有这条记录比如根据用户名查询,如果没有就插入这个用户的信息,设想的是不会出现... 多个java程序连接一个oracle数据库将程序接收到的信息存入oracle,前提是先查询有没有这条记录 比如根据用户名查询, 如果没有就插入这个用户的信息,设想的是不会出现重复的用户名记录,但实际运行中会出现,分析原因是多个程序同一时间查询时都没有发现这个用户,所以都向数据库中插入了这个用户记录。请问如何避免这种情况发生,表没有建立约束,除了建立唯一约束外有其他方法吗? 比如同一时间只能一个程序去查询这个表,需要怎样设置呢 展开
 我来答
卓伴柏a
2015-09-20 · TA获得超过247个赞
知道小有建树答主
回答量:338
采纳率:0%
帮助的人:255万
展开全部
可以设置一个令牌表,如果有人要操作用户表,先把这张表值为1,否则为0,每次要操作之前也是先读取此表,如果为0则操作,如果为1也等会再操作,这样做还要考虑是否有人同时操作设置表值为1,所以操作之前先锁表,类似单例模式,可以参考一下。
追问
怎么锁定表?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式