MySQL Workbench 从 CSV 导入 NULL

Posted

技术标签:

【中文标题】MySQL Workbench 从 CSV 导入 NULL【英文标题】:MySQL Workbench Import NULL from CSV 【发布时间】:2018-12-23 06:52:55 【问题描述】:

我一辈子都无法为 CSV 中的空白单元格设置 mysql Workbench 导入 NULL。

我试过了:

空白 空 \N 每个有和没有“”

如何在我想通过 Workbench 导入 MySQL 的 CSV 文件中表示一个单元格为“空”?

【问题讨论】:

同样的问题...使用 Workbench 从另一个数据库导出,现在无法正确导入空值,看起来开发人员忘记测试导入功能 我最终放弃并做了一个命令行导入LOAD DATA LOCAL INFILE 但列出所有列标题很乏味... 【参考方案1】:

自 MySQL Workbench 版本 8.0.16(于 2019 年 4 月 25 日发布)以来,增加了一个用于上传 .csv 文件的选项——“null 和 NULL 词作为 SQL 关键字”。当将此选项选择为 YES 时,.csv 文件中不带引号的 NULL 表达式(NULL,而不是“NULL”,)将用于此目的。

【讨论】:

不错的发现 - 我有时间会检查一下。 这个选项在哪里?【参考方案2】:

如果您尝试将 CSV 导入模型以创建插入脚本(您不会获得其他答案中描述的相同选项),请尝试以下操作:

\func NULL

当您将模型转发到数据库时,您还可以使用此语法调用如下函数来插入当前日期时间:

\func CURRENT_TIMESTAMP

【讨论】:

【参考方案3】:

您可以通过将工作台更新到最新来解决您的问题。

【讨论】:

【参考方案4】:

我建议切换到 Navicat for MySQL——如果只是用于 csv 表导入向导。在反复尝试让 MySQLWorkbench 导入向导为我的 CSV 文件工作后,我放弃了。我回忆起在一个早期项目中使用 Navicat,它完美无缺。对于此导入,我能够毫无问题地将包含多个空日期时间值的 15000 多行 CSV 加载到我的 MySQL 表中。

奇怪的是 MySQLWorkbench 仍然没有解决这个烦恼。但在他们这样做之前,Navicat 提供了一个简单的替代方案。

【讨论】:

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

在 MySQL Workbench 中,使用“表数据导入向导”导入 CSV 会创建空表

为啥 MySQL Workbench 表数据导入向导会导入 0 条记录?

mysql 导入 csv文件中数据,只能导入第一行

您如何解决以下错误?我正在尝试使用数据表导入向导将 csv 文件加载到 Workbench

使用 SQL Workbench 将 csv 文件导入 AWS Redshift 数据库

如何将数据库从MySQL Workbench导入phpMyAdmin而不会在尝试中死亡?