gpt4 book ai didi

mysql防止负数

转载 作者:IT王子 更新时间:2023-10-29 00:37:12 26 4
gpt4 key购买 nike

他们是mysql中不允许负数的int字段吗?或者更具体地说,如果在字段中插入一个负数,它将插入一个零。我问这个是因为我们有一个评分系统,我们不允许人们打负分。因此,如果他们的分数确实低于零,它只会插入一个零。我正在尝试这样做,而不必查询用户的分数来检查它是否会低于零。

最佳答案

除了其他人推荐的 DDL 更改 (INT UNSIGNED),我还会更改您的应用程序逻辑。你说:

I'm trying to do this without having to query the user's score to check if it will fall bellow zero.

您不必显式 checkin 单独的查询:

UPDATE your_table
SET score = GREATEST(score + ?, 0) -- This '?' is the adjustment to the score
WHERE user_id = ?

现在您的应用程序无法将 score 更新为低于零,也不会根据 SQL 模式生成错误或警告。

关于mysql防止负数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8794589/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com