首页 > 解决方案 > IntelliJ - 连接到 PostgreSQL 的问题

问题描述

我是 PostgreSQL 新手(我通常使用其他数据库引擎),我也不经常使用 Java。

我的问题是我得到以下异常:

java.sql.SQLException: No suitable driver found for DATABASE_NAME
 java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
    at
 java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)

我遵循了本教程:http ://www.postgresqltutorial.com/postgresql-jdbc/connecting-to-postgresql-database/并添加了 postgresql-42.2.5.jar 作为库。

在此处输入图像描述

问题在于将驱动程序添加为库,如屏幕截图所示,没有任何效果。

所以我的问题是:如何使用 Java 和最新的 IntelliJ 连接到 PostgreSQL 数据库?

任何帮助,将不胜感激。

更新 1: 在此处输入图像描述

更新2:由于已请求代码:我已将原始代码替换为会导致错误的最小代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class IngestData
{
    protected static String url;
    protected static final String user = "user";
    protected static final String password = "password";

    public static void main(String[] args)
    {
        Connection connection = null;
        url = args[args.length-1];
        try
        {
            connection = DriverManager.getConnection(url, user, password);
            System.out.println("SUCCESS");

        } catch (SQLException e)
        {
            System.out.println("ERROR");
            e.printStackTrace();
        }
    }
}

控制台输出为:

ERROR
java.sql.SQLException: No suitable driver found for http://127.0.0.1:10282/db01617792
    at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:702)
    at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:228)
    at IngestData.main(IngestData.java:17)

Process finished with exit code 0

这是包含代码的 git 存储库的链接: https ://github.com/ka6555/StackOverflow-Postgresql-Problem.git

更新3:我发现了错误:

我需要改变

protected static String url;

protected static String url = "jdbc:postgresql://";

url = args[args.length-1];

url += args[args.length-1];

虽然这解决了我最初的问题,但程序现在卡在执行以下行:

connection = DriverManager.getConnection(url, user, password);

没有错误,但程序将像无限循环一样运行,永远不会超出此代码行。

更新4:我现在已经解决了所有问题。

标签: javapostgresqlintellij-idea

解决方案


您的项目依赖项中似乎缺少 postgres jar 文件。

  • 打开项目结构(在 Windows 上为 Ctrl+Alt+Shift+S)
  • 选择模块/依赖项选项卡
  • 您应该会看到如下内容:

在此处输入图像描述

如果缺少 postgres 依赖项:

  • 单击屏幕截图右侧的 + 号
  • 选择库/项目库和你的 postgres jar 文件

您的代码现在应该可以运行了。让我知道它是否有帮助。

注意:请在 GitHub 上提供您的最小工作代码以获得更快的响应。


推荐阅读