0

好的,所以我决定遵循 Youtube 上关于数据库的教程,并在 PhpMyAdmin 上创建了一个数据库,然后将备份文件SQL导出(我认为是一个表,而不是整个数据库)到我的桌面。我想使用 JDBC 连接到它,并使用下面的代码进行了尝试。(请注意,我确保驱动程序已正确安装出于调试目的,请假设我的桌面上仅存在该文件,我有驱动程序,以下代码,仅此而已。另外,我不确定如何将文件放在.SQL(customers.sql)Class.forName("com.mysql.jdbc.Driver");sqllocalhost

Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/customers","root", "");

这段代码产生了一个异常:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'customers'
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:395)
at com.mysql.jdbc.Util.getInstance(Util.java:370)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1038)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4120)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4052)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:925)
at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1704)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1250)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2467)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2500)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2285)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:818)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:31)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:395)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:400)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317)
at java.sql.DriverManager.getConnection(DriverManager.java:579)
at java.sql.DriverManager.getConnection(DriverManager.java:221)
at com.gmail.PhysicistSarah.TestProject.Database.DatabaseDriver.<init>(DatabaseDriver.java:32)
at com.gmail.PhysicistSarah.TestProject.Core.Main.databaseTrial(Main.java:99)
at com.gmail.PhysicistSarah.TestProject.Core.Main.main(Main.java:49)
4

3 回答 3

3

您无法连接到 SQL 文件。SQL 文件就是这样:一个文件,里面有一些文本。如果你想连接到在 localhost 上运行的 MySQL 数据库,你需要在你的机器上安装 MySQL,启动它,创建一个数据库,在其中创建表,然后填充表。

请按照MySQL 文档了解如何执行此操作。

于 2013-07-05T07:28:14.363 回答
0

错误清楚地提到您没有名为“客户”的数据库。在通过 jdbc 连接之前,请确保您在 mysql 中有数据库。或者在 mysql 或 jdbc 代码中的模式名称中可能存在一些拼写错误。

于 2013-07-05T07:24:25.723 回答
0

如果显示您的数据库,则通过查询检查您的(customers)数据库拼写,然后复制该名称并放入您的 java 代码。其他方式通过触发查询来创建mysql databaseshow databases;customerscreate database customers;

于 2013-07-05T07:26:41.603 回答