您的位置:首页 > 编程语言 > Java开发

转:OPTION SQL_SELECT_LIMIT=DEFAULT java连接mysql错误

2015-11-10 22:42 591 查看
今天公司要搬家了,为了方便在搬家的时候引起的网络变化而导致无法使用的公司测试服务器上的数据库,所以准备将服务器上的数据库备份到本机。

项目启动时创建本地的数据库连接的时候频繁的报出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 'OPTION SQL_SELECT_LIMIT=DEFAULT' at line 1

经过网络查找和测试发现了原因!

公司测试服务器上的mysql版本是:5.0.87,



在这里执行 SET OPTION SQL_SELECT_LIMIT=DEFAULT,可以看到执行成功,



我本机的mysql版本是:5.6.15,



而在我电脑上执行 SET OPTION SQL_SELECT_LIMIT=DEFAULT,是错误的,



而项目中使用的mysql驱动mysq-connector-java-5.0.8-bin.jar,会在创建数据库的时候发送测试语句SET OPTION SQL_SELECT_LIMIT=DEFAULT,上面可以看到mysql5.6的版本已经不在支持该语句,所以会报错。

在stackoverflow上也有相关的解答:http://stackoverflow.com/questions/15669270/option-sql-select-limit-default

解决办法:更新数据库驱动文件到最新的推荐版本,下载地址:http://dev.mysql.com/doc/relnotes/connector-j/en/news-5-1.html

另外还在网上找到一个驱动文件各版本的状态表。

Connector/J 版本Driver类型JDBC 版本MySQL Server 版本状态
5.143.0, 4.04.1, 5.0, 5.1, 5.5,5.6,5.7推荐
5.043.04.1, 5.0正常维护
3.143.04.1, 5.0
3.043.03.x, 4.1
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: