SwiftUI SQLite数据库存储使用教程大合集(2022年版)

发布于:2022-07-29 ⋅ 阅读:(488) ⋅ 点赞:(0)

什么是SQLite

SQLite 是一个 C 语言库,它实现了一个小型、快速、自包含、高可靠性、全功能的 SQL 数据库引擎。SQLite 是一个进程内库,它实现了一个自包含、无服务器、零配置、事务性 SQL 数据库引擎。

SQLite 是一个嵌入式 SQL 数据库引擎。与大多数其他 SQL 数据库不同,SQLite 没有单独的服务器进程。SQLite 直接读写普通磁盘文件。具有多个表、索引、触发器和视图的完整 SQL 数据库包含在单个磁盘文件中。数据库文件格式是跨平台的——我们可以在 32 位和 64 位系统之间自由复制数据库。这些特性使 SQLite 成为应用程序文件格式的流行选择。它是世界上使用最多的数据库引擎。SQLite 内置于所有手机和大多数计算机中,并捆绑在人们每天使用的无数其他应用程序中。


基础入门

常用库

SQLite.swift

什么是SQLite.swift

SQLite3上的类型安全的Swift语言库。

SQLite.swift核心功能

  • 纯Swift接口
  • 类型安全、可选感知的SQL表达式构建器
  • 一个灵活、可链、懒惰执行的查询层
  • 自动输入数据访问
  • 一个轻量级、简单的查询和参数绑定接口
  • 开发人员友好的错误处理和调试
  • 全文搜索支持
  • 文档支撑
  • 经过广泛测试
  • 通过CocoaPods支持SQLCipher
  • 适用于Linux(有一些限制)

SQLite 参考代码

    func createTable(){
        let users = Table("users")
        let id = Expression<Int64>("id")
        let email = Expression<String>("email")
        let name = Expression<String>("name")
       // let balance = Expression<Double>("balance")
        //let verified = Expression<Bool>("verified")
        
        do {
            try db!.run(users.create { t in     // CREATE TABLE "users" (
            t.column(id, primaryKey: true) //     "id" INTEGER PRIMARY KEY NOT NULL,
            t.column(email, unique: true)  //     "email" TEXT UNIQUE NOT NULL,
            t.column(name)                 //     "name" TEXT
        })                                 // )
        }
        catch {
            // handle
        }
    }

SQLite.swift系列教程

《SwiftUI3 SQLite 教程大全之 02 SQLite创建自定义数据库表》
在这里插入图片描述


高级使用

加密解密

《SwiftUI SQLite数据大全之 如何创建加密数据库并在项目中读取加密数据 (SQLite.swift SQLCipher教程含源码)》

 如何创建加密数据库并在项目中读取加密数据

本文含有隐藏内容,请 开通VIP 后查看