引用十进制值

发布于 2024-08-27 12:09:07 字数 178 浏览 9 评论 0原文

我将运行总计存储在 Decimal(10,2) 字段中,并在处理项目时添加到其中。

update foo set bar = bar + '3.15'

大约 20% 的时间会发出警告“第 4 行的列 'bar' 的数据被截断”

如果更新值未加引号,则永远不会发出此警告。 小数值应该加引号吗?

I am storing a running total in a Decimal(10,2) field and adding to it as items are processed.

update foo set bar = bar + '3.15'

About 20% of the times a warning is issued "Data truncated for column 'bar' at row 4"

This warning is never issued if the update value is not quoted.
Should decimal values be quoted?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

凤舞天涯 2024-09-03 12:09:07

当然不是。

整数和浮点数不是字符串,永远不应该被引用。只有 MySQL 允许在它们周围加上引号。

Of course not.

Integers and floats are not strings and should never be quoted. Only MySQL even allows quotes around them.

绮烟 2024-09-03 12:09:07

您添加的值是否可能超出 Decimal(10,2) 的限制?

例如,

update foo set bar = bar + '3.149999'

会导致“数据被截断”警告,因为该字段只能存储小数点右侧的 2 位数字(而不是 6 位)。

Is it possible that the value you add exceeds the limits of Decimal(10,2)?

E.g.

update foo set bar = bar + '3.149999'

would cause a 'Data truncated' warning since the field can only store 2 digits to the right of the decimal point (not 6).

呢古 2024-09-03 12:09:07

否,十进制值按原样指定。如果你引用它们,它将解释为 varchar。

No, The decimal values are specified as is. If you quote them it will interpret as a varchar.

殊姿 2024-09-03 12:09:07

不!引号仅用于字符串,例如 text、char、varchar 等

No! Quotes are used for strings only, like text, char, varchar, etc

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文