public static void main(String[] args) throws Exception{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(
"jdbc:mysql://127.0.0.1:3306/Turniir", "root", "root");
System.out.println("Connected to MySQL");
con.close();
}
首先它说未知数据库'turniir'。 在mysql workbench中,有一个连接127.0.0.1:3306,它使用一个模式,在工作台中我可以插入行,我得到一个连接。用户和pw应该是root用户,至少我用它们登录。但是有30个错误......
同样在eclipse中,我在引用的库下有mysql连接器5.1.27,当我检查我的代码时,eclipse没有显示任何红色标记,只有当我运行时。
我认为问题出在jdbc:mysql://127.0.0.1:3306 / Turniir“,”root“,”root“这段代码,要么我以某种方式更改了服务器,要么我不知道密码或用户名是服务器或我不知道正确的服务器IP /名称...
数据库:http://www.upload.ee/image/3724759/mysqldb.png
连接东西:http://www.upload.ee/image/3724938/cra0.png
这些是错误:
Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'turniir'
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.Util.getInstance(Util.java:386)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1054)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4237)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4169)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:928)
at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1750)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1290)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2493)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2526)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2311)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:834)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:416)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:347)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Program.main(Program.java:12)
答案 0 :(得分:0)
您说Turiir
不是数据库名称。这就是你收到错误的原因
"jdbc:mysql://127.0.0.1:3306/Turniir", "root", "root");
// This need to be database ^^^^
// this username ^^^^
// this password ^^^^
如果你运行mysql并输入show databases
并且turniir
没有显示,那么它不是数据库。用有效的数据库替换上面的代码。
答案 1 :(得分:0)
可能是'turniir'区分大小写,错误消息显示'Turniir'