SQL 服务器 CE:禁止修改数据库文件?
SQL Server CE: Suppress modifications of database file?
我们有一个具有本地 SQL 服务器 CE 数据库文件的应用程序。当我们打开数据库,但不对其做任何修改时,数据库文件还是被修改了:
using (var connection = new SqlCeConnection("Data Source='data.sdf';File Mode='Shared Read';Encrypt=FALSE;LCID=1033"))
{
connection.Open();
using (var context = new DataContext(connection))
{
}
}
这会更改 sdf 文件开头的一些字节。
有什么办法可以避免这种情况吗?
是的,您可以在连接字符串中启用只读模式。在这种情况下,您可能还需要指定一个临时路径:
string connectionString = ...;Mode = Read Only;Temp Path= ...;
我们有一个具有本地 SQL 服务器 CE 数据库文件的应用程序。当我们打开数据库,但不对其做任何修改时,数据库文件还是被修改了:
using (var connection = new SqlCeConnection("Data Source='data.sdf';File Mode='Shared Read';Encrypt=FALSE;LCID=1033"))
{
connection.Open();
using (var context = new DataContext(connection))
{
}
}
这会更改 sdf 文件开头的一些字节。
有什么办法可以避免这种情况吗?
是的,您可以在连接字符串中启用只读模式。在这种情况下,您可能还需要指定一个临时路径:
string connectionString = ...;Mode = Read Only;Temp Path= ...;