java - SQLite: "DATABASE"附近:语法错误

标签 java sqlite sqlexception

当我尝试使用 java 在 SQLite 中以编程方式创建数据库时,它会在控制台中生成以下错误。

java.sql.SQLException: near "DATABASE": syntax error
    at org.sqlite.DB.throwex(DB.java:288)
    at org.sqlite.NativeDB.prepare(Native Method)
    at org.sqlite.DB.prepare(DB.java:114)
    at org.sqlite.PrepStmt.<init>(PrepStmt.java:37)
    at org.sqlite.Conn.prepareStatement(Conn.java:224)
    at org.sqlite.Conn.prepareStatement(Conn.java:217)
    at org.sqlite.Conn.prepareStatement(Conn.java:206)
    at com.mmcal.build.BuildDB.executeQuery(BuildDB.java:46)
    at com.mmcal.build.BuildDB.createDB(BuildDB.java:19)
    at MainGen.main(MainGen.java:16)

我的代码是:

public class BuildDB {
Connection connection;
PreparedStatement ps;
ResultSet rs;
String qry;

public void createDB() {
    qry = "CREATE DATABASE IF NOT EXISTS myDb";
    executeQuery(qry);
}
public boolean executeQuery(String qry) {
    int cnt = 0;
    boolean flag = false;
    connection = ConnectionMaster.connectDb();
    try {
        ps = connection.prepareStatement(qry);
        cnt = ps.executeUpdate();
        System.out.println(flag);
    } catch (SQLException e) {
        e.printStackTrace();
    }
    if (cnt == 0) {
        flag = true;
    }

    return flag;

}
}

我的代码有什么问题,或者这是通过编程在 SQLite 中创建数据库的正确方法吗?

最佳答案

使用 SQLite,您只需打开数据库。如果它不存在,它将自动为您创建。然后您可以检查您的表是否存在并根据需要创建它们。

关于java - SQLite: "DATABASE"附近:语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13397592/

相关文章:

java - IllegalStateException 错误

java - 为什么在 Android 上使用 db.exec() 时不需要捕获 SQLExecption?

java - 反转二维数组

java - 如何在所有线程完成时立即做某事?

Java:为什么我的对象实例有两个serialVersionUID?

java - android.database.sqlite.SQLiteException : no such column

java - 在 Tekton Hub 的 Tekton Maven 任务中缓存 Maven 依赖项

c# - UWP - 使用 sqlite 的可移植类库。我是否误解了诱饵+开关组件?

sqlite - 使用 SQLite 和 json_tree 函数从 JSON 对象中提取值

java - 接收 SQLException "Login failed for user"连接到 SQL Server 2008