情況:Windows 11 - 最新更新;.NET 6 控制臺應用程式 - 最新更新;sqlite-net-sqlcypher nuget 包 (1.8.116) - 也是最新版本;Visual Studio(2019 和 2022)和 Rider - 所有最新版本)
我創建了一個小測驗應用程式(見下文)
var options = new SQLiteConnectionString(databasePath, true, "testpassword");
var db = new SQLiteConnection(options);
db.CreateTable<AttributionRecord>();
db.InsertOrReplace(new AttributionRecord(-1, "Test01", "Me", "Test Attribution 01"));
string queryString = "select * from AttributionRecord";
List<AttributionRecord> list = db.Query<AttributionRecord>(queryString);
foreach (AttributionRecord attributionRecord in list)
{
Console.WriteLine($"{attributionRecord.Id} - For Who : {attributionRecord.AttributionForWho} - For What : {attributionRecord.AttributionForWhat} - Attribution : {attributionRecord.Attribution}");
}
一切正常,我(最終)擁有一個加密的 SQLite 資料庫。但是,當我嘗試在 DB Browser(舊版本(3.10.1)和新版本(3.12.1))甚至在購買的應用程式中打開我新創建的資料庫之一時:SQLiteManager(版本 4.8.3)(來自 SQLabs :https : //www.sqlabs.com/sqlitemanager.php 表示他們支持 sqlcypher 加密資料庫),我似乎無法打開資料庫。
反過來也是如此,當我嘗試打開一個受 sqlcypher 保護并通過管理器創建的資料庫時,我無法在 c# 中打開它(sqlite 例外 - 檔案不是資料庫)。
這不是 stackoverflow 上其他一些問題的重復,我已經嘗試了所有可以找到的內容。對于較舊的 DB Browser,我使用 4096 作為頁面大小,因為它被宣傳為 sqlcypher 資料庫的默認頁面大小。
uj5u.com熱心網友回復:
使用SQLiteStudio(版本 3.3.3),我可以打開和編輯我的加密資料庫和表。
我只是有點失望,像 SQLiteManager 這樣的商業產品不能做免費產品可以做的事情。
老實說,我以前從未聽說過 SQLiteStudio,但它是一個很好的開源專案,可以完成這項作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/465371.html
標籤:C# sqlite 密码加密 db-浏览器-sqlite sqlitemanager
上一篇:嘗試在Django中的raw()查詢中檢索資料時沒有此類列錯誤
下一篇:如何獲得查詢嵌套評論?
