我创建了一个数据库 emailDatabase ,它存储在
中C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
在Visual Studio中,我使用Server Explorer
,单击“添加新连接”按钮。
出现添加连接对话框。
在服务器名称下,我使用下拉框并选择DEV-5\SQLEXPRESS
。我使用Windows身份验证。
在底部的Connect to
部分,下拉列表显示:Master, Model, msdb
和tempdb
,但不显示我的emailDatabase
。
所以我选择Attach Database File
并点击浏览并按照
local C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA
并选择我的电子邮件数据库。
发生以下错误:
emailDatabase
您无权打开此文件。
联系文件所有者或管理员以获得许可。
我认为我的问题是我保存了我的数据库错误,我需要备份或类似的东西。如果是这种情况请告诉我如何备份等等。我真的需要从这个问题中继续前进。
当我创建数据库时,我右键单击SQL Server Management Studio中的数据库并说出新数据库,然后我添加了带有查询的列。然后文件保存所有。
如何获取我的数据库文件的副本,其中包含我在Visual Studio中使用它所需的所有权限?
答案 0 :(得分:16)
当您在服务器上创建数据库 (使用SQL Server Management Studio)时,您不必再(也不应该!)摆弄数据库文件 - 让服务器为你处理。
相反:在Visual Studio中执行添加连接,然后在连接对话框中指定服务器实例(DEV-5\SQLEXPRESS
)和数据库名称(emailDatabase
)。
通过这种方式,您可以按照SQL Server实例本身的方式连接和使用SQL Server数据库。这比使用“自由浮动”.mdf
文件并将它们附加到您的解决方案和类似内容更容易,也更不麻烦....
所以在这里 - 将DEV-5\SQLEXPRESS
填入您的“服务器名称”下拉列表,然后使用“选择或输入数据库名称”选项并输入您的数据库名称(或从下拉列表中选择) - 它应该是有!
不要使用“附加数据库文件”选项 - 这是一个自由浮动的.mdf
“功能”,这个功能相当笨拙且难以使用且容易出错:我建议不使用...
答案 1 :(得分:0)
我以为我已经弄明白但是问题仍然存在。所以...
这条线以下的一切都是如此。
经过数小时的修补后,我终于找到了如何使用SSMS连接到VS2010中创建的SQLServer 2008数据库,而且相对简单。但是,从未解决的问题数量到目前为止还没有很好的记录。这是如何做到的:
在VS中右键单击SolutionExplorer中的项目并选择Add new item,然后选择Data,然后选择SQLServer数据库。它将提示您将其保存在app_data文件夹中,如果它不存在,则为您创建该文件夹。
找到Ssms.exe文件(在我的系统上,它位于C:\ Program Files \ Microsoft SQL Server \ 100 \ Tools \ Binn \ VSShell \ Common7 \ IDE
右键单击Ssms.exe并选择以管理员身份运行。
SSMS打开后,您可以附加项目MDF。它现在将出现在您的数据库列表中。数据库名称是GUID。
您甚至可以对数据库运行aspnet_regsql以添加Membership表和sprocs。
重要!您可以使用 EITHER SMSS OR VS管理此数据库,但不能同时管理这两个数据库。如果您使用ServerExplorer从VS中弄乱数据库,您将破坏SSMS连接。要解决此问题,您需要分离并重新附加数据库。
答案 2 :(得分:0)
有同样的问题,我意识到问题不在VS2010中,而是我的SQLserver。
我的实例名称是 OMAFANO ,这就是我的MSSQL连接到服务器名称下的内容。现在这里是捕获,单击它并连接到 OMAFANO \ SQLEXPRESS 并在那里创建所有数据库和表,如果您希望它们按照您在那里说明的方式显示在VS2010中。因此,如果要查看新创建的数据库,请在VS2010中的服务器名称下写 INSTANCENAME \ SQLEXPRESS 。看看图片:
答案 3 :(得分:0)
以管理员身份运行Visual Studio 转到Visual Studio实例,即C#,C ++等 右键单击>以管理员身份运行
然后现在它可以工作
答案 4 :(得分:0)
要从visual studio 2013连接到ssms2014数据库,在新的连接向导中我必须更改数据源'来自' ms sql server数据库文件'到sql server的' .net框架数据提供程序。'。然后我可以输入[计算机名称] [用户名]进行Windows身份验证。
答案 5 :(得分:0)
我遇到了同样的问题,您只需输入本地服务器名称“ sara-PC ”而不是 “ sara-PC \ SQLEXPRESS ”
现在,您可以轻松访问数据库,您可以在下拉列表中看到它。 并且也请不要使用文件访问方法来访问数据库,那不是好方法。 也可以通过使用服务器->右键单击->属性->数据库设置来设置默认位置,将〜.... \ Data和〜... \ log文件放置在所需的任何位置。
绝对可以解决您的问题。