MySQL转储未导入。。SQL错误

MySQL转储未导入。。SQL错误,mysql,windows,mysqldump,Mysql,Windows,Mysqldump,我有一台装有MySQL 5.5的Windows 2003服务器。我试图导入一个MySQL转储,但是在创建的表上生成了一个语法错误。当我在Linux 5.1安装上尝试相同的查询时,没有问题 原始数据不存在,所以我现在有点卡住了 CREATE TABLE `articledata` ( `ID` integer (10) UNSIGNED NOT NULL AUTO_INCREMENT , `templateid` integer (11) NOT NULL DEFAULT 0

我有一台装有MySQL 5.5的Windows 2003服务器。我试图导入一个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;
ERROR 1064:您的SQL语法在以下位置附近出现错误:TYPE=InnoDB字符集latin1 COLLATE latin1\u swedish\u ci;
应该是:

# Notice Type should be Engine
)ENGINE=InnoDB DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;
应该是:

# Notice Type should be Engine
)ENGINE=InnoDB DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;

您导入的转储很可能来自具有不同设置的不同数据库。我假设指定的字符集无效,但它是您当前的mysql实例,我将使用以下链接再次检查:

您可以尝试删除要成为的最后一个零件

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`)
);

这在这里工作正常,因此这实际上是服务器的字符集配置问题。

您导入的转储很可能来自具有不同设置的不同数据库。我假设指定的字符集无效,但它是您当前的mysql实例,我将使用以下链接再次检查:

您可以尝试删除要成为的最后一个零件

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`)
);

这在这里可以正常工作,因此这实际上是服务器的字符集配置问题。

而您得到的错误是…?而您得到的错误是。。。?