如何在导入phpmyadmin时设置空值?

时间:2011-01-12 21:41:51

标签: import null phpmyadmin

我正在尝试将.csv文件导入phpmyadmin,其中有几个字段有意留空。我需要将这些字段注册为空值,而不是只留下空白字符串。

我知道在字段属性中,您可以为每个字段选择允许“null”与“not null”,但在导入时它仍然不会将单元格更改为空值。导入后我可以手动检查每条记录上每个字段的空框,但考虑到我正在使用的数据量,这是不切实际的。

有没有办法让phpmyadmin在导入时将这些空白单元格设置为空值?

3 个答案:

答案 0 :(得分:6)

我遇到过类似的问题。

如果您下载带有NULL值的PhpMyAdmin CSV文件,您会注意到NULL不会被引号括起来。所以你会有这样的一行:

“1”, “2”; NULL; NULL

“2”; “2”; NULL; NULL

但是,如果您在Open Office Calc之类的内容中编辑CSV文件,它可能会更改此选项以将引号括在NULL之内,如下所示:

“1”, “2”, “NULL”; “NULL”

“2”; “2”; “NULL”; “NULL”

应该做什么工作来搜索并替换[“NULL”= NULL]。

在您的情况下,因为您有空(空白)字段,您将看到进行搜索并替换如下:

[,, =,NULL,]

并且可能在行的末尾第二次传递NULL值,如下所示:

[,\ n =,NULL \ n]

答案 1 :(得分:0)

我遇到了同样的问题,jmbertucci的答案很有效。我确实遇到了另外一个问题。对于像这样的一行数据的情况

"hello","world",,,,,,

在一行中有多组空值进行搜索替换为[,, =,NULL,],因为jmbertucci建议在第一次传递时不会像你想要的那样工作。相反,你最终会以

结束

"hello","world",NULL,,NULL,,NULL

你应该继续进行搜索替换,直到你最终更换了0次

答案 2 :(得分:0)

古老的问题,但是如果像我这样的另一个MySQL菜鸟遇到它。

如果您负责CSV文件的创建,例如当您备份自己的数据库时,可以避免查找/替换rigamarole jmbertucci描述。在phpMyAdmin中,如果您选择" custom"导出方法,您会看到replace NULL with:,默认为NULL。只需将其更改为"NULL"即可为您节省一步。