You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行Update-Database需登录的对象是什么?如何修改为sa账号登录?

1. Update-Database要求登录的对象
  • Update-Database是Entity Framework/EF Core的数据库迁移命令,执行时会优先读取项目配置的数据库连接字符串,要求登录的对象为连接字符串指定的SQL Server实例,你当前场景下就是本地部署的SQL Server服务器实例。
  • 报错提示Login failed for user jmurphy35是因为默认配置启用了Windows集成身份验证,会尝试用你当前操作系统的登录账号jmurphy35登录SQL Server,该Windows账号未被授予SQL Server的登录权限就会触发报错。
  • 即便你已经删除了项目对应数据库,命令执行第一步仍需要先通过SQL Server实例的登录验证,再判断是否要新建数据库,因此登录失败的报错会持续出现,和数据库是否已删除无关。
2. 配置使用sa账号登录的操作步骤
  • 第一步:修改项目的数据库连接字符串配置
    找到对应配置文件:.NET Framework项目找web.config/app.config,.NET Core/.NET 5+项目找appsettings.json,将连接字符串改为SQL Server身份验证模式,指定sa账号和密码:
    示例(appsettings.json):
    "ConnectionStrings": {
      "DefaultConnection": "Server=localhost\\SQLEXPRESS;Database=你的项目数据库名称;User Id=sa;Password=你设置的sa账号登录密码;TrustServerCertificate=True;"
    }
    
    示例(web.config):
    <connectionStrings>
      <add name="DefaultConnection" connectionString="Server=localhost\SQLEXPRESS;Database=你的项目数据库名称;User ID=sa;Password=你设置的sa账号登录密码;TrustServerCertificate=True;" providerName="System.Data.SqlClient" />
    </connectionStrings>
    
    注:如果你的本地SQL Server是默认实例,实例名可直接写localhost,无需加\SQLEXPRESS后缀。
  • 第二步:确认SQL Server端配置正常
    打开SQL Server Management Studio连接到本地实例,做两处检查:
    • 右键实例名→「属性」→「安全性」,确认「SQL Server和Windows身份验证模式」已勾选
    • 进入「安全性」→「登录名」→右键「sa」→「属性」→「状态」,确认sa账号已启用,若未设置sa密码可在「常规」页设置密码
  • 第三步:重新执行命令
    回到Visual Studio的包管理器控制台,重新运行Update-Database即可,命令会自动读取修改后的连接字符串,用sa账号登录SQL Server执行迁移操作。

内容的提问来源于stack exchange,提问作者user3726262

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 09:24:01