再次请教

prcstocks 2009-03-17 10:03:40
asp.net设置时点击“安全”出现以下提示:“选定的数据存储区出现问题,原因可能是服务器名称或凭据无效,或者权限不足。也可能是未启用角色管理器功能造成的。请单击下面的按钮,以重定向到可以选择新数据存储区的页。下面的消息可能会有助于诊断问题: 无法连接到 SQL Server 数据库。”

按提示操作,出现这样结果:"未能建立数据库连接。如果尚未创建 SQL Server 数据库,请退出网站管理工具,使用 aspnet_regsql 命令行实用工具创建和配置数据库,然后返回到此工具以设置提供程序。"

“aspnet_regsql 命令行实用工具创建和配置数据库”不知道如何实现?


Teng-2000网友回复:c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regsql.exe直接运行。但按此操作还是失败,提示:
“Setup failed.

Exception:
无法连接到 SQL Server 数据库。

----------------------------------------
Details of failure
----------------------------------------

System.Web.HttpException: 无法连接到 SQL Server 数据库。 ---> System.Data.SqlClient.SqlException: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
在 System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject)
在 System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject)
在 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart)
在 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
在 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
在 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
在 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
在 System.Data.SqlClient.SqlConnection.Open()
在 System.Web.Management.SqlServices.GetSqlConnection(String server, String user, String password, Boolean trusted, String connectionString)
--- 内部异常堆栈跟踪的结尾 ---
在 System.Web.Management.SqlServices.GetSqlConnection(String server, String user, String password, Boolean trusted, String connectionString)
在 System.Web.Management.SqlServices.SetupApplicationServices(String server, String user, String password, Boolean trusted, String connectionString, String database, String dbFileName, SqlFeatures features, Boolean install)
在 System.Web.Management.SqlServices.Install(String database, SqlFeatures features, String connectionString)
在 System.Web.Management.ConfirmPanel.Execute()


...全文
233 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
weir55 2009-03-17
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 xiazhijiang520 的回复:]
解决方法:

1、打开VS的命令提示,输入aspnet_regsql,用默认的数据库(aspnetdb)。


2、打开VS,依次:工具-->选项-->数据库工具-->数据连接-->SQL Server实例名称(默认为空),改为你的服务器名称。


3、还是VS,工具-->连接到数据库-->服务器名(选择刚才的服务器),可以按你要求选择Windows或SQL Server身份验证,然后数据库选择刚才的aspnetdb。测试OK后,在高级里复制出语句Data Source=Server;Initial Catalog…
[/Quote]

頂了
prcstocks 2009-03-17
  • 打赏
  • 举报
回复
是建立ASPDBNET数据库
prcstocks 2009-03-17
  • 打赏
  • 举报
回复
VS的命令提示在那打开。不好意思是个菜鸟
泡面之夏 2009-03-17
  • 打赏
  • 举报
回复
解决方法:

1、打开VS的命令提示,输入aspnet_regsql,用默认的数据库(aspnetdb)。


2、打开VS,依次:工具-->选项-->数据库工具-->数据连接-->SQL Server实例名称(默认为空),改为你的服务器名称。


3、还是VS,工具-->连接到数据库-->服务器名(选择刚才的服务器),可以按你要求选择Windows或SQL Server身份验证,然后数据库选择刚才的aspnetdb。测试OK后,在高级里复制出语句Data Source=Server;Initial Catalog=aspnetdb;User


4、打开IIS:默认网站-->属性-->ASP.NET-->编辑全局配置-->常规-->连接字符串管理器LocalSqlServer的连接字符串改为:Data Source=Server;Initial Catalog=aspnetdb;User (后边的“;Password=sa”我没复制出来,是手工填上去的。当然,后面的sa用你的密码替换)。


5、还是在IIS:默认网站-->属性-->ASP.NET-->编辑全局配置-->身份验证-->选定"启用角色管理"



6.如果 上述方法步骤还未解决,可以接着尝试在IIS:默认网站-->属性-->ASP.NET-->目录安全性-->匿名访问和身份验证控制 里 选择“编辑”-->勾选“集成Windows身份验证”
liuyeede 2009-03-17
  • 打赏
  • 举报
回复
在后台建立ASPDBNET数据库了吗?
链接字符串是否正确?
MicroDeviser 2009-03-17
  • 打赏
  • 举报
回复
请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。
还有看看mssqlserver服务有没有启动啊
阿云ivan 2009-03-17
  • 打赏
  • 举报
回复
帮顶~
  • 打赏
  • 举报
回复
不知道你点击的 安全 是什么
看看数据库服务是否打开?
mjjzg 2009-03-17
  • 打赏
  • 举报
回复
服务器名或是数据库名错误

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