Decimal类型的字段为什么不能为Null?

secondonsite2 2014-11-02 02:42:28
我的一张表,其中有一Decimal类型的字段,设置可以为Null,Default Null.。但是数据导入表中以后发现该列无值的时候自动成为0. 我将导入前的文本文件的空值写上Null,导入后还是0.请问怎么样能设成Null?谢谢。刚刚接触MySQL,没基础,本论坛也是刚刚注册,不知道有多少分可以撒,给说说吧,再次感谢!
...全文
3729 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
aniwn 2016-04-23
  • 打赏
  • 举报
回复
生成insert语句写文件,source这个文件
scilencing 2016-03-21
  • 打赏
  • 举报
回复
是不是数据库设置了不能为空
secondonsite2 2014-11-04
  • 打赏
  • 举报
回复
已经验证了,Insert没有问题,但Load就不能Null。问题是我的数据量比较大,用Insert不可行,用Load怎么能出Null?有经验的高手提示下,谢谢!
  • 打赏
  • 举报
回复
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
  • 打赏
  • 举报
回复
支持楼上

56,912

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