初识SQLITE3数据库

 更新时间:2014年08月19日 09:10:41   投稿:hebedich  
本文主要讲诉Sqlite数据库的一些基本概念以及SQLite的优势,需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

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

数据库DataBase,我们都没有接触过数据库,那么数据库是什么?

   它是一个有结构的、集成的、可共享的统一管理的数据集合!

所谓有结构的,指的是数据是按一定的模型组织起来的。

   简单的说,拿个箱子,用隔板把它隔开,如此箱子被分为许多格子,因而我们像填坑一样把数据放进去!OK,那么就把数据组装起来,有人说不如用结构体?但是不要忘了,箱子还可以分类、储存。这是结构体不能做到的!

所谓集成的,是指数据库中集中存放着企业各种各样的数据。

    就如上面我所讲的一样,箱子把零散的数据集结在一起一样!

    而且你可以在这个箱子里面把你多余的东西全部清理掉,对吧?

如此集中存放的好处显而易见:

  (1)一个数据只需一个备份,重复存储少,即消除了数据的冗余。

  (2)没有数据冗余,也就能保证数据的一致。

所谓共享,指的是数据库中的数据可以被不同的用户使用。也就是说,每一个用户可以按自己的要求访问相同的数据库。

所谓统一管理的,指的是数据库由DBMS统一管理,任何数据访问都是通过DBMS来完成的。

共享和统一管理我就不说了,一个箱子当然是可以给其他人用啦,只要你不上锁!

刚才大家又见到了一个新的单词:DBMS

这是个什么东西呢?

其实他的全名为DataBase Management System数据库管理系统

是用来管理数据库的一种商品化软件。
所有访问数据库的请求都由DBMS来完成的。
DBMS提供了操作数据库的许多命令(语言),即SQL语言。
官方的解释非常复杂,什么应用层,语言翻译处理、数据存取层等等!好吧,我非常讨厌这样子,于是就有我来给大家缩减地来讲解!

通过上面的图大家有看清是咋么回事吗?多么直白!但有人要问了,咋么管理呢?那就是我们的SQL语句了!当然在linux下绝对不会使用非常大的数据库,因而我们只要掌握一些基本语句就可以了!

SQL语句我将在后面的博客进行相应的归纳!

刚才是说到数据库管理了吧?但是我们还要知道数据库有哪些对不对?

Oracle 不用我多说,大家基本都听过这个数据库!特点是:支持多语言,极好的并行处理能力,多用于金融,保险等行业
SQL Server 微软产品,很好的数据库管理系统,最好的应该是现在微软推广云服务,不瞒大家,我在azure上搭建过服务器,用的就是它!集成化极好,虽然我不是很会使用它!
DB2,这个也是我很少接触过的数据库!仅仅知道它的移植性非常好!
ACCESS 不多说了,office就有,图形化界面就是操作很简单
Sqlite3 极小的数据库,等下将是我的主角!
好了,这5个数据库类型已经给大家介绍了!

那么数据库还有一个非常重要的概念:数据模型

其实它就是一个组合:

(1) 数据结构 //类型 数值等

(2) 数据操作 //遍历 删除等

(3) 数据的完整性约束 //一定的关系连接

主要有4大类

层次数据模型
网状数据模型
关系数据模型
面向对象数据库模型
我就讲关系数据,因为这个才是重点,至于其他,你想了解可以百度,面向对象的模型貌似最近才刚刚火起,用的不是很多!

总所周知,进入学校,学校会按什么给你定义呢?学号!对,因而学号和你的名字,成绩及其他各类信息存在了关系,找到学号就是找到了你的所有信息,这就是关系模型!

那么它如何保证数据的独立性的呢?那就要看数据库他是如何构造的!

数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级组成。但是我并不打算说这个,因为本人也对这个抽象的东西感到一些恐惧,其实在做开发过程中,我们压根就不用去了解他,就算我去面试,如果考官问我,我也会直接告诉他,我不知道,尼玛,我又不是来制造数据库的人!大家不用去纠结于它,我提它就是说知道就行!

还有就是数据库中还存在的候选键,主键什么,不要去管它了,这个等到我们在用sql server的时候再用吧!只要记住一点:学号就是你的主键!唯一标识符!

而我为什么又要选择用sqlite3来作为嵌入式使用的数据库呢?

因为它小!体积适合!嵌入式的东西空间是有限的,用它来做数据正好!
可移植性高 ,嵌入式 我不多说,必须要有移植性!
编程接口简单,简单的编程我就可以用它了!不用它用什么?
代码开源,节约成本那是必须的!否则做什么嵌入式啊!
 
具体优势有哪些呢? 百度一下!

SQLite的优势
内存占用量小
事务操作是原子,一致,孤立,并且持久的(ACID),即使在系统崩溃和电源故障之后。
ACID兼容(原子性,一致性,独立性,可持久性),支持视图,子查询,触发器
单个库文件中包含数据库引擎与接口,且其运行不依赖其它库
可以将数据放进单个文件
为C/C++, PHP等应用提供了接口
免费
允许为SQL命令集动态添加自定义函数(简单函数及聚集函数),而无需重编SQLite库
改进的B-树。对于表采用B+树,大大提高查询效率。
好了,今天我写到这了,好饿,我要去吃饭了!回头我来写sqlite3的安装与sql语法!

相关文章

  • SQLite优化方法

    SQLite优化方法

    SQLite的数据库本质上来讲就是一个磁盘上的文件,所以一切的数据库操作其实都会转化为对文件的操作,而频繁的文件操作将会是一个很好时的过程,会极大地影响数据库存取的速度。
    2008-09-09
  • SQLite3的绑定函数族使用与其注意事项详解

    SQLite3的绑定函数族使用与其注意事项详解

    这篇文章主要介绍了SQLite3的绑定函数族使用与其注意事项的相关资料,文中通过示例代码介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • SQLite3 命令行操作指南

    SQLite3 命令行操作指南

    这篇文章主要为大家介绍了SQLite3 命令行操作的一些帮助,需要的朋友可以参考下
    2013-12-12
  • 一些很有用的SQLite命令总结

    一些很有用的SQLite命令总结

    这篇文章主要介绍了一些很有用的SQLite命令总结,本文总结了显示表结构、获取所有表和视图、获取指定表的索引列表、导出数据库到 SQL 文件、从 SQL 文件导入数据库等一些非常有用的操作命令,需要的朋友可以参考下
    2015-07-07
  • SQLite中的WAL机制详细介绍

    SQLite中的WAL机制详细介绍

    这篇文章主要介绍了SQLite中的WAL机制详细介绍,本文讲解了什么是WAL、WAL如何工作、WAL的优点与缺点、WAL引入的兼容性问题、WAL引入的性能问题等内容,需要的朋友可以参考下
    2015-01-01
  • SQLite 错误码整理

    SQLite 错误码整理

    这篇文章主要介绍了SQLite 错误码,方便大家在开发过程中快速解决问题
    2013-12-12
  • SQLite3 API 编程手册

    SQLite3 API 编程手册

    Sqlite3 的确很好用。小巧、速度快。但是因为非微软的产品,帮助文档总觉得不够。这些天再次研究它,又有一些收获,这里把我对 sqlite3 的研究列出来,以备忘记
    2013-12-12
  • SQLite3中自增主键相关知识总结

    SQLite3中自增主键相关知识总结

    这篇文章主要介绍了SQLite3中自增主键相关知识总结,清零的方法、INTEGER PRIMARY KEY AUTOINCREMENT和rowid的使用等,需要的朋友可以参考下
    2014-05-05
  • 初识SQLITE3数据库

    初识SQLITE3数据库

    本文主要讲诉Sqlite数据库的一些基本概念以及SQLite的优势,需要的朋友可以参考下
    2014-08-08
  • sqlite循环批量插入数据采用批处理文件实现

    sqlite循环批量插入数据采用批处理文件实现

    需要在sqlite数据库中插入大量测试数据,需要通过一个批处理文件来循环调用插入sqlite语句,感兴趣的朋友可以参考下哈,希望可以帮助到你
    2013-04-04

最新评论

?


http://www.vxiaotou.com