javascript - mysql update 的奇葩問題

來源:互聯網
上載者:User
update table_xxx set a=a+1 where documentid=123

如果資料庫中為10 那麼 執行後就是11
但是最後結果總是12 ,我都鬱悶了一天了,怎麼辦。程式沒有任何問題,我用mysql類,和原生的sql都試過了,都這這個問題,以前開發的時候也沒有遇到,開發一年遇到這樣的問題有解決不了,感覺就是一飯桶,求大神指教

資料庫結構:

CREATE TABLE comment_top_foot (id int(10) NOT NULL AUTO_INCREMENT,documentid int(10) NOT NULL,commentid int(10) NOT NULL,topnum int(10) NOT NULL DEFAULT '0' COMMENT '對評論頂的數量',footnum int(10) NOT NULL DEFAULT '0' COMMENT '對評論踩的數量',PRIMARY KEY (id)) ENGINE=MyISAM AUTO_INCREMENT=1500 DEFAULT CHARSET=latin1

剛才我在linux下運行指令碼了,資料庫中是加一的沒錯,但是我在瀏覽器訪問這個指令碼後資料庫值加2 的,這是神馬原因!

找到原因了,在同事那裡用瀏覽器是正常的,我換成Firefox或者ie也是正常的,現在用的是Google的,出問題了,唯一納悶的是為什麼Google瀏覽器會出問題。鬱悶。。。

回複內容:

update table_xxx set a=a+1 where documentid=123

如果資料庫中為10 那麼 執行後就是11
但是最後結果總是12 ,我都鬱悶了一天了,怎麼辦。程式沒有任何問題,我用mysql類,和原生的sql都試過了,都這這個問題,以前開發的時候也沒有遇到,開發一年遇到這樣的問題有解決不了,感覺就是一飯桶,求大神指教

資料庫結構:

CREATE TABLE comment_top_foot (id int(10) NOT NULL AUTO_INCREMENT,documentid int(10) NOT NULL,commentid int(10) NOT NULL,topnum int(10) NOT NULL DEFAULT '0' COMMENT '對評論頂的數量',footnum int(10) NOT NULL DEFAULT '0' COMMENT '對評論踩的數量',PRIMARY KEY (id)) ENGINE=MyISAM AUTO_INCREMENT=1500 DEFAULT CHARSET=latin1

剛才我在linux下運行指令碼了,資料庫中是加一的沒錯,但是我在瀏覽器訪問這個指令碼後資料庫值加2 的,這是神馬原因!

找到原因了,在同事那裡用瀏覽器是正常的,我換成Firefox或者ie也是正常的,現在用的是Google的,出問題了,唯一納悶的是為什麼Google瀏覽器會出問題。鬱悶。。。

考慮下,你防重複提交邏輯做了沒有?
抓一下http請求,看看發了幾個請求過去了。

http://stackoverflow.com/questions/19264616/mysql-update-query-is-executing-twice-in-chrome-but-once-in-mozilla

https://codebuildplay.wordpress.com/2014/03/06/chrome-loads-page-twice-sitecore-dms-gets-faulty-usage-data/

能把代碼貼上來麼, 我在本地的測試正確的, 我是在mysql 命令列 裡面敲的

update ask_posts set state=state+1 where id=10;

得到的結果:

你應該把PHP代碼貼出來,問題很可能是在那

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.