数据库—基础知识概述与sqlite3简介

1.  数据库(database,简称DB),是一个有结构的、集成的、可共享统一管理的数据集合,不仅有数据本身,还有相关数据之间的关系,主要的研究方向是如何存储、使用和管理数据;

2.  有结构的:目前常用的数据库均是以关系模型来组织数据的,可以理解为一张二维表;

      集成的:数据库集中放置存放着企业各种各样的数据,没有数据冗余(没有重复);

      共享的:数据库中的数据可以被不同的用户使用;

      统一管理的:统一有DBMS管理,任何数据访问都是通过DBMS来完成的;

3.  数据库管理系统:database management system,简称DBMS,是一种数据库管理的商品软件,提供了操作数据库的命令,即SQL命令;

4.  数据库管理系统的层次结构由高级到低级依次为应用层、语言翻译处理层、数据存取层、数据存储层、操作系统;

5.  常用的关系型数据库管理系统:Oracle(最早的数据库管理系统)、SQL Serevr(支持客户机与服务器结构,完全SQL语言,非专业难度大)、DB2(在金融系统应用最广泛)、MySQL()、Access(提供图形化管理,集成在Access中)、sqlite3;

6.  数据库系统的三级模式结构:数据库的三级模式结构是指数据库系统由外模式、模式、内模式三级组成;

外模式:也称作子模式或用户模式,是数据库用户的数据视图、只显示与其有关的数据,外模式是模式的子集,一个模式可以有多个外模式,一个应用程序也只能使用一个外模式;例如一个机电专业的学生在图书馆管理系统(DBMS)只可以查询到工科相关数据,查询不到艺术类书籍,就是一种外模式;

模式:也称作逻辑模式或概念模式,表示整体数据库全体数据的逻辑结构,是数据项值的框架,通常设置有访问控制、保密定义、完整性检查等内容;例如,整个图书馆的每一层图书都是一样的管理模式,模式只有一种;

内模式:也称作存储模式,就是说以什么样的形式存储数据,每一列数据怎么存储,是char、还是integer,一个数据库只有一个内模式;

7.  两种映射

        (1)外模式与模式之间:外模式更改,模式不必要更改,相互之间具有逻辑独立性;(例如,增加新的数据类型、新的数据项、新的关系等),由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变,从而应用程序不必修改,保证了数据的逻辑独立性;例如系统给机电专业的学生增加可以查询艺术类书籍的权限(改变映射),外模式改变,但是模式不变(因为模式有艺术类的书籍),但是机电专业的学生要求增加农学类的书籍,那么因为模式里面没有,则模式也要改变;

      (2)模式与内模式之间:双方之间都只有一种,保持了数据的屋里独立性;

8.  数据库系统结构

       (1)单用户数据库系统:安装在一台计算机上,由一个用户独占;

       (2)主从式结构:一个主机带多个终端的多用户结构;

       (3)分布式结构:数据在逻辑上是一个整体,但是物理地分布在不同的结点上,多个数据库服务器通过网络连接起来;

       (4)客户、服务器结构:客户端的用户请求被传送到服务器,服务器进行处理后,只将结果返回给用户(而不是整个数据),从而显著减少了网络上的数据传输量;

9.  关系型数据库的关系术语和定义

       (1)关系(relation):一个关系就是一张二维表;

       (2)元组:表中的行,一行就是一个元组,也称作一个记录;

       (3)属性:一列的列名,也称作一个字段;一个表可以有多行,也就是有多列;

       (4)域(domain):每一列的数据取值范围,与列的数据类型强相关;

10.  关系的候选键、主键、外键

       (1)可有/可不设置,即选出正在使用的候选键,就是主键,一般体现在创建表中在列的字段名和数据类型后加一个“primary key”;一个表只能有一个主键;例如学生表中的学号(不重复);

       (2)候选键:可以唯一标识一行,即此列无重复项,候选键可以是一列,或者也可以是某几列的组合;

       (3)R1表中一列或列组合是R2表中的主键,则R1是R2的外键,通过外键可以建立联系,可以帮查错;

11.  嵌入式存储需求:便捷信息存储和查询功能;

       (1)高性能嵌入式系统:高可靠性通常通过备份、冗余等手段;实时性较高;多平台适应性;——航空航天、电信和网络设备、工业自动化控制;

       (2)中等嵌入式系统:广泛的平台适应性;——车载电子、机器人、GPS

       (3)微嵌入式环境:多样的存储设备,对查询相应的时间要求不高,满足人机交互即可;

         (4)微微嵌入环境:对资源的占用达到最小限度;——智能卡;

12.  sqlite3简介

       (1)sqlite是一个开源的嵌入式关系型数据库,特点有①可移植性好,很容易使用;②体量小,高效可靠;③可以嵌入到使用它的应用程序中,共同使用相同的进程空间;和程序一起编译好了;多个应用程序可以同时操作同一个数据库;

       (2)sqlite基本组成:①接口(interface),所有程序均是通过接口与sqlite交互;②编译器(由分词器、分析器、代码生成器、分析器生成器等组成);③虚拟机(主要是进行数据库语言操作);④后端(由B-tree、页缓冲、操作系统接口组成);

13.  sqlite3 优势

       (1)内存占用量小;

       (2)支持视图操作,有可视化工具;

       (3)不依赖其他库;

       (4)可以将数据放到单个文件;

       (5)为c/c++提供了接口;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值