не заливается дамп

Тема в разделе "Базы данных", создана пользователем ram222, 3 сен 2012.

Модераторы: latteo
  1. ram222

    ram222 Da Vinci

    Регистр.:
    27 апр 2009
    Сообщения:
    744
    Симпатии:
    73
    Пытаюсь залить дамп базы , выдаёт ошибку:
    Код:
    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO `atl_OPTIONS` (`ID`, `NAME`, `VALUE`, `DSC`, `TP`, `MDL`) VALUES ('2' at line 2 
    кусок дампа (первые строчки:(
    Код:
    CREATE TABLE IF NOT EXISTS `%PREFIX%_OPTIONS` ( `ID` int(11) NOT NULL auto_increment, `NAME` varchar(30) NOT NULL default '', `VALUE` text NOT NULL, `DSC` text NOT NULL, `TP` int(1) NOT NULL default '0', `MDL` varchar(100) NOT NULL default '0', PRIMARY KEY (`ID`), UNIQUE KEY `NAME` (`NAME`) ) ENGINE=MyISAM AUTO_INCREMENT=222 DEFAULT CHARSET=utf8
    INSERT INTO `%PREFIX%_OPTIONS` (`ID`, `NAME`, `VALUE`, `DSC`, `TP`, `MDL`) VALUES ('222', 'site_title', 'Заголовок сайта', 'Заголовок сайта', '3', 'com')
    INSERT INTO `%PREFIX%_OPTIONS` (`ID`, `NAME`, `VALUE`, `DSC`, `TP`, `MDL`) VALUES ('223', 'feedback_email', 'support@webportnoy.ru', 'Основной адрес эл. почты', '2', 'com')
    INSERT INTO `%PREFIX%_OPTIONS` (`ID`, `NAME`, `VALUE`, `DSC`, `TP`, `MDL`) VALUES ('224', 'site_keywords', '', 'Keywords - ключевые слова сайта. Требуются для поисковых систем. Перечисляются через запятую.', '3', 'com')
    INSERT INTO `%PREFIX%_OPTIONS` (`ID`, `NAME`, `VALUE`, `DSC`, `TP`, `MDL`) VALUES ('225', 'site_description', '', 'Description - описание сайта. Оно выводится в списке результатов поиска в поисковых системах', '3', 'com')
    INSERT INTO `%PREFIX%_OPTIONS` (`ID`, `NAME`, `VALUE`, `DSC`, `TP`, `MDL`) VALUES ('226', 'display_errors', '', 'Разрешить отображение ошибок интерпретатора (не рекомендуется)', '1', 'com')
    С mysql не сильно знаком, но обычно получается залить всё.
    А этот дамп дали с сайтом, сайт делался в вебстудии.
    В самой студии предупредили что может не получиться залить.
    Я конечно могу позвонить и уточнить, но просто интересно почему так?
     
  2. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.403
    Симпатии:
    1.183
    Для успешного импорта через navicat, обработал в текстовом редакторе npp:
    - Заменил %PREFIX% на xxx
    - строке, где CREATE TABLE добавил " ;" (пробел и ;)
    - остальным строкам добавил ";"
     
    ram222 нравится это.
  3. ram222

    ram222 Da Vinci

    Регистр.:
    27 апр 2009
    Сообщения:
    744
    Симпатии:
    73
    Спасибо, примерно получается.
    Только больше 1500 строк вручную не хочется, может конвертор какой то есть, и как узнать в каком формате эта база?
    Или в (на) каком сервере она работать может?
     
  4. lift

    lift Читатель

    Заблокирован
    Регистр.:
    1 июл 2007
    Сообщения:
    2.226
    Симпатии:
    1.378
    В любом текстовом редакторе сделай автозамену
    ')
    на
    ');
    и потом руками подправь еслигде в ненужном месте поставит, этого должно быть немного.
     
  5. ram222

    ram222 Da Vinci

    Регистр.:
    27 апр 2009
    Сообщения:
    744
    Симпатии:
    73
    Там есть и такие куски :
    Код:
    INSERT INTO `%PREFIX%_OPTIONS` (`ID`, `NAME`, `VALUE`, `DSC`, `TP`, `MDL`)
    И замена так не пойдёт....
    пробую в office разобраться, там можно макросами добавить символы в конце строки.
    Но всё таки хочется знать с какого сервера или сборки этот дамп?
     
  6. lift

    lift Читатель

    Заблокирован
    Регистр.:
    1 июл 2007
    Сообщения:
    2.226
    Симпатии:
    1.378
    В этих кусках эта замена и не нужна.
    Если хочеш разбираться с макросами, то не в офисе, который тебе все ` на ' поменяет, а в TextPipe
    А дамп этот от какой то инсталяшки и ри инсталле она все по человечески на лету в соответствии с настройками вгоняет, а тебе придется руками эти исправления делать и всё.
     
  7. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.403
    Симпатии:
    1.183
    ТС раскрой секрет как ты дамп заливаешь, может всё же каким то скриптом из набора CMS?
    Или строки первые не полностью привёл ...
    Потому как в ошибке у тебя присутствует near 'INSERT INTO `atl_OPTIONS` а значит %PREFIX% ты либо ручками, либо скриптом заменил...

    С большой долей вероятности можно предположить, что новые запросы начинаются с новой строки и тогда в http://notepad-plus-plus.org/ выбери замена -> режим поиска расширенный( \r, \n...) и замени
    \r\n
    на
    ;\r\n
    (перед ; стоит пробел)

    в TextPipe тоже такое можно проделать, хотя, имхо, с npp проще разобраться :)
     
  8. Mizantrop

    Mizantrop Постоялец

    Регистр.:
    26 июл 2007
    Сообщения:
    122
    Симпатии:
    42

    Это обычный МуСкульный формат представления данных.
    Для работы с большими объемами дампов рекомендуется использование OpenOffice,
    там есть некоторая "заточка" под работу с дампами баз.
    Во всяком случае, будет правится таблица, т.е. конкретный столбик данных и т.п., а не весь текст, как это делается в текстовых редакторах, там условий правки можно задавать больше.
    Микрософтовский офис для этого не годится,он без заточки бездарен,а Опен, в то-же самое время - халявный.