MoneyManagerEx 数据库(.mmb)深度解析:SQLite 结构、QIF 导入导出与 GnuCash 迁移完全指南
MoneyManagerEx 数据库(.mmb)深度解析SQLite 结构、QIF 导入导出与 GnuCash 迁移完全指南【免费下载链接】android-money-manager-exLocal-first personal finance app. Encrypted, self-hosted, sync across devices.项目地址: https://gitcode.com/gh_mirrors/an/android-money-manager-exMoneyManagerEx 的数据库就是一个.mmb 文件——本质上是一个本地优先Local-first的 SQLite 数据库支持 SQLCipher 加密可跨设备同步、无需云端。本文带你彻底搞懂 .mmb 的 SQLite 表结构、QIF 导入导出机制以及如何把财务数据迁移到 GnuCash是个人理财数据安全落袋的完整指南。一、.mmb 文件到底是什么很多人担心数据存哪儿了会不会丢。答案很简单你的所有账目都保存在一个普通的 SQLite 文件里。特性说明文件格式SQLite 数据库单文件默认文件名data.mmb定义于app/src/main/java/com/money/manager/ex/Constants.java存放位置手机内部存储的MoneyManagerEx目录方便备份和脚本访问加密版本带密码时生成.emb文件采用 SQLCipher 加密小知识从 5.x 版本起MoneyManagerEx 支持给数据库加密码。加密后的文件扩展名为.emb每次打开都需要输入密码文件被拷走也无法直接读取。创建数据库的流程很简单首次运行时会引导你选择新建或打开已有数据库二、SQLite 表结构速览数据都躺在哪些表里打开 .mmb 文件你会发现约 20 张以_V1结尾的表。核心表的职责如下完整建表脚本见app/src/main/res/raw/tables_v1.sql表名作用关键字段CHECKINGACCOUNT_V1⭐ 交易流水最核心TRANSCODE(Withdrawal/Deposit/Transfer)、TRANSAMOUNT、TRANSDATE、STATUSACCOUNTLIST_V1账户列表ACCOUNTTYPE(现金/支票/信用卡等)、INITIALBALCATEGORY_V1收支分类支持父子层级CATEGNAME、PARENTID内置 Bills、Food 等示例分类PAYEE_V1收付对象PAYEENAME、默认分类SPLITTRANSACTIONS_V1拆分交易一笔支出记多个分类TRANSID、SPLITTRANSAMOUNTBILLSDEPOSITS_V1定时/循环交易账单提醒REPEATS、NEXTOCCURRENCEDATEBUDGETTABLE_V1/BUDGETYEAR_V1预算PERIOD、AMOUNTCURRENCYFORMATS_V1货币格式内置 168 种货币含 BTCCURRENCY_SYMBOL、BASECONVRATESTOCK_V1/ASSETS_V1股票与固定资产NUMSHARES、ASSETTYPETAG_V1/TAGLINK_V1标签及其关联TAGNAME、REFTYPEINFOTABLE_V1元信息键值表存放DATAVERSION等设计亮点分类表用PARENTID实现两级分类交易表通过CATEGID关联分类、PAYEEID关联收付对象配合SPLITTRANSACTIONS_V1实现一笔多分类——这就是 QIF 里S/$拆分记录的来源。三、数据库版本与自动升级机制.mmb 文件并非一成不变。项目用 21 个迁移脚本app/src/main/res/raw/database_version_0.sql~database_version_21.sql记录每个版本的表结构变更。数据库助手类app/src/main/java/com/money/manager/ex/database/MmxOpenHelper.java定义了支持的版本范围当前为 20~21并在onUpgrade()中按顺序执行增量升级——所以旧版 .mmb 文件打开时会自动迁移到新结构你无需手动操作。四、QIF 导入导出数据带走的通用语言QIFQuicken Interchange Format是个人记账界的交换标准GnuCash、Quicken、YNAB 都认识它。MoneyManagerEx 在app/src/main/java/com/money/manager/ex/servicelayer/qif/目录下实现了完整的 QIF 导出QifExport.java导出入口生成2026-08-24_081900.qif这类带时间戳的文件QifHeader.java/QifRecord.java分别生成文件头与逐条交易记录一条 QIF 交易记录的字段非常直白每行字母内容D08/24/26 ← D日期MM/dd/yy 格式 T-58.50 ← T金额支出为负 PR ← C对账状态R 已核对 P超市 ← P收付对象 L食物/生鲜 ← L分类转账则写 [目标账户名] M周末采购 ← M备注 ^ ← 记录结束符拆分交易还会追加 S(分类)/$(金额) 行 使用场景从旧记账 App 导出 .qif或想换用 GnuCash 时先导出 QIF 再导入即可分类和拆分交易都能保留。五、迁移到 GnuCash 的三条路径直接打开 .mmb推荐GnuCash 内置 MoneyManagerEx 导入器导入时选择从 Money Manager Ex (.mmb) 导入账户、分类、交易一次到位QIF 中转在 MoneyManagerEx 中导出 QIF再用 GnuCash 的导入 QIF功能导入兼容性最稳妥整库备份移交直接把 .mmb 文件复制到桌面端使用文件即数据不锁定在任何 App 里。无论走哪条路先做一次完整备份最保险六、备份与数据安全清单 ✅️ 定期用 App 内置的导出数据库功能生成.mmb备份默认文件名your_export_db.mmb见app/src/main/java/com/money/manager/ex/settings/DatabaseSettingsFragment.java 敏感数据建议启用密码保护生成.emb加密文件☁️ 备份文件放到自己的网盘/设备中Local-first 架构意味着数据主权完全在你手里 收支数据可在报表中随时核对确认无误后再迁移写在最后.mmb 的本质是一个你能随时拿走的 SQLite 文件 可选的 SQLCipher 加密。理解了CHECKINGACCOUNT_V1、CATEGORY_V1这些核心表你就掌握了 90% 的数据语义而 QIF 作为通用中转格式让 MoneyManagerEx 与 GnuCash 之间的迁移变得毫无门槛。数据在你手中记账才真正安心。更多细节可参考项目文档docs/usermanual/database.md、docs/usermanual/backup-restore.md。【免费下载链接】android-money-manager-exLocal-first personal finance app. Encrypted, self-hosted, sync across devices.项目地址: https://gitcode.com/gh_mirrors/an/android-money-manager-ex创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Google Play结算库集成避坑指南:构建健壮的客户端-服务端支付体系

