为什么str_to_date会返回NULL?

时间:2012-02-18 17:07:15

标签: mysql

我正在尝试使用此查询格式化我从XML文件导入的字符串:

LOAD XML LOCAL INFILE '/home/marco/files/20100712135312815.xml' 
INTO TABLE vcx.cdr_collection ROWS IDENTIFIED BY '<cdr>' (b3, b9, @e6_temp, @f0_temp) 
SET e6 = str_to_date(@e6_temp, '%Y%m%d %H:%i:%s'), f0 = str_to_date(@f0_temp, '%Y%m%d %H:%i:%s');

表格当然是:

CREATE TABLE cdr_collection
(
b3 DOUBLE,
b9 DOUBLE,
e6 DATETIME,
f0 DATETIME
);

如果我运行查询,我在DATETIME字段,e6和f0上获得的所有内容都为null。当我运行这样的更新查询时,出现了奇怪的行为:

update cdr_collection set f0 = str_to_date('20100712 17:49:08', '%Y%m%d %H:%i:%s') where b3 = 7030

这会返回正确的DATETIME数据并使用b3 = 7030更新字段。为什么str_to_date()在我的更新查询中相应地工作但在我的初始加载查询中没有?我在更新查询中写的字符串是从XML文件中复制的。

0 个答案:

没有答案