使用SQL和.NET Core(DB First)时遇数据库登录失败问题求助
数据库登录失败问题排查方案
核对连接字符串配置
检查appsettings.json中的连接字符串,确认数据库名称、认证方式与scaffold时一致。如果使用Windows集成认证(Integrated Security=True),需确保当前运行程序的用户(即报错中的LAPTOP-6HLCVNLU\sss)拥有目标数据库的访问权限。验证数据库用户权限
打开SQL Server Management Studio,登录对应数据库实例:- 找到
SchoolContext数据库,展开安全性-用户 - 确认
LAPTOP-6HLCVNLU\sss或其所属Windows组存在,且已被赋予db_datareader、db_datawriter等必要权限 - 若不存在,手动添加用户并配置权限
- 找到
确认数据库与实例状态
- 检查SQL Server服务是否正常运行(可在服务管理器中查看)
- 验证
SchoolContext数据库状态为在线,执行以下SQL查询:SELECT name, state_desc FROM sys.databases WHERE name = 'SchoolContext';
检查程序运行身份
- 本地调试时,确认当前Windows登录用户为
LAPTOP-6HLCVNLU\sss,且该用户能通过SSMS以Windows身份登录数据库实例并访问SchoolContext - 部署至IIS等环境时,确认应用池的运行身份拥有数据库访问权限
- 本地调试时,确认当前Windows登录用户为
排查连接字符串细节错误
确认连接字符串中的服务器名称、数据库名称拼写无误(注意SQL Server大小写敏感配置),避免因实例名、数据库名写错导致登录失败
内容的提问来源于stack exchange,提问作者programmer
相关产品推荐
相关产品推荐

