首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将CSV文件加载到表中时日期值不正确

问将CSV文件加载到表中时日期值不正确
EN

Stack Overflow用户
提问于 2019-02-06 06:57:11
回答 2查看 3.3K关注 0票数 0

我正在尝试将数据填充到Employee表中,其中将B_Date设置为Mysql中的日期。但如果你犯了这个错误-

行导入失败,错误:(“不正确的日期值:'05/06/1985‘用于第1行的'B_DATE’”,1292)

那么,如何将特定表或列的格式转换为DD-MM-YYYY?

我试过了-

从员工中选择DATE_FORMAT(B_DATE,'%d-%m-%y');

在加载数据时仍会出现相同的错误。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-02-06 07:03:24

由于MySql在日期类型列中接受y-m-d格式的日期,因此需要STR_TO_DATE函数将日期转换为yyyy dd格式,以便以下列方式插入:

代码语言:javascript
复制
INSERT INTO table_name(today) 
VALUES(STR_TO_DATE('07-25-2012','%m-%d-%y')); 

类似地,如果要以Mysql格式以外的不同格式选择日期,则应尝试DATE_FORMAT函数。

代码语言:javascript
复制
SELECT DATE_FORMAT(today, '%m-%d-%y') from table_name;

编辑:

更改列以接受以您的格式表示的数据,

代码语言:javascript
复制
mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
票数 0
EN

Stack Overflow用户

发布于 2019-11-19 07:04:18

摩萨德作品的最后一个建议,解释了这里是如何:

若要将表单字符串的日期从csv文件插入到mysql表,请执行以下操作。您也可以在mysql工作台上运行以下命令。

step1:隐蔽表日期列类型到varchar()并导入文件。

step2:使用str_to_date函数更新date列的所有值。

更新Table SET date = STR_TO_DATE(date,'%d-%m-%Y')

step3:重置日期列数据类型回到日期。

更改表Table列date date日期

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54548161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档