localdb只读数据库问题

时间:2013-06-10 15:45:03

标签: localdb

环境

visualStudio 2012 localdb v11

有3个项目的解决方案:

带有ORM数据库模型的第一类库,以及App_Data目录中的本地数据库Localdb.mdf。

2nd是使用此数据库模型的Web项目。

和第3个c#控制台项目,它使用这个localdb数据库,引用第一类库,并在app.config中定义一个localdb连接字符串,定义为:

Data Source =(LocalDB)\ v11.0; AttachDbFilename = C:_work_desarrollo \ Apps \ Business \ OpenAccessAppsModel \ App_Data \ LocalDb.mdf; Integrated Security = True

我的问题是: 我想使用VS 2012服务器资源管理器对此数据库进行一些更改,例如删除表格,我得到了#34;数据库是只读的。在将数据库设为read write"

之前,数据库的更新将不会成功

第二,如何使控制台应用程序(第3个项目)可以使用数据库文件,这样我就可以将发布文件夹复制/粘贴到"安装"控制台应用程序? 应该如何修改数据库连接以使数据库在本地具有控制台应用程序? (与应用程序相同的目录)

非常感谢

3 个答案:

答案 0 :(得分:2)

今天发生在我身上。

您可以像这样授予/更改数据库权限:

icacls mydabase *。* / grant“NT Service \ MSSQL $ SQLEXPRESS”:( F)

icacls mydabase *。* / grant“MYMACHINENAME \ Administrator”:( F)

我已经设置了sqlexpress权限,但发现还需要machine \ administrator。

希望它有所帮助。

答案 1 :(得分:0)

请检查 .mdf .ldf 文件以及容器文件夹的属性。

同时检查this answer。 我做了这两件事并且 Presto !它有效!

答案 2 :(得分:0)

问题只是文件.mdf.log对用户或应用程序执行的权限。仅在文件属性和连接字符串中读取和写入安全权限,例如"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\WinApps17\Cash\Invoices\Data\VFindx.mdf;Integrated Security=True;Connect Timeout=30"