比如编写一个论坛A,B两个用户同时进行注册。首先 A 进行注册(用户名为:demo)首先检测 demo 是否存在,此时线程切换B进行注册(用户名也为:demo),然后检测
demo时候存在(结果是不存在),然后插入demo此时线程有切换到了A,然后A又会将demo进行插入
此时 表里出现了2个demo用户。请问:像这样的情况如何处理呢?应该设置什么样的事务管理呢?(当一个运用插入查询时进行锁定么)?

解决方案 »

  1.   

    数据库设置为唯一键就行了。OVER!
      

  2.   

    不用进行锁定吧就跟紫竹说样  设置唯一键 插入一次了就不会再次插入demo了
      

  3.   


    恩,对。我设置唯一主键了。不锁定了。然后我把那句 insert 给 try/catch了。用来捕获 “主键重复”的异常,然后,直接就 return Input了