日志

2.7.1日志模式</br> 1、可以通过sqlite3PagerSetJournalMode()函数在pager中设置日志的模式eMode,其中包括:</br> ①journalMode==页面日志模式删除(delete)</br> ②journalMode==页面日志模式截断(truncate)</br> ③journalMode==页面日志模式存留(persist)</br> ④journalMode==页面日志模式关闭(off)</br> ⑤journalMode==页面日志模式存储(memory)</br> ⑥journalMode==页面日志模式预写式日志(wal)</br> 如果有下列两种情况中的任意一种,日志模式不允许改变:</br> 一个内存数据库可以直邮他的日志模式设置_off或者_memory。</br> 临时数据库不能有_wal日志模式。</br> 否则日志模式一般被sqlite3PagerSetJournalMode()设为特定值,并通过sqlite3PagerGetJournalMode()返回指出当前(可能更新的)的日志模式。</br> 2、如果页面在改变日志模式赋值OK的状态下返回真。日志模式可以在数据库没有模式化的时候发生改变。</br> 2.7.2 日志大小</br> 用sqlite3PagerJournalSizeLimit()函数得到/设置日志文件不变的大小限制;如果赋值为-1意味着没有限制被执行,如果小于-1就表示尝试是空操作。</br> 2.7.3 日志文件格式:</br> ①8字节的前缀。</br> ②高位4个字节的整数是日志文件有效页的数量。</br> ③高位4个字节的整数是完整性检查的初始值。</br> ④高位4个字节的整数是截短的数据库页面的数量。</br> ⑤高位4个字节的整数是扇区大小。</br> ⑥高位4个字节的整数是页面大小。</br> ⑦下个扇区大小填充为0。</br>

results matching ""

    No results matching ""