我嘗試使用 jetbrains.exposed 庫在 Kotlin 中創建并連接到 SQLite 資料庫。
import org.jetbrains.exposed.sql.Database
import org.jetbrains.exposed.sql.SchemaUtils
import org.jetbrains.exposed.sql.transactions.TransactionManager
import org.jetbrains.exposed.sql.transactions.transaction
private fun provideSqliteDatabase(databaseConfig: DatabaseConfig?): Database {
val path = databaseConfig?.url ?: "./"
File(path).mkdirs()
logger.info("SQLite Database path: $path/database.db")
return Database.connect("jdbc:sqlite:$path/database.db", "org.sqlite.JDBC")
.apply {
TransactionManager.manager.defaultIsolationLevel =
Connection.TRANSACTION_READ_UNCOMMITTED
provideTables()
}
}
我嘗試使用一些 PRAGMA SQLite 命令來提高我的資料庫的性能。如何設定這些配置,例如 set JOURNAL_MODE:
PRAGMA JOURNAL_MODE='OFF';
要點:我在 Ubuntu 20.04 上運行我的程式。
uj5u.com熱心網友回復:
我相信在這種情況下您必須撰寫純 SQL:
transaction {
exec("PRAGMA JOURNAL_MODE='OFF'", explicitStatementType = StatementType.EXEC)
}
uj5u.com熱心網友回復:
您可以嘗試使用journal_mode=OFF. 如果您檢查SQLite 驅動程式測驗,您會發現它會自動決議和執行這些引數。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/328808.html
