我必须面对一个新的小项目。它将有大约7或9个表,其中最大的一个表将以每月1000行的最大速度增长。
我考虑将SQLite作为我的数据库…但是如果有人要更改数据库中的数据,我将需要保护数据库。
我的主要问题是:
是否可以像访问时那样用密码保护sqlite数据库?
对于如此小的解决方案,您会建议其他哪些RDBMS?
开发将在C#上进行,但我正在免费搜索。
您可以使用密码保护SQLite3数据库。在进行任何操作之前,请按以下步骤设置密码。
SQLiteConnection conn = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;"); conn.SetPassword("password"); conn.Open();
然后下次您可以像访问
conn = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;Password=password;"); conn.Open();
这将不允许任何GUI编辑器查看您的数据。如果提供密码,某些编辑器可以解密数据库。使用的算法是RSA。
以后,如果您想更改密码,请使用
conn.ChangePassword("new_password");
要重置或删除密码,请使用
conn.ChangePassword(String.Empty);