认识数据库

1、认识数据库

   1)数据库概念

      * 通俗:存放数据的仓库

      * 定义:数据库(DataBase 简称:DB),是一件软件产品,数据库是用于存放数据、管理数据的存储仓库,有效组织在一起的数据集合。

    2)数据库产品

      * 大型数据库

        a. Oracle:著名的甲骨文公司产品,它是世界上第一个商品化的关系型数据库管理系统。目前最新的版本是oracle 12c,Oracle公司软件产品丰富,有Oracle服务器、开发工具、应用软件等。

        b. IBM公司的关系型数据库管理系统,DB2有很多版本,可以运行在掌上产品到大型机的终端机器上。

        c. Sybase:没过Sybase公司关系型数据库管理系统,较早采用c/s技术的数据库厂商,是一种典型的unix或windows NT平台上的客户机/服务器环境下的大型数据库管理系统。

      * 中小型数据库

        a. Sql Server:微软公司的产品,运行在windows NT服务器上支持c/s结构数据库管理系统,采用标准的SQL语言。

        b. Mysql:一个小型的关系型数据库管理系统,开发者为瑞典的Mysql AB公司。2008年sun公司收购,2009年sun被oracle收购(特点:体积小、速度快、总体拥有成本比较低、开放源码。)许多中小型网站为了降低总体拥有的成本,而选择mysql数据库作为网站开发的首选数据库。

      * 小型数据库

        access:微软发布的关系型数据库管理系统,把数据库引擎的图形用户界面和软件开发工具结合在一起的数据库管理系统,它是微软office成员之一。

    3)学习数据库意义

      -1、从存储角度

        . 文件管理的弊端

          * 缺乏对数据的整体管理,数据不便于修改

          * 不利于数据的分析和共享

          * 大量数据不可能长期保存在文件中

------------------------------------------------------------------------------------------------------------------------------------

2、关系型数据库

         不同的数据库是按不同的数据结构来组织的

         概念:关系型数据库模型是把复杂的数据结构归结为简单的二元关系(即二维表格形式)。在关系型数据库中,对数据的操作几乎建立在一个或多个表格上,通过对这些关联的表格分类、合并、连接和选取等操作来实现数据库的管理。

         关系型数据库是描述两个元素间关联或对应关系,使用关系模型把数据组织到二维表中。

          eg:学生管理系统

             学生表(学生学号、姓名、性别)

             课程表(课程号、课程姓名)

             选课表(学生学号、课程号、成绩)

3、数据表(table)

    1)表:一个关系型数据库是由多个数据表组成,数据表是关系型数据库的基本存储结构

    2)表是数据库存储的基本单元,表对应于现实世界的实体对象(eg:员工表、部门表)

    3)表是一个二维结构,由行和列组成

       * 横向叫行(row也叫记录)表示实体数据,比如一个员工的相关信息

       * 纵向叫列(column也叫字段),用来表示实体属性,比如员工的薪水

    4)java中实体使用对象来描述的,数据表和对象之间存在一种对应的关系,数据表相当于类(class),数据表的行是某个对象的实例。其中每个列都是对象实例的属性。

 4、SQL语言(重点)

    1)定义

        全称为结构化查询语言(structured Query Language);在关系型数据库上执行数据操作、检索及维护所使用的语言。可以用来操作数据、查询数据、控制数据。(所有数据库都是使用相同或相似的SQL语言)

    2)分类

        * 数据定义语言----DDL(Data Definition Language)

          负责数据结构的定义与数据库对象(table、view)d定义的语言,主要包含语句(create/alter/drop/truncate)【针对表结构而言】

          create:创建数据库对象(表、视图)

          alter:修改数据库对象

          drop:删除数据库对象(表结构、数据都删除掉,不复存在)

          truncate:清空表数据,保留表结构(清空所有表中的数据)

        * 数据操纵语言-----DML(Data Manipulation Language)

          实现数据表的基本操作,即表中数据的增加、更新、删除(针对表数据(内容)而言)

          insert:插入(增加)操作

          update:更新操作(改)

          delete:删除操作(根据条件删除)

        * 数据查询语言(重点)-----DQL(Data Query Language)

          实现对数据的查询操作

          select:查询操作

        * 数据控制语言-----DCL(Data Control Language)

          实现权限的授予和回收操作

          grant:授予权限

          revoke:回收权限

          create user:创建用户或角色

        * 事务控制语言-----TCL(Transaction Control Language)与DML结合一起使用

          是用来对DML操作进行确认,对其他的语言行不通

          commit:表示确认,提交数据

          rollback:标书撤销,回滚数据

          savepoint:保存点,用来回滚到指定保存点

猜你喜欢

转载自www.cnblogs.com/xslzwm/p/9582355.html