SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 10.10.2009 14:40:57

cave76
Участник
Зарегистрирован: 10.10.2009
Сообщений: 7

Ошибка при импорте БД

После загрузки выдает такое:
#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 '1',
  `country_name` varchar(64) default NULL,
  `country_3_code` varchar(3) def' at line 8
Подскажите, где и что надо заменить? И если это из-за разных версий, то как это устранить? Заранее спасибо за ответ.

Неактивен

 

#2 10.10.2009 15:16:20

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Ошибка при импорте БД

Полностью запрос приведите, ошибка как раз перед указанным фрагментом.

Неактивен

 

#3 10.10.2009 15:38:08

cave76
Участник
Зарегистрирован: 10.10.2009
Сообщений: 7

Re: Ошибка при импорте БД

SQL-запрос:

-- -------------------------------------------------------- -- -- ��������� ������� `bak_vm_category_xref` -- CREATE TABLE `bak_vm_category_xref` ( `category_parent_id` int(11) NOT NULL default '0', `category_child_id` int(11) NOT NULL default '0', `category_list` int(11) default NULL, KEY `category_xref_category_parent_id` (`category_parent_id`), KEY `category_xref_category_child_id` (`category_child_id`), KEY `idx_category_xref_category_list` (`category_list`) ) TYPE=MyISAM COMMENT='????? ????? ??????????; -- -- ���� ������ ������� `bak_vm_category_xref` -- INSERT INTO `bak_vm_category_xref` VALUES (0, 1, NULL); INSERT INTO `bak_vm_category_xref` VALUES (0, 2, NULL); INSERT INTO `bak_vm_category_xref` VALUES (0, 3, NULL); INSERT INTO `bak_vm_category_xref` VALUES (0, 4, NULL); INSERT INTO `bak_vm_category_xref` VALUES (0, 5, NULL); INSERT INTO `bak_vm_category_xref` VALUES (0, 8, NULL); INSERT INTO `bak_vm_category_xref` VALUES (0, 9, NULL); INSERT INTO `bak_vm_[...]
Кодировка у БД UTF-8, может в этом дело?

Неактивен

 

#4 10.10.2009 16:01:03

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Ошибка при импорте БД

Вы привели не тот кусок дампа. Я е вижу в указанном запросе

`country_name` varchar(64) default NULL,
  `country_3_code` varchar(3) def




Проблема не в кодировке БД, а в том, что у вас дамп базы испорченный - русский текст из него уже не востановишь. Его (дамп) нужно сделать заново.
Лучше всего это делать с помощью утилиты mysqldump. Подробнее см http://sqlinfo.ru/forum/viewtopic.php?id=583

Неактивен

 

#5 10.10.2009 16:11:55

cave76
Участник
Зарегистрирован: 10.10.2009
Сообщений: 7

Re: Ошибка при импорте БД

Спасибо большое за ответ, буду разбираться.

Неактивен

 

#6 10.10.2009 18:19:52

cave76
Участник
Зарегистрирован: 10.10.2009
Сообщений: 7

Re: Ошибка при импорте БД

Сделал новый бэкап, но ошибка та же.
Это кусок с ошибкой:

CREATE TABLE `bak_vm_country` (
  `country_id` int(11) NOT NULL auto_increment,
  `zone_id` int(11) NOT NULL default '1',
  `country_name` varchar(64) default NULL,
  `country_3_code` varchar(3) default NULL,
  `country_2_code` varchar(2) default NULL,
  PRIMARY KEY  (`country_id`),
  KEY `idx_country_name` (`country_name`)
) TYPE=MyISAM COMMENT='?????? ???? AUTO_INCREMENT=177 ;

Неактивен

 

#7 10.10.2009 18:34:57

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Ошибка при импорте БД

`zone_id` int(11) NOT NULL default '1',

'1' это строка, а у вас колонка типа int (целочисленный). Нужно писать default 1

Неактивен

 

#8 10.10.2009 19:48:13

cave76
Участник
Зарегистрирован: 10.10.2009
Сообщений: 7

Re: Ошибка при импорте БД

Спасибо, это исправил, но сейчас другое вылазит:
#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 '?????? ???? AUTO_INCREMENT=177' at line 8

CREATE TABLE `bak_vm_country` (
  `country_id` int(11) NOT NULL auto_increment,
  `zone_id` int(11) NOT NULL default 1,
  `country_name` varchar(64) default NULL,
  `country_3_code` varchar(3) default NULL,
  `country_2_code` varchar(2) default NULL,
  PRIMARY KEY  (`country_id`),
  KEY `idx_country_name` (`country_name`)
) TYPE=MyISAM COMMENT='?????? ???? AUTO_INCREMENT=177 ;

Неактивен

 

#9 10.10.2009 20:47:28

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Ошибка при импорте БД

Давайте так, вы читаете статьи из третьего пункта FAQ и если после этого не сможете забороть знаки вопроса в дампе, то уже детально будем разбираться откуда они берутся (т.е. как вы его делаете).

Неактивен

 

#10 10.10.2009 22:10:03

cave76
Участник
Зарегистрирован: 10.10.2009
Сообщений: 7

Re: Ошибка при импорте БД

Прошу прощения, если вопросы совсем глупые, но кракозябры получаются сразу после экспорта через phpMyAdmin, еще до переноса на сервер.

Неактивен

 

#11 10.10.2009 22:20:06

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Ошибка при импорте БД

phpMyAdmin - зло.

Я потому и рекомендовал делать дамп с помощью утилиты mysqldump

Неактивен

 

#12 10.10.2009 22:32:46

cave76
Участник
Зарегистрирован: 10.10.2009
Сообщений: 7

Re: Ошибка при импорте БД

Еще раз тысяча извинений, но я не имею понятия, что это такое, и где выполнять команды, в cmd или или это просто файл exe...

Неактивен

 

#13 10.10.2009 22:35:03

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Ошибка при импорте БД

См ссылку в 4ом посте этой темы.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson