gpt4 book ai didi

java - 如何在sqlite JDBC中设置数据库密码?

转载 作者:搜寻专家 更新时间:2023-11-01 03:22:17 24 4
gpt4 key购买 nike

在我的应用程序中,我使用 JDBC 连接到 sqlite 数据库,这里是创建数据库并在其中创建示例表的示例代码。

public class Main {

public static void main(String[] args) {
try {
Class.forName("org.sqlite.JDBC");

Connection connection = DriverManager.getConnection("jdbc:sqlite:db.sqlite","admin","123");

Statement statement = connection.createStatement();

String query = "CREATE TABLE Users(ID INTEGER PRIMARY KEY AUTOINCREMENT," +
"Login TEXT, " +
"Password TEXT);";
statement.execute(query);

String query1 = "INSERT INTO Users(Login, Password) VALUES ('user1','password1')";
String query2 = "INSERT INTO Users(Login, Password) VALUES ('user2','password2')";
String query3 = "INSERT INTO Users(Login, Password) VALUES ('user3','password3')";

statement.addBatch(query1);
statement.addBatch(query2);
statement.addBatch(query3);

statement.executeBatch();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
}

现在的问题是,我可以轻松打开我的 db 文件,而无需从外部输入任何用户或密码信息,那么我提供给 DriverManager 的参数在哪里使用以及如何为数据库指定密码?

如评论中所述,在 .Net 中建立连接时我可以执行以下操作

using(SQLiteConnection con = new SQLiteConnection("Data Source=db.sqlite; Password=123;")
{
//code goes here
}

那么 JDBC 的等价物是什么?

最佳答案

无法为 sqlite 数据库设置密码。 Sqlite3 支持密码保护。我建议您选择 H2 数据库 ( http://www.h2database.com/html/main.html ),因为它速度非常快,并且是开源的,也是用 java 编写的。它提供嵌入式数据库和服务器数据库。 Sqlite 不支持重命名和删除列。但是 h2 提供了所有必要的功能。

关于java - 如何在sqlite JDBC中设置数据库密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27218985/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com