对数据加密分两种,一种是对数据库本身进行加密,另一种是对数据表中的数据进行加密,
如果sqlite数据库加密,我这里使用的一个管理工具叫sqlitedeveloper,如下就可以加密数据库
,
如果在工具中不提供密码的情况下打开数据库,会给你错误提示如下:
,
或者在c# 使用错误的密码也会给你错误提示:
system.data.sqlite.sqliteexception:“file is encrypted or is not a database
,
正确的连接方式就是在连接字符串中提供正确的密码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
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(); } } } } } |
总结
以上所述是小编给大家介绍的c#连接加密的sqlite数据库的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://www.cnblogs.com/LittleFeiHu/archive/2017/08/03/7279259.html