- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式数据库简介 ----SQLite 纲要 SQLite介绍 SQLite的发展 SQLite的优势 SQLite的缺憾 SQLite的内部结构 SQLite数据库的使用 SQLite的命令行接口 SQLite命令行使用 SQLite数据库的编程接口 C/C++接口 简单应用 SQLite介绍 SQLite的发展 2000年由D.Richard Hipp开始开发 2001年发布2.0v 2004年发布3.0v(采用了不同的数据文件格式以及编程接口) 目标 易于管理、操作、维护、自定义以及提供易用的编程接口 SQLite介绍 SQLite的优势 内存占用量小 比MySQL(2倍), PostgreSQL(20倍)快 ACID兼容(原子性,一致性,独立性,可持久性),支持视图,子查询,触发器 单个库文件中包含数据库引擎与接口,且其运行不依赖其它库 可以将数据放进单个文件 为C/C++, Perl,PHP等应用提供了接口 免费 允许为SQL命令集动态添加自定义函数(简单函数及聚集函数),而无需重编SQLite库 SQLite介绍 SQLite的 缺点 事务处理并发性 SQLite通过数据库级上的独占性和共享锁来实现独立事务处理,这意味着当多个进程或线程在同一时间可以从数据库读取数据,但是只能有一个可以同时写入,在写入之前,必须获得独占锁,其它的读操作不允许发生。 性能 在创建索引( CREATE INDEX)和删除表( DELTE TABLE)时明显比其它数据库慢 用户管理/安全 数据库的访问是基于操作系统对文件的控制来控制的,不能通过用户来区分数据库中的不同数据库. 举例,将数据库文件去写权限,然后向其中插入或删除数据条目,将提示写失败。但是不能通过数据库本身的来对权限进行设置。 在网上已经有一些SQLite的安全问题的解决方案,但大多数是商业化的,有些提供在整个数据库上的加密,有些提供在数据级别的加密。比如secure SQLite之类。 SQLite的内部结构 在内部,SQLite 由以下几个组件组成:SQL 编译器、内核、后端以及附件。SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE),使调试、修改和扩展 SQLite 的内核变得更加方便。所有 SQL 语句都被编译成易读的、可以在 SQLite 虚拟机中执行的程序集。 SQLite数据库的使用 SQLite命令行接口 SQLite除库本身外,还包含命令行接口,可以在$SQLITE_HOME/bin下发现sqlite/sqlite3, 命令行功能介绍 运行方式:sqlite DBFile 得到提示符sqlite 运行.help(注意sqlite命令行提供的命令都以”.”开头,可以看到sqlite命令行接口提供下面的功能. SQLite命令行功能简介 SQLite命令行功能简介 DML/DDL语句的使用和以前一致,不做介绍 .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 ?TABLE? 打印创建数据库表的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, INTEGER,REAL 数据类型的转换 向保存的目标类型转换,如将text保存到integer,则试着将文件转为数字(int或float),如果
您可能关注的文档
- 第2章数据的存储与运算讲解.ppt
- 第2章数据库和表讲解.ppt
- 第2章数据库设计讲解.ppt
- 第2章水电解质酸碱平衡失调病人护理讲解.ppt
- 第2章水和废水监测练习题讲解.ppt
- 第2章-水泥-2讲解.ppt
- 第2章水泥及掺合料讲解.ppt
- 第2章水质与水质标准讲解.ppt
- 第2章塑料成型工艺讲解.ppt
- 第2章天线讲解.ppt
- 浙江省临海市白云高级中学2025届高三历史3月月考试题.doc
- 云南拾谷县第一中学2024_2025学年高二物理上学期10月月考试题.doc
- 2025版高考生物总复习第13讲基因的分离定律教案苏教版.doc
- 湖北省黄石实验高中2024_2025学年高一历史下学期期末考试模拟卷.doc
- 通史版2025版高考历史大一轮复习专题七近代化的曲折发展__中日甲午战争至五四运动前4第4讲从维新思想到新文化运动课后达标检测含解析新人教版.doc
- 2024年高考数学考试大纲解读专题04导数及其应用含解析文.doc
- 河南省许汝平九校联盟2024_2025学年高一语文上学期期末考试试题扫描版无答案.doc
- 江西省吉安市吉水县第二中学2024_2025学年高一历史上学期第二次月考试题.doc
- 北京市平谷区2025届高三政治一模考试试题含解析.doc
- 2025届中考物理第四讲物态变化专项复习测试无答案新人教版.docx
文档评论(0)