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

Winget更新或列出包时报0x87af0001 sql logic error如何解决

故障原因

0x87af0001 sql logic error 是winget本地存储包源索引、已安装软件记录的SQLite数据库损坏导致的,所有需要读取该数据库的操作(包括查询已安装包列表、安装/升级软件)都会触发该报错,和oh-my-posh包本身无关。

修复步骤
  • 关闭所有终端窗口,打开任务管理器结束所有winget.exe相关进程,避免后续操作时数据库文件被占用。也可以直接打开管理员权限的终端执行命令强制结束进程:
    taskkill /f /im winget.exe
    
  • 打开资源管理器,在地址栏输入以下路径回车,进入winget本地数据存储目录:
    %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\
    
  • 找到目录下所有后缀为.db、.db-wal、.db-shm的文件,全部删除。这些是损坏的本地缓存、索引数据库文件,删除后winget会自动生成全新的文件,不会影响已安装的软件。
  • 重新打开终端,执行源重置命令,强制winget拉取官方最新包源、重建本地数据库:
    winget source reset --force
    
  • 等待源重置完成后,先执行winget list验证是否还会触发报错,确认功能恢复正常后,再执行oh-my-posh升级命令即可:
    winget upgrade oh-my-posh
    

如果上述操作完成后仍有报错,可以打开Microsoft Store搜索「应用安装程序」,将其更新到最新版本后重复以上修复步骤即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 12:12:10