2014-04-09 2 views
0

Я использую этот синтаксис для вставки 50 записей в таблицу MYSQL из в PHP скрипт:LOAD DATA INFILE с сервера не работает

$sql = "LOAD DATA INFILE '/home/myusername/timeshts/hmo/tiertwo/myBuilders/BuilderTwo/sql-cron-files/overtime-item.sql' INTO TABLE `ot-item` CHARACTER SET 'utf8' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'"; 

$result = mysql_query($sql,$conn); 
if($result) { echo "Load data Done!!!"; } 

Я в основном используется для дорожек и мест для Windows, это это Linux, и я думаю, что это проблема пути. Я использую абсолютный путь к серверу, так как я не уверен, где «каталог данных или каталог базы данных так же рекомендуется в документации mySQL. Я полагаю, что у меня нет доступа ни к одному из этих каталогов на общем хосте - настолько абсолютным является мой лучший выбор. Есть что-то, чего я не вижу в синтаксисе, который я просто не вижу? Я написал сценарий, поэтому я знаю, что строки заканчиваются новым символом строки, а столбцы разделяются одним символом commma.

ответ

0

Просто догадайтесь, но, возможно, вам не хватает/в начале пути.

+0

привет, я на самом деле использовал fwd-слэш в начале, а затем пробовал без него - я отредактирую свой вопрос и добавлю его снова просто для ясности - спасибо –

0

Вам нужна привилегия файла.

Обратитесь к администратору базы данных выполнить следующую команду

субсидия файл на . - 'usr' @ '%';

+0

Я дам вам поход и вернусь с обновлением чтобы помочь кому-либо еще с этой неприятной проблемой. –

+0

Так что ничего больше. проверить разрешение файла для ls -lrth /home/myusername/timeshts/hmo/tiertwo/myBuilders/BuilderTwo/sql-cron-files/overtime-item.sql погодный процесс mysql, имеющий разрешения или нет. – user3048109

+0

все еще ждет ответа от администратора базы данных на хостинге - ив посмотрел на права доступа к файлам, а сценарий overtime-item.sql имеет 644 - родительский и вложенные папки, в которых он находится, - 755 - не понимал ваш последний ответ (im a Win пользователь помнит :-) –