Google Play结算库集成避坑指南:构建健壮的客户端-服务端支付体系

1. 项目概述:为什么Google结算库集成是个“技术雷区”? 如果你正在开发一款面向全球市场的移动应用或数字服务,并且打算通过应用内购买或订阅来盈利,那么集成Google Play结算库几乎是必经之路。听起来很常规,对吧&…

2026/8/25 17:56:08 阅读更多 →
query-json 1.0 路线图前瞻:模式解构、日期函数与大整数精度即将登场

query-json 1.0 路线图前瞻:模式解构、日期函数与大整数精度即将登场

query-json 1.0 路线图前瞻:模式解构、日期函数与大整数精度即将登场 【免费下载链接】query-json Faster, simpler and more portable implementation of jq-inspired language in OCaml 项目地址: https://gitcode.com/gh_mirrors/qu/query-json query-jso…

2026/8/25 17:56:08 阅读更多 →
如何在Messenger中构建好友网络?好友请求、用户搜索与联系人管理全解

如何在Messenger中构建好友网络?好友请求、用户搜索与联系人管理全解

如何在Messenger中构建好友网络?好友请求、用户搜索与联系人管理全解 【免费下载链接】Messenger iOS - Real-time messaging app 🎨 项目地址: https://gitcode.com/gh_mirrors/messe/Messenger Messenger(mChat)是一款用…

2026/8/26 22:05:19 阅读更多 →

最新新闻

MAVSDK与PX4无人机开发:环境搭建、通信机制与踩坑实战

MAVSDK与PX4无人机开发:环境搭建、通信机制与踩坑实战

我在做第一个 MAVSDK/PX4 无人机应用时,被一个看似简单的问题困了整整两天:程序在 PX4 仿真里跑得好好的,一换到实机就死活连不上飞控。后来排查了半天,发现根因根本不是代码逻辑,而是串口权限没配上。这个坑很蠢&…

