本地SQL Server连接‘Life’数据库报错,登录失败求解决方案
核对SQL Server实例名称
连接字符串中使用的.\\SQLEXPRESS需要和本地实际运行的SQL Server实例名称一致。打开SQL Server配置管理器,在「SQL Server服务」列表里查看实例全称,比如如果是默认实例(无后缀),连接字符串应改为Data Source=.;Initial Catalog=Life;Integrated Security=True。确认目标数据库状态正常
打开SQL Server Management Studio,检查「数据库」节点下是否存在Life数据库,右键查看属性确认状态为「正常」,排除脱机、正在还原等异常情况。匹配Visual Studio运行账户的权限
确保当前运行Visual Studio的Windows账户,就是你在SSMS「安全性-登录名」中配置并映射了Life数据库db_owner角色的账户。若不一致,可右键Visual Studio选择「以管理员身份运行」,或在SSMS中给当前Windows账户添加登录名并完成数据库权限映射。确认核心数据库服务运行状态
打开系统服务(services.msc),检查「SQL Server (SQLEXPRESS)」服务是否处于「正在运行」状态——SQL Server代理仅负责作业执行,数据库连接依赖的是SQL Server主服务。直接测试连接有效性
在SSMS中用「Windows身份验证」连接.\\SQLEXPRESS实例,确认能正常访问Life数据库。如果这里连接失败,优先排查实例可用性或账户权限问题;若能连接,可尝试调整连接字符串写法,比如替换为Data Source=(local)\\SQLEXPRESS;Initial Catalog=Life;Integrated Security=True。检查数据库级权限设置
右键Life数据库→「属性」→「权限」,确认对应登录账户拥有「连接数据库」权限,且db_owner角色的权限未被限制。
内容的提问来源于stack exchange,提问作者Wessel Fick

