MySQL DUMP не импортирует .. ОШИБКА SQL - PullRequest
0 голосов
/ 18 января 2012

У меня есть сервер Windows 2003 с MySQL 5.5. Я пытаюсь импортировать дамп MySQL, однако в таблице создается синтаксическая ошибка. Когда я пытаюсь выполнить тот же запрос на моей установке Linux 5.1, проблем не возникает.

Исходных данных не существует, поэтому я немного застрял сейчас ..

CREATE TABLE `articledata` 
(
    `ID` integer (10) UNSIGNED  NOT NULL AUTO_INCREMENT , 
    `templateid` integer (11) NOT NULL DEFAULT 0, 
    `issueid` integer (11) NOT NULL DEFAULT 0, 
    `articletitle` varchar (255) NOT NULL, 
    `articletext` text NOT NULL, 
    `articlepic1` varchar (255) NOT NULL, 
    `articlepriority` integer (11) NOT NULL DEFAULT 0, 
    `articledetails` text NOT NULL, 
    `articledetailstitle2` varchar (255) NOT NULL, 
    `articledetails2` text NOT NULL, 
    `articlepic2` varchar (255) NOT NULL, 
    `articledetailstitle` varchar (255) NOT NULL, 
    `articlepic1a` varchar (255) NOT NULL, 
    `subclusterid` integer (11) NOT NULL,
    PRIMARY KEY (`ID`)
) TYPE=InnoDB CHARACTER SET latin1 COLLATE latin1_swedish_ci;

Ошибка

ERROR 1064 <42000>: You have an error in your SQL syntax near: TYPE=InnoDB CHARACTER SET latin1 COLLATE latin1_swedish_ci;

Ответы [ 2 ]

3 голосов
/ 18 января 2012

Должно быть:

# Notice Type should be Engine
)ENGINE=InnoDB DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
0 голосов
/ 18 января 2012

Дамп, который вы импортируете, вероятнее всего, получен из другой базы данных с другой настройкой. Указанный набор символов, который я предположил бы, недействителен, является вашим текущим экземпляром mysql. Я бы дважды проверил по этой ссылке:

http://dev.mysql.com/doc/refman/5.5/en/charset-server.html

Вы можете попробовать удалить последнюю часть, чтобы стать

CREATE TABLE `articledata` 
(
    `ID` integer (10) UNSIGNED  NOT NULL AUTO_INCREMENT , 
    `templateid` integer (11) NOT NULL DEFAULT 0, 
    `issueid` integer (11) NOT NULL DEFAULT 0, 
    `articletitle` varchar (255) NOT NULL, 
    `articletext` text NOT NULL, 
    `articlepic1` varchar (255) NOT NULL, 
    `articlepriority` integer (11) NOT NULL DEFAULT 0, 
    `articledetails` text NOT NULL, 
    `articledetailstitle2` varchar (255) NOT NULL, 
    `articledetails2` text NOT NULL, 
    `articlepic2` varchar (255) NOT NULL, 
    `articledetailstitle` varchar (255) NOT NULL, 
    `articlepic1a` varchar (255) NOT NULL, 
    `subclusterid` integer (11) NOT NULL,
    PRIMARY KEY (`ID`)
);

Это прекрасно работает, так что это действительно проблема конфигурации набора символов с вашего сервера.

...