我遇到错误代码“java.sql.SQLNonTransientConnectionException:无法创建与数据库服务器的连接”的问题。我正在尝试使用 JDBC 与数据库建立连接,凭据拼写正确。您能帮我检查一下这个项目中可能出现的问题吗?
package com.example.daily.db;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.example.daily.R;
import com.mysql.cj.protocol.Resultset;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class controler extends AppCompatActivity {
private controler controlador;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tercera);
controlador = new controler();
}
public static void micontroler (){
String usuario = "root";
String password = "Prueb@1";
String url = "jdbc:mysql://localhost:3306/daily_db";
Connection conexion;
Statement statement;
Resultset rs;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
try {
conexion = DriverManager.getConnection(url,usuario,password);
statement = conexion.createStatement();
statement.executeUpdate("INSERT INTO USUARIOS(EMAIL,NOMBRES,APELLIDOS,APODO,FECHA_NACIMIENTO) VALUES ('Teste','TESTn','TESTa','TESTp','14/06/22')");
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
我检查了连接,重写了代码,将控制器添加到了清单中。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
理想情况下,当连接字符串错误时会出现此问题。您可以检查一下形成的连接字符串的格式是否正确。
mysql jdbc 连接的预期连接字符串如下,
请参考https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-jdbc-url-format.html 有关连接字符串的更多详细信息。
此外,请确保数据库已启动并在代码中提供的端口上运行,即 localhost:3306。