1

我正在开发一个使用 Asp.Net Web 表单和 Sql 服务器的项目。当我运行应用程序时,我收到错误Unable to connect Sql Server Session Database,内部异常是Cannot open database ASPState requested by the login.

我做了一些谷歌搜索来解决这个问题。我没有sa密码,所以我无法登录sa为新创建的用户分配权限给 ASPState 数据库。

当我登录时,我在 Sql Server 上没有看到任何 ASPState 数据库。所以我想我可能需要在我的机器上运行 aspnet reg exe。所以我尝试运行 aspnetreg_regsql.exe 但出现以下错误。

执行 SQL 文件“InstallCommon.sql”时出错。SQL 错误编号为 5170,SqlException 消息为:无法创建文件 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\aspnetdb.mdf',因为它已经存在。更改文件路径或文件名,然后重试该操作。

创建数据库失败。无法创建列出的某些文件名。检查相关错误。

正在创建 aspnetdb 数据库...

我现在完全空白来解决这个问题,我非常感谢你的建议。本期暂挂生产。

4

3 回答 3

1

不要以为您拥有的权限有一个简单的答案,我认为发生的事情是已经创建了数据库,但是您使用的用户根本没有任何访问权限。

如果没有管理员凭据,我认为您无法解决问题。

但是,您可以通过使用不同的名称重新创建数据库来解决它:

aspnet_regsql -d[YourNewDBName] -RestOfYourParamaters

这应该允许您重新运行创建脚本,但是不能保证您不会在新创建的数据库上遇到相同的问题。

于 2015-07-13T11:16:07.510 回答
0

'InstallCommon.sql'肯定不是任何数据库。顾名思义,它必须是安装新数据库的脚本。运行脚本,然后链接生成的数据库

于 2015-07-12T07:36:42.847 回答
0

您应该发出命令DROP DATABASE aspnetdb,然后重新运行您的脚本。

于 2015-07-12T04:58:40.907 回答