csqlite加密
你的 sqlite3資料庫是用 SEE 加密的嗎? 如果是了話,試一下通過python執行以下sqlite pragma命令來提供解密key
PRAGMAkey='your-secret-key';
根據 SEE的文檔,通過 PRAGMA 命令也可以提供解密key,而不需sqlite3_key_v2() 這個C API。你試一下。
② CSqlStatement Error:SQLITE_MISUSE是什麽意思
上面這句話的意思是。文件被加密或者不是一個資料庫文件所以你在創建sqlstatement對象的時候會出錯
③ 怎麼加密和解密sqlite資料庫
加密一個未加密的資料庫或者更改一個加密資料庫的密碼,打開資料庫,啟動SQLiteConnection的ChangePassword() 函數
// Opens an unencrypted database
SQLiteConnection cnn = newSQLiteConnection("Data Source=c:\\test.db3");
cnn.Open();
// Encrypts the database. The connection remains valid and usable afterwards.
cnn.ChangePassword("mypassword");
解密一個已加密的資料庫調用l ChangePassword() 將參數設為 NULL or "" :
// Opens an encrypted database
SQLiteConnection cnn = newSQLiteConnection("Data Source=c:\\test.db3;Password=mypassword");
cnn.Open();
// Removes the encryption on an encrypted database.
cnn.ChangePassword("");
要打開一個已加密的資料庫或者新建一個加密資料庫,在打開或者新建前調用SetPassword()函數
// Opens an encrypted database by calling SetPassword()
SQLiteConnection cnn = newSQLiteConnection("Data Source=c:\\test.db3");
cnn.SetPassword(newbyte[] { 0xFF, 0xEE, 0xDD, 0x10, 0x20, 0x30 });
cnn.Open();
// The connection is now usable
Sqlite資料庫的加密
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();
分頁
select * from messages limit 10,100;
表示跳過10行,取100行的返回結果。
④ 如何對sqlite3資料庫進行加密
給SQLite資料庫加密解密的方法:
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();
除了用上述方法給SQLite資料庫加密以外,您還可以使用專業的文件加密軟體將SQLite資料庫加密。
超級加密
3000採用先進的加密演算法,使你的文件和文件夾加密後,真正的達到超高的加密強度,讓你的加密數據無懈可擊。
超級加密3000使用起來,只要點擊需要加密的文件的右鍵,即可輕松實現文件的加密。
解密只要雙擊已加密文件,輸入密碼即可輕松搞定。
⑤ 如何對sqlite3資料庫進行加密
給SQLite資料庫加密解密的方法:
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();
⑥ c# 判斷db3是否被加密
已經加過密的你需要用setpassword打開,然後才能再次用changepassword
⑦ 請教如何把sqlite嵌入到我的c程序里去
示例代碼:
// name: query.c
// This prog is used to test C/C++ API for sqlite3 .It is very simple,ha !
// Author : zieckey All rights reserved.
// data : 2006/11/18
#include <stdio.h>
#include <stdlib.h>
#include "sqlite3.h"
#define _DEBUG_
int main( void )
{
sqlite3 *db=NULL;
char *zErrMsg = 0;
int rc;
rc = sqlite3_open("zieckey.db", &db); //打開指定的資料庫文件,如果不存在將創建一個同名的資料庫文件
if( rc )
{
fprintf(stderr, "Can't open database: %s
", sqlite3_errmsg(db));
sqlite3_close(db);
exit(1);
}
else printf("You have opened a sqlite3 database named zieckey.db successfully!
Congratulations! Have fun ! ^-^
");
//創建一個表,如果該表存在,則不創建,並給出提示信息,存儲在 zErrMsg 中
char *sql = " CREATE TABLE SensorData(
ID INTEGER PRIMARY KEY,
SensorID INTEGER,
SiteNum INTEGER,
Time VARCHAR(12),
SensorParameter REAL
);" ;
sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );
#ifdef _DEBUG_
printf("zErrMsg = %s
", zErrMsg);
#endif
//插入數據
sql = "INSERT INTO "SensorData" VALUES(NULL , 1 , 1 , '200605011206', 18.9 );" ;
sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );
sql = "INSERT INTO "SensorData" VALUES(NULL , 1 , 1 , '200605011306', 16.4 );" ;
sqlite3_exec( db , sql , 0 , 0 , &zErrMsg );
int nrow = 0, ncolumn = 0;
char **azResult; //二維數組存放結果
//查詢數據
sql = "SELECT * FROM SensorData ";
sqlite3_get_table( db , sql , &azResult , &nrow , &ncolumn , &zErrMsg );
int i = 0 ;
printf( "row:%d column=%d
" , nrow , ncolumn );
printf( "
The result of querying is :
" );
⑧ 如何破解sqlite的資料庫的密碼
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();
除了用上述方法給SQLite資料庫加密以外,還可以使用專業的文件加密軟體將SQLite資料庫加密。
超級加密 3000採用先進的加密演算法,使文件和文件夾加密後,真正的達到超高的加密強度,讓加密數據無懈可擊。
超級加密3000使用起來,只要點擊需要加密的文件的右鍵,即可輕松實現文件的加密。
解密只要雙擊已加密文件,輸入密碼即可輕松搞定。