欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

数据库知识点总结

程序员文章站 2023-01-13 14:19:28
数据库 一、基本概念 1.数据 (1)数据的定义:对客观事物的符号表示,如图形符号、数字、字母等,数据是数据库中存储的基本对象 (2)数据的种类:文字、图形、图像、声音 (3)数据的特点:数据与其语义是不可分的 2.数据库 (1)数据库的定义:数据库(Database简称DB)是按照数据结构来组织、 ......

数据库

一、基本概念

1.数据

(1)数据的定义:对客观事物的符号表示,如图形符号、数字、字母等,数据是数据库中存储的基本对象

(2)数据的种类:文字、图形、图像、声音

(3)数据的特点:数据与其语义是不可分的

2.数据库

(1)数据库的定义:数据库(Database简称DB)是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。

(2)数据库的基本结构:以内模式为框架所组成的数据库叫做物理数据库;以概念模式为框架所组成的数据叫概念数据库;以外模式为框架所组成的数据库叫用户数据库。

  • 物理数据层
           它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。
  •  概念数据库。
          它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。
  • 用户数据库。
           它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。
    数据库不同层次之间的联系是通过映射进行转换的。

3.数据库主要特点

(1)实现数据共享

(2)减少数据的冗余度

(3)数据的独立性:逻辑独立性、物理独立性

(4)数据实现集中控制

(5)数据一致性和可维护性

(6)故障恢复

4.数据库分类

(1)层次式数据库

(2)网络式数据库

(3)关系式数据库

5.数据库系统

      定义:数据库系统(Database System,简称DBS),是由数据库及其管理软件组成的系统。

6.数据库管理系统(比如:MySql)

(1)数据库管理系统(Database Management System 简称DBMS)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库。

(2)关系型数据库管理系统称为RDBMS,R指Relation。

(3)DBMS的作用:它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。

7.数据库管理员

       定义:数据库管理员(Database Administrator,简称DBA),负责全面管理和控制数据库系统。

8.DBA、DBMS、DB和DBS之间的关系

      DBA利用DBMS控制由DB构成的DBS。

9.数据模型

      是用来抽象、表示和处理现实世界中的数据和信息的工具,是对现实世界的模拟,是数据库系统的核心和基础;其组成元素有数据结构、数据操作和完整性约束。

10.概念模型

      也称信息模型,是按用户的观点来对数据和信息建模,主要用于数据库设计。

11.逻辑模型

       是按计算机系统的观点对数据建模,用于DBMS实现。

12.物理模型

       是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的。

13.实体和属性

       客观存在并可相互区别的事物称为实体。实体所具有的某一特性称为属性。

14.E-R图

        即实体-关系图,用于描述现实世界的事物及其相互关系,是数据库概念模型设计的主要工具。

15.关系模式

        从用户观点看,关系模式是由一组关系组成,每个关系的数据结构是一张规范化的二维表。

16.型/值

        型是对某一类数据的结构和属性的说明;值是型的一个具体赋值,是型的实例。

17.数据库的二级映像

         外模式/模式映像、模式/内模式映像。

二、数据库管理系统(DBMS)

1、DBMS的主要功能

(1)数据定义功能:提供数据定义语言(DDL)

          用于定义数据库的所有特性和属性,尤其是行布局、列定义、键列(有时是选键方法)、文件位置和存储策略,包括命令:

  • DROP(删除数据库)

    删除数据库:drop database if exists 数据库名

  • CREATE(创建数据库)

    创建表:create table if not exists 表名(列名 列名约束)

  • ALTER(修改数据库)

    添加列名:alter table 表名 add 列名 约束条件

    修改列名:alter table 表名 change 老列名 新列名 数据类型

    修改列字段数据类型:alter table 表名 modity 列名 数据类型

    删除列名:alter table 表名 drop 列名

    修改表名:alter table 表名 rename 新表名

  • GRANT(赋予权限)

    REVOKE(从当前用户或组中取消权限)、TRUNCATE(只删除表中的所有数据,不删除表的结构)

 其中:truncate table命令将快速删除数据表中的所有记录,但保留数据表结构。

            delete命令删除的数据将存储在系统回滚段中,需要的时候,数据可以回滚恢复,而truncate命令删除的数据是不可恢复的。

(2)数据操纵功能:提供数据操纵语言(DML)

          操纵数据实现对数据库的基本操作:

  • SELECT(查询)

    select from 表名 where 条件(条件1 and 条件2)

  •  INSERT(插入)

    insert into 表名(列1,列2) values(' ',' '),(' ',' '),(' ',' ')

  • DELETE(删除)

    delete from 表名 where 条件

  • UPDATE(修改)

    update 表名 set 列名=' ',列名=' ' where 条件

(3)数据库的运行管理

  • 保证数据的安全性和完整性
  • 多用户对数据的并发使用
  • 发生故障后的系统恢复

(4)数据库的建立和维护功能(实用程序)

  • 数据库数据批量装载
  • 数据库转储
  • 介质故障的修复
  • 数据库的重组织
  • 性能监视

2.DBMS的分类

(1)分类:

  • 大型数据库:Sybase、Oracle、db2
  • 中型数据库:mysql、sql server、infomix
  • 小型数据库:Access、foxbase、sqlite

(2)Mysql、SQL server、Oracle、DB2的特点:

  • Oracle:

    a. 最稳定、功能最强大、性能最好、容量无限、最昂贵、重量级,分布式数据库  系统,适用于大型的项目

    b. "关系----对象"型数据库

  •  MySQL:

    a. 轻量级、易安装、易管理、速度比较快,使用起来方便,适用于中小型企业

    b. 开源、免费、与PHP组成经典的LAMP组合

  • SQL Server:

    a. 针对不同用户群体的五个特殊的版本

    b. 易用性好

  •   DB2:

    a. 应用于大型应用系统,具有较好的可伸缩性

3.B/S和C/S

(1)B/S浏览器服务器Browser Server

         客户不需要安装程序,只需要有浏览器引擎即可:淘宝

(2)C/S客户端服务器Client Server

         客户需要安装程序,比如:QQ