我有一栏X
,其类型为double
。是否可以将值插入X中,如“3 + 4”,以便将其存储为7?
我能够在早期版本的mysqlWorkbench中这样做但是从6.3开始我得到错误“Data truncated for row..
”
如果通过终端运行insert命令,同样的工作完全正常。
是否有一些设置/标志设置为按预期工作?
感谢。
编辑:我尝试set sql_mode =''
来抑制错误。错误不存在,但值存储为3而不是7。
答案 0 :(得分:0)
我已在MySQL Workbench 6.3.6(Ubuntu 16.04)中测试过,下面的命令正在运行:
use my_db;
create table my_table(id int primary key auto_increment not null, x double (50,5), y double (50,5));
insert into my_table (x, y) values (7+2, 9+3);
insert into my_table (x, y) values (7.2+2.3, 9.4+3);
insert into my_table (x, y) values (7-2, 9-3.3);
select * from my_table;
输出是:
在我的示例中,您的表格可以存储最多50位数字,小数点后5位数字。
有关MySQL浮点类型的更多信息: https://dev.mysql.com/doc/refman/5.6/en/floating-point-types.html