FIREDAC操作SQLITE内存数据库】的更多相关文章

SQLite不仅可以把数据库放在硬盘上,还可以放在内存中,经测试,同样条件下数据库放在内存中比放在硬盘上插入记录速度快差不多3倍. 但数据库放在内存中时有如下缺陷: 1.断电或程序崩溃后数据库就会消失,你需要定期Attach到硬盘上备份: 2.在内存中的数据库不能被别的进程访问(因为没名字,以后可能支持),即使在多线程下,也得使用同一句柄: 3.不支持像在硬盘上的读写互斥处理,需要自己加锁. 4.只能本进程使用,其它进程无法使用. 1)FIREDAC创建和使用参数打开一个SQLite内存数据库:…
由于sqlite对多进程操作支持效果不太理想,在项目中,为了避免频繁读写 文件数据库带来的性能损耗,我们可以采用操作sqlite内存数据库,并将内存数据库定时同步到文件数据库中的方法. 实现思路如下: 1.创建文件数据库: 2.创建内存数据库(文件数据库.内存数据库的内幕表结构需要一致): 3.在内存数据库中attach文件数据库,这样可以保证文件数据库中的内容在内存数据库中可见: 4.对于insert.select操作,在内存数据库中完成,对于delete.update操作,需要同时访问内存.…
对于很多嵌入式数据库来说都有对于的内存数据库模式,SQLite也不例外.内存数据库常常用于极速.实时的场景,一个很好的应用的场景是富客户端的缓存数据,一般富客户端的缓存常常需要分为落地和非落地两种,而反应到SQLite上就是主要两种模式,一种是文件类型的数据库,一种是内存模式的.而我们常常需要做的是系统启动初从文件数据库加载到内存数据库,然后在系统退出或定时的将内存数据回写到文件数据库.这种导入和导出操作,在C#版本的SQLite库中已经原生进行了支持.而C版本中实际上对应了三个函数,你可以参照…
sqlite是支持内存数据库的,在Android中,我们可以通过provider实现内存数据库操作.内存数据库的优点,访问速度快,但在连接关闭后,数据库自动消失(在android中的表现是,provider所在进程死了,内存库就没了).应用场景,对于一次会话产生的临时数据或者密码等安全数据,这些数据仅想在应用运行期间有效,可以考虑用内存数据库. 在继承SQLiteOpenHelper的实现中,重载open方法,建立内存数据库与表.具体代码如下: private static final Stri…
1.概述 1.1前言 最近在存储字模图像集的时候,需要学习LMDB,趁此机会复习了SQLite和MySQL的使用,一起整理在此. 1.2环境 使用win7,Python 3.5.2. 2.SQLite 2.1准备 SQLite是一种嵌入式数据库,它的数据库就是一个文件.Python 2.5x以上版本内置了SQLite3,使用时直接import sqlite3即可. 2.2操作流程 概括地讲,操作SQLite的流程是: ·通过sqlite3.open()创建与数据库文件的连接对象connectio…
Java操作Sqlite数据库步骤: 1. 导入Sqlite jdbc 本文使用sqlite-jdbc-3.7.2.jar,下载地址 http://pan.baidu.com/s/1kVHAGdD 2. 编写jdbc连接代码 public class OpSqliteDB { private static final String Class_Name = "org.sqlite.JDBC"; private static final String DB_URL = "jdb…
SQLite介绍 SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. SQLite是一个开源.免费的小型RDBMS(关系型数据库),能独立运行.无服务器.零配置.支持事物,用C实现,内存占用较小,支持绝大数的SQL92标准. SQLite数据库官方主页:http://www.sqlite.o…
1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.example.demo1" /> 上面targetPackage指定的包要和应用的package相同. (2)在清单文件中ap…
操作SQLite的dbhelper public class DbHelper { string connStr = @"Data Source=" + System.Environment.CurrentDirectory + @"\workhelper.db;Initial Catalog=sqlite;Integrated Security=True;Max Pool Size=10"; /// <summary> /// 执行增删改 /// &l…
root@cacti:~/box# cat convert.py #!/usr/bin/env python import sqlite3,time,rrdtool,os def boxstatus(): ''' check the status of the box, and set it to 1 if it is online, set it to 0 if it is offline ''' if "status.db": os.system('rm status.db') d…