Visual Studios 2010 C#sql数据库只读错误

use*_*886 2 c# sql database visual-studio-2010

我正在使用本地sql数据库进行可视化C#项目.当我安装.msi文件并运行程序,然后尝试更新数据库中的某些内容时,我收到错误"无法更新数据库C:\ setup\DBNC.mdf因为数据库是只读的"我真的很难时间搞清楚这个,任何建议?

小智 5

我要把我的魔法8球击出一分钟.让我们来看看...

OP是否在本地服务器上运行.sql脚本创建数据库?
回复朦胧,再试一次

OP是否包含安装包中的.mdb?
你可以依靠它

好的.因此,用户通过安装包将数据库复制到该特定目录...

运行安装包时,OP是否升级为管理员?
前景良好

好的,所以OP在安装过程中创建目录并在那里复制文件,所有这些都在管理员帐户的支持下完成.

OP是否将此文件附加到Sql Server的本地实例?
迹象表明是的

数据库是否在Sql Server中配置为只读?
回复朦胧,再试一次

OP是否运行ALTER DATABASE DBNC SET READ_ONLY?
不要指望它

好的,然后OP更新了NTFS安全性C:\setup\和mdb,以便对运行Sql Server(NETWORK SERVICE或其他帐户)的帐户进行读/写访问?
我的消息来源说没有

答对了!

您将该目录创建为admin并将文件复制到该目录.运行Sql Server的帐户无权更改该文件,因此您将收到该错误.

您不应将数据库部署为文件.您应该创建一个.sql文件,该文件创建数据库以及其中的所有表/关系/等.这样,您始终可以确保Sql Server实例可以访问数据库.此外,它比mdb更容易版本的sql脚本文件.