mysqlimport - проблема с пробелами в имени таблицы - PullRequest
1 голос
/ 25 февраля 2011

Работа с некоторыми серьезно некомпетентными проектами баз данных здесь. Перемещение приложения из MS Access в mySQL, и на данный момент важно сохранить имена таблиц. Однако создатель базы данных Access имеет пробелы в именах таблиц ...

Я попытался выполнить этот импорт с мягкими кавычками, жесткими кавычками, обратными галочками и без кавычек, но все дают

    "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 ]

1 голос
/ 28 февраля 2011

В конце концов, мое решение - разделить массивный файл с разделителями на части и импортировать через phpMyAdmin. Если кто-нибудь знает способ указать имя таблицы с пробелами в ней для синтаксиса mysqlimport, я был бы признателен за помощь!

// 4.19.2011 Обновление

Нашел лучший способ, используя SQL, да.

TRUNCATE TABLE `Chain Citation Table`;
LOAD DATA LOCAL  INFILE ' Chain Citation Table.txt' INTO TABLE `Chain Citation Table`;
1 голос
/ 25 февраля 2011

Вы можете попробовать использовать этот Доступ к MySQL конвертеру , он хорошо работал в прошлом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...