按关键词阅读: 嵌入式数据库
1、嵌入式数据库简介,SQLite,纲要,SQLite介绍 SQLite的发展、优势、缺憾 部结构 SQLite数据库的使用 SQLite的命令行接口 、SQLite命令行使用 SQLite数据库的编程接口 C/C+接口 简单应用 自定义简单函数 自定义聚合函数 自定义排序函数 SQLite数据库在ASTRAL中的应用 SQLite在多级关联中的应用 SQLite在IPIS中的应用 SQLite在web中的应用,SQLite介绍,SQLite的发展 2000年由D.Richard Hipp开始开发 2001年发布2.0v 2004年发布3.0v(采用了不同的数据文件格式以及编程接口) 目标 易于管 。
2、理、操作、维护、自定义以及提供易用的编程接口,SQLite介绍,SQLite的优势 内存占用量小 比MySQL(2倍), PostgreSQL(20倍)快 ACID兼容(原子性 , 一致性 , 独立性,可持久性) , 支持视图 , 子查询 , 触发器 单个库文件中包含数据库引擎与接口,且其运行不依赖其它库 可以将数据放进单个文件 为C/C+, Perl,PHP等应用提供了接口 免费 允许为SQL命令集动态添加自定义函数(简单函数及聚集函数) , 而无需重编SQLite库,SQLite介绍,SQLite的 缺点 事务处理并发性 SQLite通过数据库级上的独占性和共享锁来实现独立事务处理 , 这意味着当多个进程或线程在同一 。
3、时间可以从数据库读取数据 , 但是只能有一个可以同时写入 , 在写入之前 , 必须获得独占锁 , 其它的读操作不允许发生 。
性能 在创建索引( CREATE INDEX)和删除表( DELTE TABLE)时明显比其它数据库慢 用户管理/安全 数据库的访问是基于操作系统对文件的控制来控制的 , 不能通过用户来区分数据库中的不同数据库. 举例 , 将数据库文件去写权限 , 然后向其中插入或删除数据条目,将提示写失败 。
但是不能通过数据库本身的来对权限进行设置 。
在网上已经有一些SQLite的安全问题的解决方案 , 但大多数是商业化的 , 有些提供在整个数据库上的加密 , 有些提供在数据级别的加密 。
比如secure SQLite之类,SQ 。
4、Lite的内部结构,在内部 , SQLite 由以下几个组件组成:SQL 编译器、内核、后端以及附件 。
SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE) , 使调试、修改和扩展 SQLite 的内核变得更加方便 。
所有 SQL 语句都被编译成易读的、可以在 SQLite 虚拟机中执行的程序集,1、接口将SQL语句传给SQL编译器 2、SQL编译器选将SQL分解成为Token 3、将Token传递给解析器进行解析 、由代码生成器生成虚拟机代码 、由虚拟机执行生成的程序 6、SQLite库在磁盘上以B树形式组织(每个表和索引都有自己单独的B树 , 所有的B树都保存的同一个文件里面) 7、OS层的操作,大多 。
5、数的SQL内建函数可以在func.c, date.c里面找到 。
用户自定义函数编写可以参考这里面的实现 。
无论内内建函数还是用户自定义函数都是用C的回调方式实现(稍后再做介绍,SQLite数据库的使用,SQLite命令行接口 SQLite除库本身外 , 还包含命令行接口 , 可以在$SQLITE_HOME/bin下发现sqlite/sqlite3 ,命令行功能介绍 运行方式:sqlite DBFile 得到提示符sqlite 运行.help(注意sqlite命令行提供的命令都以”.”开头 , 可以看到sqlite命令行接口提供下面的功能,SQLite命令行功能简介,SQLite命令行功能简介 DML/DDL语 。
6、句的使用和以前一致 , 不做介绍 .databases 列出数据库文件名 .tables ?PATTERN? 列出?PATTERN?匹配的表名 .import FILE TABLE将文件中的数据导入的文件中 .dump ?TABLE? 生成形成数据库表的SQL脚本 .output FILENAME 将输出导入到指定的文件中 .output stdout 将输出打印到屏幕 .mode MODE ?TABLE? 设置数据输出模式(csv,html,tcl .nullvalue STRING 用指定的串代替输出的NULL串 .read FILENAME执行指定文件中的SQL语句 .schema ?TAB 。
7、LE? 打印创建数据库表的SQL语句 .separator STRING 用指定的字符串代替字段分隔符 .show 打印所有SQLite环境变量的设置 .quit 退出命令行接口,SQLite命令行功能使用,SQLITE命令行的常规使用: SQLite数据导入 创建数据文件 这个文件可能来自其它的其它程序的输出之类 , 现只我们手功创建下面的数据文件data.txt(用逗号分隔): id, name,gender, age 1,dq,male,24 2,jz,female,27 3.pp,male,26 4,cj,male,28 5,zc,male,25 创建数据库表 五种数据类型 TEXT,NU 。
8、MERIC,INTEGER,REAL,NONE 数据类型的转换 向保存的目标类型转换 , 如将text保存到integer , 则试着将文件转为数字(int或float) , 如果转换失败 , 则做为文件保存. 数据库表创建 shell sqlite3 test.db sqlite create table employee( id integer primary key, name text, gender text, age integer,SQLite命令行功能使用,数据导入 sqlite.import data.txt employee sqlite提示:data.txt line1:expected 。
来源:(未知)
【学习资料】网址:/a/2021/0321/0021740501.html
标题:嵌入式数据库简介|嵌入式数据库简介