MySQL for Excel导出错误地格式化日期

时间:2016-09-30 14:33:38

标签: mysql excel

我正在尝试将Excel工作表导出到MySQL表。我要求创建一个新表并从excel插入数据。

使用Excel 2013,全新的MySQL for Excel加载项和全新的MySQL(在Windows 7的桌面上运行)。

首先我会收到错误消息

  

错误代码:1064。您的SQL语法有错误;检查   手册,对应右边的MySQL服务器版本   语法在附近使用   ':00:00,10:00:00,9 / 1 / 2010,12 / 20/2010年,' HEIEUS”, 'K2I4', 'M',0,0,3, 'X', 'PP', '2010-11-'   在第4行

将SQL语句粘贴到MySQL Workbench查询后,我被告知在日期前面有一个丢失的括号。

我发现如果我在日期周围添加引号(以DateTime格式),那么该行将被读入并且错误会将一行向下移动到下一行插入。我见过的示例确实显示日期文本应该在引号内(https://www.ntchosting.com/encyclopedia/databases/mysql/insert-date/)。

复制sql语句,粘贴到MySQL Workbench,然后为数千行的所有日期添加引号是不切实际的。有没有人知道如何让Excel正确格式化日期。或者有人甚至以前见过这个?

1 个答案:

答案 0 :(得分:0)

这有点像黑客,因为它适用于Excel的MySQL插件,应该可以工作。您可以尝试将数据从Excel导出为CSV。确保导出时引用每列。

然后使用LOAD DATA将数据导入MySQL:

LOAD DATA INFILE 'data.csv' INTO TABLE tbl_name
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;