无法在windows服务中打开数据库

本文关键字:数据库 服务 windows | 更新日期: 2023-09-27 18:17:17

我正在尝试连接我的窗口服务到我的本地数据库。在我的OnStart()方法在Service.cs类,我得到这个错误…

The underlying provider failed on Open.System.Data.SqlClient.SqlException 
(0x80131904): Cannot open database "EduFameProjectDB18" requested by the login. 
The login failed.
Login failed for user 'NT AUTHORITY'SYSTEM'.

无法在windows服务中打开数据库

您正在尝试使用SYSTEM帐户来访问数据库。这是由于您在SQL Server中使用集成身份验证,并在SYSTEM帐户下运行Windows服务。

为了解决这个问题,你必须在你的windows服务上提供一个不同的凭据,以便它能正确打开连接。请确保在数据库的SQL Server登录中存在相同的windows用户,并且该用户有足够的权限访问您的表。

作为另一种选择,您可以使用sql身份验证,通过创建sql登录并在连接字符串中提供凭据。

    连接Sql Server Management Studio.
  1. 现在点击安全-> NT AUTHORITY'SYSTEM右键单击->属性
  2. 点击->服务器角色
  3. 检查公共,sysadmin
  4. 单击Ok