2026/8/26 22:08:09 阅读更多 →
Java工程师进阶指南:从基础到架构的实战修炼

Java工程师进阶指南:从基础到架构的实战修炼

1. 从“Hello World”到“架构师”:一个Java工程师的自我修养 “Java工程师”这个头衔,听起来既熟悉又模糊。每年都有无数新人通过“Hello World”踏入这个领域,但几年后,有人还在CRUD(增删改查)的循环里打…

2026/8/26 22:08:09 阅读更多 →
Transformer目标检测实战:Swin Transformer车辆行人识别全流程

Transformer目标检测实战:Swin Transformer车辆行人识别全流程

简介:目标检测是计算机视觉与自动驾驶感知领域的核心任务,传统CNN方法在复杂交通场景下常面临小目标漏检与遮挡误检的挑战。Transformer架构凭借自注意力机制对全局特征的建模能力,为视觉感知提供了新的技术路径。自注意力原理使模型能直接建…

2026/8/26 22:08:09 阅读更多 →
组合逻辑设计实战:从真值表到门级电路搭建与调试

组合逻辑设计实战:从真值表到门级电路搭建与调试

1. 组合逻辑设计的第一步:先把需求翻译成真值表做过几年数字电路设计的人,应该都有同感:组合逻辑电路本身的逻辑并不难,难的是“把需求翻译成电路”这第一步。很多人一上来就想着画门电路、写Verilog,结果需求里有个边…

2026/8/26 22:08:09 阅读更多 →
人形机器人400米45.66秒夺冠:运动控制与硬件瓶颈全解析

人形机器人400米45.66秒夺冠:运动控制与硬件瓶颈全解析

这次看到这个成绩的时候,第一反应不是“跑得真快”,而是人形机器人的运动控制已经推进到可以在标准田径场上完成高速奔跑、弯道过弯和冲刺整套动作的阶段了。第二届世界人形机器人运动会 400 米小型组决赛里,天工 Omni 以 45.66 秒夺冠。这个…

2026/8/26 22:08:09 阅读更多 →
Codex与开发工具缓存迁移:彻底解决C盘空间告急

Codex与开发工具缓存迁移:彻底解决C盘空间告急

1. C盘又红了:Codex、缓存和自动化工具的“三座大山”最近在本地开发时发现 C 盘空间又亮起了红灯,清理完临时文件、回收站之后,没过多久空间又被打回原形。仔细排查了一遍磁盘占用,发现问题主要集中在三个方向:Codex …

2026/8/26 22:07:08 阅读更多 →

日新闻

Python random 模块常用函数详解:从入门到实战

Python random 模块常用函数详解:从入门到实战

目录 1. 引言2. 准备工作3. 基础随机函数4. 序列相关函数5. 随机种子与复现6. 实战案例7. 注意事项8. 常见问题与排查9. 总结 1. 引言 摘要: 本文系统介绍 Python 标准库 random 模块中最常用的随机数生成函数。内容涵盖基础随机函数(random()、unifor…

2026/8/26 0:00:40 阅读更多 →
《Microsoft Sql server 2008 Internals》读书笔记--第三章Databases and Database Files(2)

《Microsoft Sql server 2008 Internals》读书笔记--第三章Databases and Database Files(2)

《Microsoft Sql server 2008 Internals》索引目录: 《Microsoft Sql server 2008 Internals》读书笔记--目录索引 在上篇文章中,主要介绍了创建数据库的基本语法和FileGroup的初步知识。需要注意的是: 关于FileGroup 如果你的系统是用Raid设备直接存…

2026/8/26 1:18:18 阅读更多 →
政务AI智能体怎么建?三种模式、三步路径与四个误区

政务AI智能体怎么建?三种模式、三步路径与四个误区

政务AI智能体已经从概念试点阶段,转入了政务服务的常态化落地应用;在实际使用过程中,它能自主理解办事需求、辅助完成填报申报、开展材料预审,并联动多个系统协同作业,真正嵌入到政务办理的全流程当中。但在落地推进过…

2026/8/26 1:18:18 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/26 14:45:33 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/26 17:46:43 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/26 14:46:37 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/26 3:50:20 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/26 17:46:39 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/26 1:24:05 阅读更多 →