对数据加密分两种,一种是对数据库本身进行加密,另一种是对数据表中的数据进行加密,
如果sqlite数据库加密,我这里使用的一个管理工具叫sqliteDeveloper,如下就可以加密数据库
,如果在工具中不提供密码的情况下打开数据库,会给你错误提示如下:
,System.Data.sqlite.sqliteException:“file is encrypted or is not a database
,正确的连接方式就是在连接字符串中提供正确的密码:
using System; using System.Collections.Generic; using System.Data.sqlite; using System.Linq; using System.Text; using System.Threading.Tasks; namespace OpensqliteDBByPwd { class Program { static void Main(string[] args) { string DB_PATH = Data Source=EncryptedDB.db3; Password=1111; using (sqliteConnection con = new sqliteConnection(DB_PATH)) { con.open(); string sqlStr = @INSERT INTO Customer(CUST_NO,CUSTOMER) VALUES ( 3001, 'Allen' ); using (sqliteCommand cmd = new sqliteCommand(sqlStr, con)) { cmd.ExecuteNonQuery(); } } } } }
总结