问题与分析

在执行sql文件时发现报错如下:

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....

该错误导致有一个表创建失败,一时间很诧异。因为我所执行的sql语句是由SQLyog导出来的,怎么会有语法错误呢?因为报错里的中文字符变成了乱码,一开始以为是sql语句里的中文字符存在着编码问题,重新修改了好几遍,最后把中文字符去掉了也还是会报同样的错误。

最后百度后才知道,原来这是MySQL的一个bug:MySQL 5.1和MySQL 5.0在处理到索引语句时有所区别,我所执行的sql语句是从高版本的MySQL里导出来的。

当存在UNIQUE KEY的表导出来时,其sql如下:

UNIQUE KEY `idx_name` (`column_name`) USING BTREE

对于该语句,低版本的MySQL是不能识别的,所以就报错了。

解决方法

将高版本MySQL导出来的sql语句里的column_name调整到USING BTREE后边就行了,如下:

UNIQUE KEY `idx_name` USING BTREE (`column_name`)

参考链接

mysql里面using btree_MySQL - 执行sql报错USING BTREE相关推荐

  1. 数据库执行sql报错Got a packet bigger than 'max_allowed_packet' bytes及重启mysql

    准备在mysql上使用数据库A,但mysql5经过重装后,上面的数据库已丢失,只得通过之前备份的A.sql重新生成数据库A. 1.执行sql报错 在执行A.sql的过程中,出现如下错误:Got a p ...

  2. 关于执行SQL报错:java.lang.ArrayIndexOutOfBoundsException: 6

    关于执行SQL报错:java.lang.ArrayIndexOutOfBoundsException: 6 由于工作需要,需创建一个表C,表数据由表A left join 表B生成,表A数据量大概30 ...

  3. Oracle 执行sql报错 ORA-20401:Reject By Dbsec

    在项目执行迁移数据的过程中有一条sql报错 Reject By Dbsec 字面意思被 Dbsec拒绝 之后我将sql 贴出来放在Navicat中执行,也是报同样的错误,并且sql没有任何的语法错误 ...

  4. 执行sql报错,错误代码是 1064 ,其实是这个问题。

    执行这条sql会报错 1064 CREATE TABLE `tb_user` (`id` INT(11) NOT NULL AUTO_INCREMENT,`username` VARCHAR(45) ...

  5. java代码中执行sql报错:java.sql.SQLException: ORA-00923: 未找到要求的 FROM 关键字

    最近写了特别多的数据库同步接口,需要在java程序中拼接大段的sql,然后再提交执行,出现了很多次ORA-00923错误,都有点见怪不怪了. 比如下面这段代码,在执行 db.execute(inser ...

  6. 一次'诡异'的执行SQL报错ORA-03113的问题处理

    银行某系统存储过程报错,重新调起仍报错,而前几天这个一直正常.通过应用日志定位到报错信息, ORA-03113: 通信通道的文件结尾 进程 ID: 36503726 会话 ID: 586 序列号: 6 ...

  7. Oracle执行SQL报错:ORA-00922

    1. 问题描述 Oracle数据库执行序列化脚本时,报错:ora-00922 missing or invalid option. 2. 解决方法 对于set define off ,这个是sqlpl ...

  8. postgresql导出表然后再次执行sql报错

    报relation "performance_id_seq" does not exist 运行如下建表语句,报错: -- 建表,并用上面的序列作为主键自增序列 CREATE TA ...

  9. hive on spark 执行sql报错

    sql差不多就是这个样子 疯狂join,然后别人说这个sql跑不动了.报错 INFO] 2022-09-20 11:26:58.500  - [taskAppId=TASK-1850-1276992- ...

最新文章

  1. 要不要读博?机器学习博五学生和强化学习博士展开了一场battle
  2. java jni调用dll文件_Java通过jni调用动态链接库
  3. 面试----Object类
  4. java 1000个线程_关于Java多线程的一个问题
  5. shell脚本中的引用
  6. 【Android 逆向】Android 进程注入工具开发 ( 编译注入工具 | 编译结果文件说明 | 注入过程说明 )
  7. Linux rpm 命令参数使用详解[介绍和应用]
  8. 【docker】第一节:centos安装docker
  9. Http Module 介绍[转]
  10. linux开启hadoop服务,Hadoop 2.7.4 关闭与启动
  11. Eclipse如何从导入SVN上导入项目
  12. 通过DriverManager接口获取连接
  13. 前端图表生成利器--ECharts推荐
  14. python请编写程序、生成随机密码_python习题:登录注册小程序(用户名密码存在文件中)、生成随机密码小程序...
  15. IDEA的依赖包报红问题
  16. 基于.net实现F4一键杀死指定进程(龙之谷秒掉器)
  17. linux 查看vcf文件,转载-VCF格式详解
  18. 免服务器软件库源码实现超级管理动态发布会员系统卡密系统充值对接卡密网软件发布板块后台功能 软件商店1.3.1
  19. win10中查看wifi密码
  20. excel使用教程_汉字资料如何进行数据分析?Excel中医学汉字资料转化为数字资料视频教程——If/Iserror/Find函数的结合使用...

热门文章

  1. 汉字转拼音(代码下载)
  2. 什么移动电源质量好,质量好的移动电源推荐
  3. CSS3中使用rgba来调节透明度
  4. 快递单号查询,一键查询物流,时效在线查询
  5. 大数据回顾2017年网络购物APP:渗透率从63.5%增长至69.9%
  6. Ubuntu Zsh乱码安装Powerline字体的方法
  7. 基于nodejs+selenium自动过滑动验证码的QQ刷赞
  8. 一些VR渲染延迟优化方法
  9. physxloader.dll x86_PhysXLoader64.dll下载|PhysXLoader64.dll下载官方版【32位|64位】-太平洋下载中心...
  10. 【spring】集成Web、druid、jdbcTemple实现免登录时长两天半