无法更新数据库.MDF是只读的
我有一个应用程序中的本地数据库。 当我在另一台机器上安装它时,我收到错误
无法更新数据库.. .ddf是只读的。
通过编辑我对.mdf
和日志文件的权限,我能够绕过它。 我做了一些研究,发现我可能想将数据库安装到共享文件夹中。 但是,我不知道该怎么做,我遇到的答案并没有多大意义。
//My connection string SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|AssetDatabase.mdf;Integrated Security=True");
任何指导将不胜感激。 我在学习。
MDF文件将是readonly,因为readonly文件属性标志已设置,在这种情况下您必须取消设置,或者另一个程序将MDF文件锁定为readonly。 您是否正在运行使用该文件的SQL Server版本?
我从未见过直接与MDF文件的连接,通常是通过服务器完成的,服务器将管理MDF文件的所有IO。
例如,SQL Server的典型连接字符串:
Database=;Server=;MultipleActiveResultSets=True;Connection Timeout=10;User Id=;Password=;
其他链接:
1) 无法更新.mdf数据库,因为数据库是只读的(Windows应用程序)
2) 无法更新数据库,因为它是只读的
3) 无法更新数据库“* .mdf”,因为只读EntityFramework
4) http://www.codeproject.com/Questions/183758/Failed-to-update-mdf-database-because-the-database
首先从本地服务菜单停止SQLEXPRESS服务,然后尝试通过在SQLEXPRESS中附加数据库选项再次移动和连接数据库。 它应该工作。 这个对我有用。 🙂
- 只需转到程序文件并找到已安装程序的文件夹即可。
- 只需右键单击文件夹中的
.mdf
文件,然后单击“属性”。 - 在PROPERTIES TAB – > SECURITY – >中,您将看到组或用户名。
- 在那里选择你想要给予文件访问权限的用户。
- 如果对于该用户,则PERMISSION未设置为FULL CONTROL。
- 更改权限 – >点击编辑。
- 现在将打开“组或用户名”框。
- 在选择用户 – >选择权限框中的完全控制。
- 现在也按照日志文件的步骤操作。 如果需要的话。
要么
只需将您的应用程序安装在ProgramFile以外的其他文件夹中(x86)
如果您的数据库文件在C卷上,请尝试将.mfd文件移动到D卷