好吧,所以我决定遵循 Youtube 上有关 SQL
数据库的教程,我在 PhpMyAdmin 上创建了一个数据库,然后导出(我认为是一个表,而不是整个数据库) SQL
备份文件(customers.sql)
到我的桌面。我想使用 JDBC 连接到它,我用下面的代码尝试了它。(请注意,我确保驱动程序已正确安装 Class.forName("com.mysql.jdbc.Driver");
出于调试目的,请假设我的桌面上仅存在该文件,我有驱动程序、以下代码,没有其他任何东西。此外,我不确定如何获取 sql
文件本地主机
。
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)
最佳答案
您无法连接到 SQL 文件。 SQL 文件就是这样:一个文件,里面有一些文本。如果要连接到在本地主机上运行的 MySQL 数据库,则需要在计算机上安装 MySQL、启动它、创建数据库、在其中创建表并填充表。
关注MySQL documentation了解如何做到这一点。
关于java - Java 中 SQL 连接的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17483240/