[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL s

使用Navicat导入同学的.sql文件时报错

'USING BTREE, CONSTRAINT `fk1` FOREIGN KEY (`Mid`) REFERENCES `member` (`Mid`)' at line 14

在网上找了好久,终于找到原来是数据库版本不一致,出现原因是mysql 5.1和mysql 5.0在处理到索引语句时有所区别。参考以下链接

修改(或者颠倒过来):

KEY `fk11` (`Mrank`) USING BTREE改为KEY `fk11` USING BTREE(`Mrank`)

报错原文:[Err] 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 'USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- -----------------------' at line 7
[Err] -- ----------------------------
-- Table structure for join
-- ----------------------------
DROP TABLE IF EXISTS `join`;
CREATE TABLE `join` (
  `Mrank` varchar(11) NOT NULL COMMENT '会员等级',
  `condition` int(11) NOT NULL COMMENT '成为会员条件',
  `prepolicy` double(10,2) NOT NULL COMMENT '优惠政策',
  `pretime` varchar(20) NOT NULL COMMENT '优惠时间',
  PRIMARY KEY (`Mrank`),
  KEY `fk11` (`Mrank`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Table structure for member
-- ----------------------------
DROP TABLE IF EXISTS `member`;
CREATE TABLE `member` (
  `Mid` int(11) NOT NULL AUTO_INCREMENT COMMENT '会员id',
  `Mrank` varchar(11) NOT NULL COMMENT '会员等级',
  `name` varchar(30) NOT NULL,
  `age` smallint(6) NOT NULL,
  `work` varchar(30) DEFAULT NULL COMMENT '工作单位',
  `telephone` varchar(11) NOT NULL,
  `piont` int(11) NOT NULL COMMENT '会员积分',
  PRIMARY KEY (`Mid`),
  KEY `fk_Member_Join` (`Mrank`),
  CONSTRAINT `fk` FOREIGN KEY (`Mrank`) REFERENCES `join` (`Mrank`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Table structure for shopping
-- ----------------------------
DROP TABLE IF EXISTS `shopping`;
[Err] 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 'USING BTREE,
  CONSTRAINT `fk1` FOREIGN KEY (`Mid`) REFERENCES `member` (`Mid`)' at line 14
[Err] CREATE TABLE `shopping` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `Oid` varchar(40) NOT NULL COMMENT '订单编号',
  `Mid` int(11) NOT NULL,
  `Oname` varchar(30) NOT NULL COMMENT '物品名称',
  `type` varchar(30) NOT NULL COMMENT '物品分类',
  `quantity` int(11) NOT NULL COMMENT '数量',
  `price` float(2,0) NOT NULL COMMENT '标价',
  `derate` float(2,0) NOT NULL COMMENT '减免',
  `pay` float(2,0) NOT NULL COMMENT '应付款',
  `gain` int(11) NOT NULL COMMENT '获得积分',
  `time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '购买时间',
  PRIMARY KEY (`id`),
  KEY `f` (`Mid`) USING BTREE,
  CONSTRAINT `fk1` FOREIGN KEY (`Mid`) REFERENCES `member` (`Mid`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `name` varchar(30) NOT NULL,
  `pwd` varchar(30) NOT NULL,
  PRIMARY KEY (`name`),
  KEY `fk` (`name`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
[Msg] Finished - Unsuccessfully
--------------------------------------------------

参考链接mysql导入数据时报错:USING BTREE ) ENGINE=MyISAM DEFAULT CHARSET=utf8解决方法_amaoatao的博客-CSDN博客

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值