为什么错了?显示第13行错误

为什么错了?显示第13行错误

import java.sql.*;
public class jdbcDemo {
   public static void main(String[] args) {
      try {
         Class.forName ( "com.mysql.jdbc.Driver" );
        String url = "jdbc:mysql://localhost:3306/user";
         String username = "root";
         String password = "root";
         Connection connection = DriverManager.getConnection (url, username, password );
         Statement statement = connection.createStatement ();
         String sql = "select * from jdbctest;";
         ResultSet resultSet = statement.executeQuery ( sql );
         while (resultSet.next ()) {
            int id = resultSet.getInt ( "uid" );
            String user = resultSet.getString ( "username" );
            String pass = resultSet.getString ( "password" );
            System.out.println ( id + " :" + user + ":" + pass + ";" );
         }
      } catch (SQLException e) {
         e.printStackTrace ();
      } catch (ClassNotFoundException e) {
         e.printStackTrace ();
      }
   }
}

---错误提示:
F:\jdk\bin\java.exe "-javaagent:F:\IDEA\IntelliJ IDEA 2018.1.6\lib\idea_rt.jar=64938:F:\IDEA\IntelliJ IDEA 2018.1.6\bin" -Dfile.encoding=UTF-8 -classpath F:\jdk\jre\lib\charsets.jar;F:\jdk\jre\lib\deploy.jar;F:\jdk\jre\lib\ext\access-bridge-64.jar;F:\jdk\jre\lib\ext\cldrdata.jar;F:\jdk\jre\lib\ext\dnsns.jar;F:\jdk\jre\lib\ext\jaccess.jar;F:\jdk\jre\lib\ext\jfxrt.jar;F:\jdk\jre\lib\ext\localedata.jar;F:\jdk\jre\lib\ext\nashorn.jar;F:\jdk\jre\lib\ext\sunec.jar;F:\jdk\jre\lib\ext\sunjce_provider.jar;F:\jdk\jre\lib\ext\sunmscapi.jar;F:\jdk\jre\lib\ext\sunpkcs11.jar;F:\jdk\jre\lib\ext\zipfs.jar;F:\jdk\jre\lib\javaws.jar;F:\jdk\jre\lib\jce.jar;F:\jdk\jre\lib\jfr.jar;F:\jdk\jre\lib\jfxswt.jar;F:\jdk\jre\lib\jsse.jar;F:\jdk\jre\lib\management-agent.jar;F:\jdk\jre\lib\plugin.jar;F:\jdk\jre\lib\resources.jar;F:\jdk\jre\lib\rt.jar;C:\Users\Gyc\Desktop\JDBC\out\production\JDBC;C:\Users\Gyc\Desktop\JDBC\lib\junit-4.11.jar;C:\Users\Gyc\Desktop\JDBC\lib\mysql-connector-java-5.1.7-bin.jar jdbcDemo
java.sql.SQLException: Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property.
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
	at com.mysql.jdbc.ConnectionImpl.configureClientCharacterSet(ConnectionImpl.java:1689)
	at com.mysql.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:3444)
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2062)
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:723)
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
	at java.sql.DriverManager.getConnection(DriverManager.java:664)
	at java.sql.DriverManager.getConnection(DriverManager.java:247)
	at jdbcDemo.main(jdbcDemo.java:13)

Process finished with exit code 0


正在回答

登陆购买课程后可参与讨论,去登陆

2回答

java.sql.SQLException: Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property.  

通过这个报错信息,可以判断,应该是你驱动包版本比较低。

同学可以看一下教辅:JDBC连接mysql8.0案例教辅.pdf

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


好帮手慕阿莹 2018-08-17 18:08:20

同学的数据库是哪个版本的呢?应该是你的 数据库版本比较高,驱动比较低,建议同学可以换一个更高版本的驱动试试。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 孤zero #1
    mysql。是最新的 驱动是源码中的jar包! 是驱动太低了的原因吗?
    2018-08-17 18:11:53
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Java数据库开发与实战应用2018版
  • 参与学习           人
  • 提交作业       277    份
  • 解答问题       4297    个

Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师