>  기사  >  백엔드 개발  >  mysql 线程有关问题,请问大侠们,顶者有分

mysql 线程有关问题,请问大侠们,顶者有分

WBOY
WBOY원래의
2016-06-13 13:50:39625검색

mysql 线程问题,请教大侠们,顶者有分!
select   number   from   numbertable   where   number=  
(
        SELECT   sum(todayhit)   as   todayhit   FROM   hittabel
)  

我要做个点击统计,当所有网民的点击总数sum(todayhit)等于numbertable表中的number(提前设定)时,会给这个网民奖品,

这个语句出现的问题是,当有很多人同时点是时,会空掉number,使我设定的中奖数字漏掉,这个毛病只有当同时点击人数很多时出现,我个人认为是MYSQL线程问题,大侠有没有好的主意,让我的操作不漏掉中奖数字,可以不用数据库,只要能实现.

------解决方案--------------------
么明白
------解决方案--------------------
会出现空掉number的问题嘛?
------解决方案--------------------
jf~~
下个手册看看,挺详细的。
大体如此(供参考,具体手册+google吧)
到表格所在库
mysql> delimiter //
mysql> create procedure test(out p int)
mysql> begin
mysql> SELECT @a:=sum(todayhit) FROM hittabel;
mysql> select select number into p from numbertable where number=@a
mysql> end;//
mysql> delimiter ;
用时:
mysql> call test(@num);
mysql> select @num;
------解决方案--------------------
有办法解决,就是对表进行锁定。

看来现在看手册的人太少了。MySQL的库,有很多种,其中自持锁定表和锁定库的,就那么就几个,请你稍微翻阅下手册吧。

我用这方面的东西比较少,具体的内容,忘记了。对不住啊~
------解决方案--------------------
不建议MYSQL存储过程
不成熟...
------解决方案--------------------
rollback
------解决方案--------------------


------解决方案--------------------
事务
------解决方案--------------------
我基本不用存储过程的
------解决方案--------------------
换个角度去思考这个问题...
或者是系统架构设计问题.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.