将 ODS 文件导入 MySQL

Posted

技术标签:

【中文标题】将 ODS 文件导入 MySQL【英文标题】:Importing ODS file to MySQL 【发布时间】:2015-07-01 17:18:48 【问题描述】:

我正在尝试使用 phpMyAdmin 在 mysql 数据库中导入 ODS 文件。

我单击左侧所需的表 (table1),然后单击“导入”选项卡。

文件中的数据与表中的数据相匹配。我选中了选项以指定我的 ODS 文件的第一行包含我的列的名称。文件的格式是正确的。

MySQL 然后给我一个错误:#1054 - 'field list' 中的未知列 'trd_id'

INSERT INTO `total_ws_lu`.`table2` (`trd_id`, `lng_id`, `sta_id`, `typ_id`, `civ_id`, `mkt_id`, `trd_libelle`, `trd_sort`, `loc_id`, `pay_id`, `tyt_id`) VALUES ...

问题在于 mySQL(随机?)选择了要导入的表,table2 而不是 table1。

【问题讨论】:

【参考方案1】:

这样导入ODS文件时,phpMyAdmin使用工作表名作为表名进行导入;您可以在电子表格程序中重命名工作表,以适应现有的表格名称。另一种选择是导入到table2,然后复制(使用 SQL 命令)到现有表(类似于

INSERT INTO table1 (`trd_id`,`lng_id`) SELECT `trd_id`, `lng_id` FROM table2

应该有效)。

您可能还需要调整电子表格中的列名以匹配表格的列名;在电子表格的顶部插入一行并将每个 MySQL 列的名称放在此处的第一行,然后在导入 phpMyAdmin 时选中“文件的第一行包含表列名称”的复选框。

【讨论】:

为了解决我的问题,我使用电子表格公式创建了 SQL 命令,并将这些生成的命令复制到 SQL 文件中。但是感谢您对工作表名称的建议!

以上是关于将 ODS 文件导入 MySQL的主要内容,如果未能解决你的问题,请参考以下文章

在单元格中使用换行符导入 ods

使用 phpmyadmin 从文件导入表时丢失随机字段中的数据

将.sql文件导入mysql(最终导入excel)

如何轻松将多个 sql 文件导入 MySQL 数据库?

怎么将数据导入到mysql数据库中

如何将xls文件导入MySQL表