我正在做一个简单的注册程序来练习。为此,我需要连接到数据库。我尝试了不同的方法,但都没有成功
我正在使用Xampp和MySQL Workbench。我没有设置任何密码或用户名。在MySQL Workbench上,它显示:连接:名称:demo主机:127.0.0.1端口:3306服务器:mariadb。org二进制分发版本:10.1.37-MariaDB连接器:C 8.0.14登录用户:root当前用户:root@localhostSSL:已禁用
import java.sql.*;
public class Driver {
public static void main(String[] args) {
try {
// 1. Get connection to the database
// Connection myConnection = DriverManager.getConnection("jdbc:mysql://localhost:3306/demo", "student", "student");
//Connection myConnection = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/demo");
String url = "jdbc:mysql://127.0.0.1:3306/mysql";
Connection myConnection = DriverManager.getConnection(url);
//2. Create a statement
Statement myStatement = myConnection.createStatement();
//3. execute sql query
ResultSet myResultSet = myStatement.executeQuery("SELECT * FROM students");
//4. process the result set
while(myResultSet.next()) {
System.out.println(myResultSet.getString("lname") + ", " + myResultSet.getString("fname"));
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
java.sql.SQLSyntaxErrorException: Access denied for user ''@'localhost' to database 'mysql'
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:827)
at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:447)
at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:237)
at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:270)
at jdbcdemo.Driver.main(Driver.java:14)
连接 URL 采用以下格式:
mysql://<username>:<password>@<host>:<port>/<db_name>
这个答案是推测性的,因为我还没有对MySQL进行实际测试,但我看到您当前的方法存在两个问题:
root
)DriverManager的三参数变量。getConnection
,它接受JDBC URL、用户名(默认值)和密码(在您的情况下为空)把这些放在一起,你可以尝试:
String url = "jdbc:mysql://127.0.0.1:3306/mysql";
Connection myConnection = DriverManager.getConnection(url, "root", "");
然后,试着使用你的连接,假设上面的工作。
我一直在努力使用数据库URL概述部分提到的以下连接字符串从Spring Boot应用程序连接H2数据库: 我还尝试了许多不同的tcp(服务器模式)连接组合,但仍然出现错误,例如“连接中断:”java。网运行Spring Boot app时,SocketTimeoutException:连接超时:localhost:9092”。 那么,如何解决这个问题并通过服务器模式连接到H2数据库呢?
问题内容: 这是我简单的测试脚本。只是试图做一个基本的选择语句。在教程中找到了基本知识。 经过一个小时的搜索并尝试了一些解决方案,我比开始时就更接近解决问题了。希望我在某个地方犯了一个简单的错误,但我找不到它… 这是我遇到的错误 任何帮助将非常感激! 问题答案: 如果未在URL中指定,则该方言的默认驱动程序将为“ SQL Server” [1]。这意味着您需要在/etc/unixODBC/odbc
我已经把学校的IT项目带回家完成,虽然我可以在学校连接到我的数据库,但我不能在我自己的电脑上连接到它。我更改了数据库类中的目录,并且几乎100%确定该目录是正确的。它总是给我这样的错误: 驱动程序成功加载无法连接:[Microsoft][ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序java.sql.sqlException:[Microsoft][ODBC驱动程序管理器]未找到数据
2012年12月19日下午7:26:55 DBConnect严重:null java.sql.sqlexception:[Microsoft][ODBC Driver Manager]未找到数据源名称,也未在sun.jdbc.ODBC.jdbc.ddc.createsqlexception(jdbcodbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.jdbc.
当我试图使用Spring Boot 2.2.1连接到DB2时。HikariCP池无法成功连接,但同时连接到JDBC。 null 附加的属性文件:
我无法连接到MySQL数据库。它发生在更新MySQL和JDK之后。我添加了,但没有结果。这是我从eclipse中得到的一个例外: 不建议在没有服务器身份验证的情况下建立SSL连接。根据MySQL 5.5.45、5.6.26和5.7.6的要求,如果未设置explicit选项,默认情况下必须建立SSL连接。为了符合不使用SSL的现有应用程序,verifyServerCertificate属性设置为“f
测试通过,即数据输入数据库,检查,一切正常。 但当我在调试模式下运行测试,在测试末尾放一个断点,尝试连接到数据库时,它是空的,连表都没有,更别提数据了。要连接,我使用dbever。在连接字符串中,我编写jdbc:h2:mem:mytestdb;db_close_on_exit=false(我尝试了jdbc:h2:tcp://localhost:9092/mem:mytestdb)。检查连接通过,写
我正试图使用Postgre JDBC驱动程序从SQL Workbench/J连接到红移数据库,但我无法通过。我收到这个错误“连接尝试失败”。jdbc驱动程序的位置正确。我还尝试通过Aginity Workbench进行红移,但它无法显示数据库列表。我有一个连接数据库的url,格式是但令人惊讶的是,我甚至无法ping主机。我可以通过amazon控制台看到数据库的健康状况良好。所以,我的问题是: 为什