首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >密码保护SQLite数据库。有可能吗?

密码保护SQLite数据库。有可能吗?
EN

Stack Overflow用户
提问于 2009-09-05 03:59:02
回答 5查看 193.1K关注 0票数 98

我必须面对一个新的小项目。它将有大约7到9个表,其中最大的表将以每月1000行的最大速度增长。

我把SQLite当做我的数据库。但我需要保护数据库,以防有人想要更改数据库中的数据。

我的主要问题是:

是否可以像在访问时那样使用密码保护sqlite数据库?

对于这么小的解决方案,您还推荐其他什么RDBMS?

开发将在C#上进行,但我正在搜索一些免费的东西。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-06-22 16:17:52

您可以对SQLite3数据库进行密码保护。在执行任何操作之前,请按如下方式设置密码。

代码语言:javascript
复制
SQLiteConnection conn = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;");
conn.SetPassword("password");
conn.Open();

那么下一次你可以像这样访问它

代码语言:javascript
复制
conn = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;Password=password;");
conn.Open();

这将不允许任何GUI编辑器查看您的数据。如果您提供密码,某些编辑器可以解密DB。使用的算法是RSA。

稍后,如果您希望更改密码,请使用

代码语言:javascript
复制
conn.ChangePassword("new_password");

要重置或删除密码,请使用

代码语言:javascript
复制
conn.ChangePassword(String.Empty);
票数 78
EN

Stack Overflow用户

发布于 2010-12-13 01:29:16

使用SQLCipher,它是SQLite的开源扩展,为数据库文件提供透明的256位加密。http://sqlcipher.net

票数 14
EN

Stack Overflow用户

发布于 2009-09-04 20:06:21

一种选择是VistaDB。它们允许对数据库(甚至是表)进行密码保护(以及可选的加密)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1381264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档