,sqlite3优缺点?

用户投稿 90 0

关于“php_sqlite3配置”的问题,小编就整理了【3】个相关介绍“php_sqlite3配置”的解答:

sqlite3优缺点?

sqlite的主要优点:

 零配置(Zero Configuration)

SQlite3不用安装,不用配置,不用启动,关闭或者配置数据库实例。当系统崩溃后不用做任何恢复操作,再下次使用数据库的时候自动恢复。

 紧凑(compactness):

  SQLite是被设计成轻量级,自包含的。一个头文件,一个lib库,你就可以使用关系数据库了,不用任何启动任何系统进程。一般来说,整个SQLITE库小于225KB。

 可移植(Portability)

 它是运行在Windows,Linux,BSD,Mac OSX和一些商用Unix系统,比如Sun的Solaris,IBM的AIX,同样,它也可以工作在许多嵌入式操作系统下,比如QNX,VxWorks,PalmOS, Symbin和Windows CE。

  最大特点:采用无数据类型,所以可以保存任何类型的数据,SQLite采用的是动态数据类型,会根据存入值自动判断。SQLite具有以下五种数据类型:

1.NULL:空值。

2.INTEGER:带符号的整型,具体取决有存入数字的范围大小。

3.REAL:浮点数字,存储为8-byte IEEE浮点数。

4.TEXT:字符串文本。

sqlite3缓存,参数?

Sqlite 缓存参数在下文中查询:数据库一般运行在嵌入式环境中,需要兼顾性能和硬件资源。

Pragma 值描述DELETE默认模式。在该模式下,在事务结束时,日志文件将被删除。TRUNCATE日志文件被阶段为零字节长度。PERSIST日志文件被留在原地,但头部被重写,表明日志不再有效。MEMORY日志记录保留在内存中,而不是磁盘上。OFF不保留任何日志记录。

Pragma 值描述0 或 NONE禁用 Auto-vacuum。这是默认模式,意味着数据库文件尺寸大小不会缩小,除非手动使用 VACUUM 命令。1 或 FULL启用 Auto-vacuum,是全自动的。在该模式下,允许数据库文件随着数据从数据库移除而缩小。2 或 INCREMENTAL启用 Auto-vacuum,但是必须手动激活。在该模式下,引用数据被维持,自由页面只放在自由列表中。这些页面可在任何时候使用 incremental_vacuum pragma 进行覆盖。

void db_config(sqlite3 *db)

{

int ret;

char *errmsg=NULL;

system("sync");

ret = db_sql_exec(db,"pragma journal_mode=delete;",&errmsg);

如何设置sqlite?

给sqlite数据库加密解密的方法:

1、创建空的sqlite数据库。

//数据库名的后缀你可以直接指定,甚至没有后缀都可以

//方法一:创建一个空sqlite数据库,用io的方式

filestreamfs=file.create(“c:\\test.db“);

//方法二:用sqliteconnection

sqliteconnection.createfile(“c:\\test.db“);

创建的数据库是个0字节的文件。

2、创建加密的空sqlite数据库

//创建一个密码为password的空的sqlite数据库

sqliteconnection.createfile(“c:\\test2.db“);

sqliteconnectioncnn=newsqliteconnection(“datasource=c:\\test2.db“);

sqliteconnectioncnn=newsqliteconnection(“datasource=d:\\test2.db“);

cnn.open();

cnn.changepassword(“password“);

3、给未加密的数据库加密

sqliteconnectioncnn=newsqliteconnection(“datasource=c:\\test.db“);

到此,以上就是小编对于“php_sqlite3配置”的问题就介绍到这了,希望介绍关于“php_sqlite3配置”的【3】点解答对大家有用。

抱歉,评论功能暂时关闭!