В Windows я могу использовать этот оператор для загрузки данных XML в базу данных:
LOAD XML LOCAL INFILE
'c:/users/yourname/desktop/myfile.xml'
INTO TABLE MyTable
ROWS IDENTIFED BY '<product>'
Однако я, может казаться, не выполняю это на Ubuntu 11.2.0 с последней версией установленного сервера сообщества MySQL.
Это - оператор, который я использую для своей установки Ubuntu:
LOAD XML LOCAL FILE '/home/ryan/tech.xml'
INTO TABLE `t`
ROWS IDENTIFIED BY '<product>';
Таким образом, мой вопрос, куда я помещаю XML-файлы на свой веб-сервер, если я хочу получить доступ к ним с MySQL?
У вас есть ошибка в первой строке
LOAD XML LOCAL FILE '/home/ryan/tech.xml'
Это не просто FILE
, это INFILE
LOAD XML LOCAL INFILE '/home/ryan/tech.xml'
Подробнее: http: / /dev.mysql.com/doc/refman/5.5/en/load-xml.html
Все команды и запросы одинаковы в Windows и Linux.
У Вас может также быть проблема с разрывами строки - если XML-файл был создан в Windows, его разрывы строки будут отличаться от Ubuntu - см. http://en.wikipedia.org/wiki/Newline