文章詳情頁
db - mysql有int字段只增不減功能
瀏覽:223日期:2022-06-19 16:49:36
問題描述
現(xiàn)在有一個(gè)字段,類型為int,能否僅通過mysql自身的sql語句或配置,來實(shí)現(xiàn)該字段只增不減的功能?
比如說現(xiàn)在有一條記錄,這個(gè)字段的值是1400,現(xiàn)在要對(duì)該字段進(jìn)行UPDATE操作,當(dāng)UPDATE SET為1300時(shí),就失敗,當(dāng)UPDATE SET為1500時(shí),就成功。
我不想通過后端代碼來實(shí)現(xiàn)的原因,是因?yàn)橛X得為了更新記錄,單獨(dú)再查一遍,有點(diǎn)浪費(fèi)了。
問題解答
回答1:update test set value=1500 where id=1 and value<1500
然后獲取影響條數(shù)就可以了。
最后,你要留意這個(gè)值,這樣的更新在并發(fā)的情況下,無法做到數(shù)據(jù)的一致性。
回答2:可以嘗試設(shè)置觸發(fā)器
回答3:觸發(fā)器可以做到的
上一條:mysql - InnoDB事務(wù)級(jí)別Serializable level的時(shí)候find一個(gè)不存的數(shù)據(jù)會(huì)加什么鎖下一條:數(shù)據(jù)庫 - MYSQL提示數(shù)據(jù)過長錯(cuò)誤,根據(jù)網(wǎng)上的解決方案無法解決
相關(guān)文章:
1. docker api 開發(fā)的端口怎么獲取?2. docker gitlab 如何git clone?3. debian - docker依賴的aufs-tools源碼哪里可以找到啊?4. macos - mac下docker如何設(shè)置代理5. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問題。6. docker網(wǎng)絡(luò)端口映射,沒有方便點(diǎn)的操作方法么?7. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????8. docker - 如何修改運(yùn)行中容器的配置9. dockerfile - 我用docker build的時(shí)候出現(xiàn)下邊問題 麻煩幫我看一下10. docker start -a dockername 老是卡住,什么情況?
排行榜

熱門標(biāo)簽
網(wǎng)公網(wǎng)安備