c sqlite 資料庫加密

2021-05-22 17:15:15 字數 1839 閱讀 1376

用了

ado.net 2.0 sqlite data provider 這樣可以直接利用它來建立乙個

加密的sqlite資料庫。

有關c#**如下:

1、建立空的sqlite資料庫。

//資料庫名的字尾你可以直接指定,甚至沒有字尾都可以

//方法一:建立乙個空sqlite資料庫,用io的方式

filestream fs

=file.create(

「c://test.db「);

//方法二:用sqliteconnection

sqliteconnection.createfile(

「c://test.db

「);

建立的資料庫是個0位元組的檔案。

2、建立加密的空sqlite資料庫

//建立乙個密碼為password的空的sqlite資料庫

sqliteconnection.createfile(

「c://test2.db

「);                

sqliteconnection cnn

=new

sqliteconnection(

「data source=c://test2.db「);

sqliteconnection cnn

=new

sqliteconnection(

「data source=d://test2.db「);

cnn.open();

cnn.changepassword(

「password「);

3、給未加密的資料庫加密

sqliteconnection cnn

=new

sqliteconnection(

「data source=c://test.db「);

cnn.open();

cnn.changepassword(

「password「);

4、開啟加密sqlite資料庫

//方法一

sqliteconnection cnn

=new

sqliteconnection(

「data source=c://test2.db「);

cnn.setpassword(

「password「);

cnn.open();

//方法二

sqliteconnectionstringbuilder builder

=new

sqliteconnectionstringbuilder();

builder.datasource

=@」c

:/test.db「;

builder.password =@」

password「;

sqliteconnection cnn

=new

sqliteconnection(builder.connectionstring);

cnn .open();

注:a、因為加密的函式是利用windows api,故加密後的資料庫只能適用在windows平台,加密的方式是整體檔案加密。

b、加密的演算法是rc4,如果你想採用別的加密演算法來加密,請參考ado.net 2.0 sqlite data provider 的原始碼來修改。

c、相關sqlite資料庫操作類似ado.net 2.0。詳見ado.net 2.0 sqlite data provider的幫助文件。

c、ado.net 2.0 sqlite data provider 版本為:1.0.53.0 ,sqlite版本 : 3.6.0。

d、開發環境為vs2008。

C Sqlite 資料庫加密

用了ado.net 2.0 sqlite data provider 這樣可以直接利用它來建立乙個加密的sqlite資料庫。有關c 如下 1 建立空的sqlite資料庫。資料庫名的字尾你可以直接指定,甚至沒有字尾都可以 方法一 建立乙個空sqlite資料庫,用io的方式 filestream fs ...

C SQLite資料庫入門使用說明

前言 我們在開發應用是經常會需要用到一些資料的儲存,儲存的方式有多種,使用資料庫是一種比較受大家歡迎的方式。但是對於一些小型的應用,如一些移動app,通常的資料庫過於龐大,而輕便的sqlite則能解決這一問題。不但操作方便,而且只需要要乙個檔案即可,在這裡我們來說一說使用c 語言操作sqlite資料...

Android 資料庫加密 SQL加密

android資料儲存之sqlite的介紹及使用 以及contentprovider程式間資料共享 android探索之contentprovider熟悉而又陌生的元件 我們清晰的知道sqlite資料庫預設存放位置 data data pakage database目錄下,對於已經root的手機來說...