MySQL转储未导入。。SQL错误
我有一台装有MySQL 5.5的Windows 2003服务器。我试图导入一个MySQL转储,但是在创建的表上生成了一个语法错误。当我在Linux 5.1安装上尝试相同的查询时,没有问题 原始数据不存在,所以我现在有点卡住了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
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`)
);
这在这里可以正常工作,因此这实际上是服务器的字符集配置问题。而您得到的错误是…?而您得到的错误是。。。?