登录 注册
数据分析与数据处理 androiddatabaseioslinuxmacossqlcipher
11,652
Stars
1,500
Forks
276
Watchers
30
Open Issues
NOASSERTION
许可证
C
语言
2017-05-11
创建时间
2026-10-08
最近更新

项目能做什么

微信团队开源的高性能、跨平台移动数据库框架。
来源:AI 基于仓库事实生成 · 内容以仓库实际 README 为准

使用说明 查看原始 README 原仓库文档

中文使用说明暂未生成。下面保留原仓库 README 摘录,命令与配置均以原文为准。
原始 README 摘录(英文原文,节选前 3000 字符)
# WCDB

[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/Tencent/wcdb/pulls)
[![Release Version](https://img.shields.io/badge/Release-2.1.15-brightgreen.svg)](https://github.com/Tencent/wcdb/releases)
[![Language](https://img.shields.io/badge/Language-%20C++%20%7C%20Java%20%7C%20Kotlin%20%7C%20Swift%20%7C%20Objc-brightgreen.svg)](https://github.com/Tencent/wcdb/wiki)[![Platform](https://img.shields.io/badge/Platform-%20iOS%20%7C%20macOS%20%7C%20Android%20%7C%20Windows%20%7C%20Linux%20%7C%20OpenHarmony-brightgreen.svg)](https://github.com/Tencent/wcdb/wiki)

中文版本请参看[这里][wcdb-wiki]

WCDB is an **efficient**, **complete**, **easy-to-use** mobile database framework used in the WeChat application. It's based on SQLite and SQLCipher, and supports five languages: C++, Java, Kotlin, Swift and Objective-C.

# Feature

## **Easy-to-use**

* **ORM** (Object Relational Mapping): WCDB provides a flexible, easy-to-use ORM for creating tables, indices and constraints, as well as CRUD through C++/Java/Kotlin/Swift/Objc objects.
* **WINQ** (WCDB language integrated query): WINQ is a native data querying capability which frees developers from writing glue code to concatenate SQL query strings.

With ORM and WINQ, you can insert, update, query and delete objects from database in one line code: 

```c++
// C++
database.insertObjects<Sample>(Sample(1, "text"), myTable);
database.updateRow("text2", WCDB_FIELD(Sample::content), myTable, WCDB_FIELD(Sample::id) == 1);
auto objects = database.getAllObjects<Sample>(myTable, WCDB_FIELD(Sample::id) > 0);
database.deleteObjects(myTable, WCDB_FIELD(Sample::id) == 1);
```

```java
// Java
database.insertObject(new Sample(1, "text"), DBSample.allFields(), myTable);
database.updateValue("text2", DBSample.content, myTable, DBSample.id.eq(1));
List<Sample> objects = database.getAllObjects(DBSample.allFields(), myTable, DBSample.id.gt(0));
database.deleteObjects(myTable, DBSample.id.eq(1));
```

```kotlin
// Kotlin
database.insertObject<Sample>(Sample(1, "text"), DBSample.allFields(), myTable)
database.updateValue("text2", DBSample.content, myTable, DBSample.id.eq(1))
val objects = database.getAllObjects<Sample>(DBSample.allFields(), myTable, DBSample.id.gt(0))
database.deleteObjects(myTable, DBSample.id.eq(1))
```

```swift
// Swift
try database.insert(Sample(id:1, content:"text"), intoTable: myTable)
try database.update(table: myTable,
                    on: Sample.Properties.content,
                    with: "text2"
                    where:Sample.Properties.id == 1)
let objects: [Sample] = try database.getObjects(fromTable: myTable,
                                                where: Sample.Properties.id > 0)
try database.delete(fromTable: myTable where: Sample.Properties.id == 1)
```

```objective-c
// Objc
[database insertObject:sample intoTable:myTable];
[database updateTable:myTable
          setProperty:Sample.content
              toValue:@"text2"
                where:Sam
阅读完整原文

项目深度分析 AI 生成

WCDB/SQLCipher 可视化跨平台桌面管理与调试工具

产品构想针对WCDB和SQLCipher特有加密机制及损坏恢复机制,打造专门的桌面端(macOS/Windows)GUI查看与调试软件,解决现有普通SQLite查看器无法打开或调试复杂加密与RepairKit机制的痛点。
核心功能支持WCDB原生加密算法直接解析、WINQ语句调试预览、表结构与ORM模型对比校验、损坏数据文件手动检测与修复可视化。
目标用户使用WCDB进行移动端开发的iOS/Android工程师、QA测试人员。
难度/周期中等 · 2-3个月 · 成本:极低(主要是跨平台GUI框架开发时间成本)
收费模式独立商业软件售卖(类似TablePlus/Navicat授权,买断制或订阅制)。
竞争风险现有SQLite/SQLCipher通用工具有替代空间;目标客群规模局限于WCDB重度开发者。
依据 已验证事实

移动端离线数据库紧急数据恢复服务与工具箱

产品构想基于WCDB内置RepairKit算法与SQLite底层B-tree恢复技术,向企业提供端侧数据库损坏恢复的自动化工具箱及专家兜底恢复服务。
核心功能深度B-tree碎片扫描、损坏页特征提取与修复、WCDB专用备份文件解析器、企业级恢复成功率诊断报告。
目标用户涉及关键金融交易、本地离线账本、医疗或涉密即时通讯的移动应用企业客户。
难度/周期高 · 3-6个月 · 成本:低至中等(需要深厚的底层存储引擎解析算法积累)
收费模式按次收取专家级数据恢复服务费,或向企业售卖离线数据修复工具SDK/CLI授权。
竞争风险端侧数据库严重损坏场景属于低频偶发事件;部分数据涉及合规与隐私,企业可能无法外发文件委托修复。
依据 数据支持的判断

现代跨平台框架(Flutter/React Native/Rust)生态绑定封装与技术支持

产品构想官方目前主要支持C++、Java、Kotlin、Swift、ObjC,将其高性能及加密特性封装为针对Flutter或React Native的高性能开箱即用插件,并提供长期维护及企业技术支持。
核心功能Flutter/RN双端原生绑定FFI、零拷贝ORM映射、跨平台同步全文本搜索支持、多版本持续适配保障。
目标用户使用Flutter/React Native构建跨平台App且对端侧加密、高并发性能有极高要求的中大型企业团队。
难度/周期中等 · 1-2个月 · 成本:极低(主要为FFI封装与跨平台打包适配工作)
收费模式开源核心+高级特性商用授权(双重协议)或企业Sponsor/付费定制适配服务。
竞争风险开源社区可能自发产生高质量第三方Binding削弱溢价能力;大厂开源项目直接跟进原生跨平台SDK。
依据 AI推测
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心

竞品与相似项目 GitHub Search 真实检索

相似项目数据正在完善中,暂不展示(避免误导)

项目优势与风险

技术成熟度创建于 2017-05-11,最近推送 2026-10-08,发布过 36 个 Release
社区活跃Star 11,652 / Fork 1,500 / Issue 30(数据支持,可自行核实)
许可证NOASSERTION
主要风险上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价

安装与使用

此项目未提供 Docker 镜像,安装步骤以原仓库 README 为准(涉及依赖安装与环境配置,对新手门槛较高)。