Asp.net SQL Server 2008 R2 Express错误:无法打开数据库;“人事部”;由登录请求。登录失败
我在数据库中使用SQL Server 2008 R2 Express和“SQL Server和Windows身份验证”模式。我可以使用Enterprise Manager打开数据库,但当我运行我的aspx应用程序时,我得到: 无法打开登录请求的数据库“PersonnelPro”。登录 失败了 我的web.config连接字符串是:Asp.net SQL Server 2008 R2 Express错误:无法打开数据库;“人事部”;由登录请求。登录失败,asp.net,login,web-config,database-connection,sql-server-2008r2-express,Asp.net,Login,Web Config,Database Connection,Sql Server 2008r2 Express,我在数据库中使用SQL Server 2008 R2 Express和“SQL Server和Windows身份验证”模式。我可以使用Enterprise Manager打开数据库,但当我运行我的aspx应用程序时,我得到: 无法打开登录请求的数据库“PersonnelPro”。登录 失败了 我的web.config连接字符串是: <add name="dbString" connectionString="Provider=sqloledb;Data Source=AREA5
<add name="dbString"
connectionString="Provider=sqloledb;Data Source=AREA51\SQLEXPRESS;Initial Catalog=PersonnelPro;User Id= ****;Password= ****" />`
`
我在网上搜索了一下,但没有找到解决办法。你知道是什么导致了这个问题吗
更新:查看SQL日志文件(“C:\Program files\Microsoft SQL Server\MSSQL10\u 50.SQLEXPRESS\MSSQL\log”),我发现:
2012-12-21 05:58:00.97 Logon Error: 18456, Severity: 14, State: 38.
2012-12-21 05:58:00.97 Logon Login failed for user 'PersonnelPro'. Reason: Failed to open the explicitly specified database. [CLIENT: <named pipe>]
2012-12-21 05:58:00.97登录错误:18456,严重性:14,状态:38。
2012-12-21 05:58:00.97用户“PersonnelPro”登录失败。原因:无法打开显式指定的数据库。[客户:]
此web应用程序由第三方公司提供。因此,从技术上讲,我只需要配置web.config文件,它就可以工作。删除用户Id和密码的“=”符号后的空格。我认为这是价值观的一部分 更新: 您发布的新错误消息(无法打开显式指定的数据库)可能表示以下两种情况之一:
- 具有该名称的数据库不存在或拼写错误
- 您尝试登录的用户无权访问数据库。您可以通过在数据库中运行
来检查这一点exec sp\u helpuser'username'
Provider=sqloledb
并检查您的用户名和密码。Provider=sqloledb由应用程序供应商提供(他们停业了)。用户名和密码已经过验证(因为我已经从web.config文件复制了uid和pwd,并将其粘贴到Enterprise Manager中,并且可以正常工作)。@JefferyKhan当我删除“Provider=sqloledb”时,我收到一个错误,该错误为:ConnectionString中未指定OLE DB提供程序。例如,“Provider=SQLOLEDB;”。可能会说明一些您尝试过的内容,但您是否启用了TCP/IP连接?这让一些人在过去感到痛苦——即使安装了协议,也可能没有启用——我删除了空间,但仍然收到相同的错误消息。