2012-06-12 5 views
0

Я экспортировал sql с сервера MySQL (версия из экспортированного файла говорит: 5.1.41), и я пытаюсь запустить экспортированный sql на новом сервере MySQL, который в debug говорит, что версия клиента - «5.1.41», но server_info paramater говорит «5.5.15-log» (я использую расширение PHP MySQLi).Ошибка синтаксиса SQL (PHP MySQLi)

Я получаю следующее сообщение об ошибке:

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 'CREATE TABLE `mojo_global_regions` (id int(11) NOT NULL AUTO_INCREMENT, reg' at line 22 

А вот кусок кода, он жалуется:

CREATE TABLE IF NOT EXISTS `mojo_global_regions` (
    `id` int(11) NOT NULL AUTO_INCREMENT, 
    `region_id` varchar(100) DEFAULT '', 
    `region_name` varchar(100) DEFAULT '', 
    `layout_id` int(5) DEFAULT NULL, 
    `content` text, 
    PRIMARY KEY (`id`), 
    KEY `region_id` (`region_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=19 ; 

Может кто-нибудь увидеть, что не так с этим синтаксисом?

Заранее благодарен!

+0

что такое 'KEY region_id (region_id)' ?? –

+0

@FahimParkar Создает индекс в поле region_id с именем region_id. –

+1

с использованием вышеуказанного запроса создается таблица. [см. это] (http://sqlfiddle.com/#!2/057ca/1) –

ответ

1

Похоже, что перед CREATE TABLE есть инструкция, которая не прекращается должным образом.

+0

Вышло все, что было до CREATE TABLE, и это сработало. Благодаря! Однако все до того, как CREATE TABLE был закомментирован, так что не уверен, если синтаксис комментария («-» комментариев конца строки) был неправильным. Это то, что дал мне экспорт MySQL, но, возможно, я что-то упустил, и вы не можете запускать эти комментарии с помощью метода mysqli-> query PHP. – Chrisui

Смежные вопросы