mysqlimport - 表名中的空格问题

时间:2011-02-25 19:14:19

标签: ms-access mysqlimport

在这里处理一些严重不合格的数据库设计。将应用程序从MS Access移动到mySQL,目前保留表名称很重要。但是,Access db创建者在其表名中有空格......

我尝试使用软引号,硬引号,反引号和没有引号进行此导入,但都给出了

    "check the manual that corresponds to your MySQL server version for the right
    syntax to use near 'Citation Table' at line 1, 
    when using table: Chain Citation Table"

我看到你可以在某些命令中转义空格,例如rm Chain\ Citation\ Table.txt,但我从中得到了同样的错误。

以下是一个例子:

mysqlimport --host=mysql.myhost.com --user=dbuser -p \
--local --delete \
--fields-optionally-enclosed-by='|'   \
--fields-terminated-by=';' \
--lines-terminated-by='\n'   \
dbname "Chain Citation Table.txt"

处理这种混乱局面的正确方法是什么?我是否必须创建一个名为SomethingWithoutSpaces的保存表并导入到该表然后复制?

感谢您的任何建议。

2 个答案:

答案 0 :(得分:1)

您可以尝试使用此Access to MySQL converter,它在过去对我有用。

答案 1 :(得分:1)

最后,我的解决方案是将大量分隔文件拆分为多个部分并通过phpMyAdmin导入。如果有人知道如何为mysqlimport语法指定一个带有空格的表名,我将非常感谢他们的帮助!

// 4.19.2011更新

使用SQL找到了更好的方法,呃。

TRUNCATE TABLE `Chain Citation Table`;
LOAD DATA LOCAL  INFILE ' Chain Citation Table.txt' INTO TABLE `Chain Citation Table`;