没有数据源配置为运行此 SQL

2022-09-02 02:55:30

我在Java中创建表(用于数据库)时遇到了一点问题。

目前,我正在使用IntelliJ IDEA,当我编写用于创建表的代码时,文本以黄色突出显示,当我查看问题时,我看到以下消息:

“没有数据源配置为运行此 SQL 并提供高级代码帮助。通过问题菜单 (⌥⏎) 禁用此检查。

我尝试更改SQL方言(因为之前也出现了该消息),但没有结果。

我该怎么办?我在代码中写了一些错误的东西,但我不知道为什么其他例子可以完美地工作。

代码如下:

public static void createTable(){

    //connect to database
    String url = percorsoDatabase;

    //Statement create new table
    String sql = "CREATE TABLE IF NOT EXISTS Tabella (id PRIMARY KEY," +
            "video TEXT," +
            "game TEXT," +
            "firstAction TEXT," +
            "secondAction TEXT," +
            "thirdAction TEXT);";

    try {
        Connection conn = DriverManager.getConnection(url);
        Statement stmt = conn.createStatement();
        stmt.execute(sql);
    } catch (SQLException e ){
            System.out.println(e.getMessage());
    }

}

我已经创建了一个SQLite数据库并建立了一个有效的连接(在此之前),如果有用,这里是代码。

public static void main(String[] args) {

    createNewDatabase();
    connection();
    createTable();
}

public static void createNewDatabase(){

    String url = percorsoDatabase;

    Connection conn;
    try {

     conn = DriverManager.getConnection(url);
        if (conn != null){
            DatabaseMetaData meta = conn.getMetaData();
            System.out.println("The driver name is" + meta.getDriverName());
            System.out.println("A new database has been created.");
        }
    } catch (SQLException e){
        System.out.println(e.getMessage());
    }

}

public static void connection(){

    Connection conn = null;
    try {
        //String url = "jdbc:sqlite://Volumes/Isma/Documenti/SUPSI/APA/Stage/"
        //        + "Beans/esperimento/dati.db";
        conn = DriverManager.getConnection(percorsoDatabase);
        System.out.println("Connection to SQLite established.");
    } catch (SQLException e){
        System.out.println(e.getMessage());
    } finally {
        try {
            if (conn != null){
                conn.close();
            }
        } catch (SQLException e){
            System.out.println(e.getMessage());
        }
    }

}

所以。。。如果你能帮助我,我将不胜感激。

提前感谢您的回答,祝你有美好的一天!


答案 1

消息:

没有数据源配置为运行此 SQL 并提供高级代码帮助。

有点明确,恕我直言有点不必要,因为我真的认为我不需要为每个我们有一些SQL查询的项目配置数据库。

要处理此消息,您有两个选择:

  1. 使用消息上方的 + 并使用“配置数据源”选项将数据源配置到项目中:ALTENTERAdd a data source

  1. 在 IDE 设置上的检查选项上禁用此 SQL 方言检测检查:

Disable the SQL dialect detection

您可能还需要禁用以下位置上的无数据源配置检查:

Inspections -> SQL -> No data sources configured

第二个选项对我来说是最好的方法,除非您真的想要或需要在项目中使用数据源。


答案 2

此警告表明您尚未在 Intellij Idea 的“数据库工具”窗口中配置数据源。这并不意味着您的代码是错误的,它只是表明您没有基于数据库架构的代码完成。

此处描述了 Intellij 中数据源的配置 https://www.jetbrains.com/help/idea/database-tool-window.html


推荐