摘要:
数据库Schema有两种含义,一种是概念上的Schema,指的是一组DDL语句集,该语句集完整地描述了数据库的结构。还有一种是物理上的Schema,指的是数据库中的一个名字空间,它包含一组表、视图和存储过程等命名对象。物理Schema可以通过标准SQL语句来创建、更新和修改。例如以下SQL语句创建了 阅读全文
摘要:
简介 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统。它的设计目标是嵌入式的,目前Android和iOS的设备内置的都是SQLite数据库。SQLite虽然娇小,但也支持事务和多数的SQL92标准。 主要特点 Zero-Configuration 无需安装和管理配置。 Ser 阅读全文
摘要:
original SQL text <sqlite3_prepare_v2> >sqlite3_stmt--<sqlite3_reset>-->clear sqlite3_stmt --<sqlite3_bind_*(stmt,1,*)>--> configed sqlite3_stmt --<sq 阅读全文
摘要:
最近项目中涉及到sqlite并发读写的问题,参考一些文档并结合自己的实践,对sqlite3并发问题总结了几点: sqlite3的锁及事务类型 sqlite3总共有三种事务类型:BEGIN [DEFERRED /IMMEDIATE / EXCLUSIVE] TRANSCATION,五种锁,按锁的级别依 阅读全文
摘要:
提到锁就不得不说到死锁的问题,而SQLite也可能出现死锁。下面举个例子:连接1:BEGIN (UNLOCKED)连接1:SELECT ... (SHARED)连接1:INSERT ... (RESERVED)连接2:BEGIN (UNLOCKED)连接2:SELECT ... (SHARED)连接 阅读全文
摘要:
本篇主要从SQLite事务执行的原理中寻找如何更高效地使用它。 本篇预备知识 我们先来了解下SQLite执行事务的基本流程,状态变化过程,再分析怎么使用才更优。SQLite定义的锁的状态有如下几种: UNLOCK:最初始状态,没有任何锁在数据库上; SHARED:共享状态,允许读取数据,但是不能写入 阅读全文
摘要:
体系结构 在内部,SQLite由以下几个组件组成:内核、SQL编译器、后端以及附件。SQLite通过利用虚拟机和虚拟数据库引擎(VDBE),使调试、修改和扩展SQLite的内核变得更加方便。所有SQL语句都被编译成易读的、可以在SQLite虚拟机中执行的程序集。SQLite支持大小高达2 TB的数据 阅读全文
摘要:
SQLite 与线程 SQLite 是线程安全的。 线程模型 SQLite 支持如下三种线程模型 单线程模型 这种模型下,所有互斥锁都被禁用,同一时间只能由一个线程访问。 多线程模型 这种模型下,一个连接在同一时间内只有一个线程使用就是安全的。 串行模型 开启所有锁,可以随意访问。 设置线程模型 S 阅读全文
摘要:
这个学科的世界观中有什么? 运行规律是什么? 建立的体系是什么 系统学习的重要性:系统学习是建立一个完整的学科世界观; 阅读全文
摘要:
3. 单文件提交 我们首先概要说明SQLite在单个数据库文件上为了执行事务的原子提交而采取的步骤.在后面的部分将讨论如何设计文件格式以保护其在断电故障中损坏,以及原子提交在多个数据库上的执行. 3.1. Initial State 数据库连接首次打开的时候, 计算机的状态如下图所示.图中最右边标记 阅读全文
摘要:
一、什么是WAL? WAL的全称是Write Ahead Logging,它是很多数据库中用于实现原子事务的一种机制,SQLite在3.7.0版本引入了该特性。 二、WAL如何工作? 在引入WAL机制之前,SQLite使用rollback journal机制实现原子事务。 rollback jour 阅读全文
摘要:
锁机制 SQLite基于锁来实现并发控制。SQLite的锁是粗粒度的,并不拥有PostgreSQL那样细粒度的行锁,这也使得SQLite较为轻量级。当一个连接要写数据库时,所有其它的连接都被锁住,直到写连接结束它的事务。 SQLite的数据库连接有5种状态: SQL使用锁逐步提升机制,上面的表格从上 阅读全文
摘要:
万物之始,大道至简,衍化至繁 阅读全文
摘要:
数据库管理系统的基本要素: 数据结构与算法; 语言; 关系代数; 并发模型; 阅读全文
摘要:
大脑是工具箱,知识是工具; 知识是先辈验证过的好用的工具; 学习就是复制先辈工具的过程; 工具的使用要因地制宜、理论联系实际; 知识是工具;工具是手段;工具的管理与使用;工具要落地;工具要改造定制; 听惯了“知识改变命运”,其实这是个省略句。原句应该是“用知识改变命运”,这里的知识是被用的,其实指的 阅读全文
摘要:
反射与内省: 类型系统的特征: 反射用于获取类型信息; 内省用语运行时类型检查; 阅读全文
摘要:
定位理论第一能够将思考对象的边界明晰 第二讲思考对象投射到相应领域的世界观上; 从而用相应领域的世界观、方法论来理解、还原、内化相关概念; 定位理论是思考之前的思考; 根据思考对象的不同层次和侧面,将对象定位到不同的域,从而进行全面的研究; 定位理论是全面思考的基础; 世界观: 世界观是认识对象投射 阅读全文
摘要:
数据库的未来:ORM+LINQ+RX 数据 操作 异步 ORM LINQ RX 阅读全文
摘要:
数据库最基础的并发控制是事务模型; 事务模型的锁会形成排队机制; 一、事务 事务:将多个操作打包(成单一体)进行执行的控制技术; 事务:将多个操作原子化执行的技术; 事务(Transaction:一个程序执行单元(unit)。 事务由事务开始(begin transaction)和事务结束(end 阅读全文
摘要:
class Human { //8 type or isa //retainCount var age: Int?//16 var name: String?//16 var nicknames: [String] = [String]() //返回指向 Human 实例头部的指针 func hea 阅读全文