sqlite3官方版本是不支持密码的
如果需要加密码可以用下面版本,
https://github.com/Willena/sqlite-jdbc-crypt
加密码很方便
<dependency>
<artifactId>sqlite-jdbc</artifactId>
<groupId>io.github.willena</groupId>
<version>3.37.2</version>
</dependency>
测试函数,cipher=sqlcipher&legacy=1&kdf_iter=4000 这部分是设置密码部分
public static void main( String args[] )
{
try {
Class.forName("org.sqlite.JDBC");
Connection connection = DriverManager.getConnection("jdbc:sqlite:d:/mydatabase.db?cipher=sqlcipher&legacy=1&kdf_iter=4000");
Statement stat = connection.createStatement();
String tableName="Sqlite";
if(tableName != null && !"".equals(tableName)){
stat.executeUpdate("drop table if exists "+tableName+";");
}
// //创建表
// StringBuffer createTableSql=new StringBuffer("create table tableTest (");
// createTableSql.append("id INTEGER, name NTEXT,");
// createTableSql.append("typeId INTEGER, logoUrl text");
// createTableSql.append(");");
// stat.executeUpdate(createTableSql.toString());
} catch (Exception e ) {
System.err.println( e.getClass().getName() + ": " + e.getMessage() );
System.exit(0);
}
System.out.println("Opened database successfully");
}
如果是多语言间调用,非官方的sqlite3可能兼容不好,建议尝试一下 H2数据库。