SQLite教程(十):内存数据库和临时数据库

 更新时间:2015年05月04日 16:49:08   投稿:junjie  
这篇文章主要介绍了SQLite教程(十):内存数据库和临时数据库,本文讲解了它们的创建方法和相关知识,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

一、内存数据库:

    在SQLite中,数据库通常是存储在磁盘文件中的。然而在有些情况下,我们可以让数据库始终驻留在内存中。最常用的一种方式是在调用sqlite3_open()的时候,数据库文件名参数传递":memory:",如:
 

复制代码 代码如下:

    rc = sqlite3_open(":memory:", &db);
 

    在调用完以上函数后,不会有任何磁盘文件被生成,取而代之的是,一个新的数据库在纯内存中被成功创建了。由于没有持久化,该数据库在当前数据库连接被关闭后就会立刻消失。需要注意的是,尽管多个数据库连接都可以通过上面的方法创建内存数据库,然而它们却是不同的数据库,相互之间没有任何关系。事实上,我们也可以通过Attach命令将内存数据库像其他普通数据库一样,附加到当前的连接中,如:
 
复制代码 代码如下:

    ATTACH DATABASE ':memory:' AS aux1;
 

   
二、临时数据库:

    在调用sqlite3_open()函数或执行ATTACH命令时,如果数据库文件参数传的是空字符串,那么一个新的临时文件将被创建作为临时数据库的底层文件,如:
 

复制代码 代码如下:

    rc = sqlite3_open("", &db);
 

    或
 
复制代码 代码如下:

    ATTACH DATABASE '' AS aux2;
 

    和内存数据库非常相似,两个数据库连接创建的临时数据库也是各自独立的,在连接关闭后,临时数据库将自动消失,其底层文件也将被自动删除。
    尽管磁盘文件被创建用于存储临时数据库中的数据信息,但是实际上临时数据库也会和内存数据库一样通常驻留在内存中,唯一不同的是,当临时数据库中数据量过大时,SQLite为了保证有更多的内存可用于其它操作,因此会将临时数据库中的部分数据写到磁盘文件中,而内存数据库则始终会将数据存放在内存中。

相关文章

  • Sqlite 操作类代码

    Sqlite 操作类代码

    这两天用了用SQLite,感觉比SQL CE好用多了,最主要的是性能好多了.这一点对手持设备来讲很重要.闲话少说,下来将怎么在WM用.NET CF访问SQLite.
    2009-11-11
  • SQLite中重置自动编号列的方法

    SQLite中重置自动编号列的方法

    这篇文章主要介绍了SQLite中重置自动编号列的方法,本文讲解了3种情况和其对应解决方法,需要的朋友可以参考下
    2015-03-03
  • SQLite教程(十二):锁和并发控制详解

    SQLite教程(十二):锁和并发控制详解

    这篇文章主要介绍了SQLite教程(十二):锁和并发控制详解,本文讲解了锁和并发控制机制概述、文件锁、回滚日志、数据写入、SQL级别的事务控制等内容,需要的朋友可以参考下
    2015-05-05
  • SQLite速度评测代码

    SQLite速度评测代码

    SQLite 作为一个轻量级嵌入式数据库,还是非常好用的。雨痕极力推荐~~~~~~
    2008-09-09
  • ubuntu下使用SQLite3的基本命令

    ubuntu下使用SQLite3的基本命令

    sqlite3一款主要用于嵌入式的轻量级数据库,本文旨在为熟悉sqlite3基本命令提供技术文档。希望对读者们有所帮助,如有疑问请和我联系,尽可能解答
    2014-08-08
  • CentOS下更新SQLite版本

    CentOS下更新SQLite版本

    SQLite是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。这篇文章主要介绍了CentOS下更新SQLite版本,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2021-12-12
  • 基于sqlite特殊字符转义的实现方法

    基于sqlite特殊字符转义的实现方法

    本篇文章是对sqlite特殊字符转义的实现方法进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • sqlite3 top的查询及limit语法介绍

    sqlite3 top的查询及limit语法介绍

    sqlite3中没有top的语法结构,不过相关的语法能实现跟top语法相同的功能,感兴趣的你可以参考下,希望可以帮助到你
    2013-02-02
  • SQLite数据库常用语句及MAC上的SQLite可视化工具MeasSQLlite使用方法

    SQLite数据库常用语句及MAC上的SQLite可视化工具MeasSQLlite使用方法

    这篇文章主要介绍了SQLite数据库常用语句及MAC上的SQLite可视化工具MeasSQLlite使用方法,需要的朋友可以参考下
    2016-01-01
  • SQLite教程(十一):临时文件

    SQLite教程(十一):临时文件

    这篇文章主要介绍了SQLite教程(十一):临时文件,本文讲解了七种临时文件并对它们一一具体说明,并相关的编译时参数和指令、其它优化策略等内容,需要的朋友可以参考下
    2015-05-05

最新评论

?


http://www.vxiaotou.com