社区
MySQL
帖子详情
Decimal类型的字段为什么不能为Null?
secondonsite2
2014-11-02 02:42:28
我的一张表,其中有一Decimal类型的字段,设置可以为Null,Default Null.。但是数据导入表中以后发现该列无值的时候自动成为0. 我将导入前的文本文件的空值写上Null,导入后还是0.请问怎么样能设成Null?谢谢。刚刚接触MySQL,没基础,本论坛也是刚刚注册,不知道有多少分可以撒,给说说吧,再次感谢!
...全文
3785
13
打赏
收藏
Decimal类型的字段为什么不能为Null?
我的一张表,其中有一Decimal类型的字段,设置可以为Null,Default Null.。但是数据导入表中以后发现该列无值的时候自动成为0. 我将导入前的文本文件的空值写上Null,导入后还是0.请问怎么样能设成Null?谢谢。刚刚接触MySQL,没基础,本论坛也是刚刚注册,不知道有多少分可以撒,给说说吧,再次感谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aniwn
2016-04-23
打赏
举报
回复
生成insert语句写文件,source这个文件
scilencing
2016-03-21
打赏
举报
回复
是不是数据库设置了不能为空
secondonsite2
2014-11-04
打赏
举报
回复
已经验证了,Insert没有问题,但Load就不能Null。问题是我的数据量比较大,用Insert不可行,用Load怎么能出Null?有经验的高手提示下,谢谢!
~!@#¥%……&×()——+
2014-11-04
打赏
举报
回复
load的时候,文本文件里,,两个逗号之间的字段应该会处理成空吧
secondonsite2
2014-11-03
打赏
举报
回复
ACMAIN_CHM
2014-11-03
打赏
举报
回复
建议楼主先尝试一下 insert 语句。然后以断定是LOAD出的问题,还是 "
Decimal类型的字段为什么不能为Null?
"
rucypli
2014-11-03
打赏
举报
回复
导入的时候有warning吗 有的话show warnings;看看
roundman
2014-11-03
打赏
举报
回复
是不是导入的程序有问题? Decimal字段的自动转换成0?
secondonsite2
2014-11-03
打赏
举报
回复
应该是Decimal(9,2)
secondonsite2
2014-11-03
打赏
举报
回复
应该是Decimal(9,0)。上面写错了。
secondonsite2
2014-11-03
打赏
举报
回复
我设置的Decimal(9.2) Null Default Null. 导入的数据时从Excel转换成.txt文件,Decimal列有些行有数值,有些行没有数值,是空。但导入后,应该是Null的都成了0.00. 后来我把.txt文件的空写上Null,再导入还是0.00.我没辙了。
SQL-木子Lee
2014-11-02
打赏
举报
回复
我不知道楼主是怎么设置的decimal字段,但是我刚才建了一个表试了一试 create table a (a int , b decimal(3,2) default null); insert b(a) values(1) , (2); select * from a; 你可以试试,自己看一下结果的 关于decimal数据类型的设置必须是decimal(M,D),这里M必须大于D,表示数据位数为M,小数位数为D,这种数据类型精确度很高
u010203057
2014-11-02
打赏
举报
回复
支持楼上
sql重
decimal
类型
字段
,乘除法结果为
NULL
异常问题
由于a * b / c 结果小数点位数超过30,所以结果为
NULL
。
字段
a,数据
类型
decimal
(22,10)
字段
b,数据
类型
decimal
(22,10)
字段
c,数据
类型
decimal
(22,10)M是数据总位数,其范围为“1~65”,默认值是10;D是小数点位数,其范围是“0~30”,但不得超过M。
decimal
格式“
DECIMAL
(M,D)”。a * b / c 结果为
NULL
。解决方案:缩短小数点位数。
mysql数据库
decimal
类型
字段
,插入空字符串报错解决方案
页面
字段
可填可不填,数据库这个
字段
类型
是
decimal
类型
,不填传到后台是个空字符串,插入表的时候就会报错。也
不能
给个其他的默认值,就想存个空值进去。 在这吐槽一句,又不是涉及到钱的
字段
,设置成
decimal
类型
,深井冰。。。。 解决方案就是使用
null
if(xxx,xxx)这个函数,这个函数大概意思是如果前后两个值相同就为
null
,不同就为第一个值 insert into tableA(name) values(
null
if(#{orgTypeId},'')) 具体可以看一下这个函数的意思就明白了
mysql add
decimal
类型
_MySQL数据
类型
DECIMAL
用法
前言:当我们需要存储小数,并且有精度要求,比如存储金额时,通常会考虑使用
DECIMAL
字段
类型
,可能大部分同学只是对
DECIMAL
类型
略有了解,其中的细节还不甚清楚,本篇文章将从零开始,为你讲述
DECIMAL
字段
类型
的使用场景及方法。1.
DECIMAL
类型
简介
DECIMAL
从MySQL 5.1引入,列的声明语法是
DECIMAL
(M,D)。NUMERIC与
DECIMAL
同义,如果
字段
类型
定义为NUM...
decimal
类型
不能
为空,自定义update更新
null
值的问题。
if (!string.Is
Null
OrEmpty(yt_time_limit_1)) { entity["yt_time_limit_1"] = Convert.To
Decimal
(yt_time_limit_1); } else ...
mysql
decimal
可以为空_
decimal
类型
不能
为空,自定义update更新
null
值的问题。
if (!string.Is
Null
OrEmpty(yt_time_limit_1)){entity["yt_time_limit_1"] = Convert.To
Decimal
(yt_time_limit_1);}else{entity["yt_time_limit_1"] = "
null
";}cd.UpdateFaultComponent(entity);public bool UpdateF...
MySQL
57,065
社区成员
56,760
社区内容
发帖
与我相关
我的任务
MySQL
MySQL相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MySQL相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章