我在应用程序中有一个本地数据库。当我把它安装到另一台机器上时,我得到了错误
无法更新数据库...mdf是只读的。
我可以通过编辑.mdf和日志文件本身的权限来绕过它。我做了一些研究,发现我可能想将数据库安装到一个共享文件夹中。然而,我不知道如何做到这一点,我所遇到的答案并没有太大的意义。

 //My connection string
 SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|AssetDatabase.mdf;Integrated Security=True");

任何指导都将不胜感激。我在学习。

最佳答案

mdf文件将是只读的,原因可能是设置了readonly file属性标志(在这种情况下,必须取消设置),或者其他程序将mdf文件锁定为只读。您运行的是使用该文件的SQL Server版本吗?
我从未见过直接连接到mdf文件的情况,通常是通过服务器完成的,服务器将管理mdf文件的所有io。
例如,SQL Server的典型连接字符串:

Database=<dbname>;Server=<servername>;MultipleActiveResultSets=True;Connection Timeout=10;User Id=<username>;Password=<password>;

其他链接:
1)Failed to update .mdf database because the database is read-only (Windows application)
2)Failed to update database because it is read-only
3)Failed to update database "*.mdf" because read only EntityFramework
4)http://www.codeproject.com/Questions/183758/Failed-to-update-mdf-database-because-the-database

关于c# - 无法更新数据库.MDF为只读,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25026925/

10-10 01:46