第12讲数据库 程序 设计课件

上传人:w****i 文档编号:92712864 上传时间:2019-07-12 格式:PPT 页数:89 大小:1.24MB
返回 下载 相关 举报
第12讲数据库 程序 设计课件_第1页
第1页 / 共89页
第12讲数据库 程序 设计课件_第2页
第2页 / 共89页
第12讲数据库 程序 设计课件_第3页
第3页 / 共89页
第12讲数据库 程序 设计课件_第4页
第4页 / 共89页
第12讲数据库 程序 设计课件_第5页
第5页 / 共89页
点击查看更多>>
资源描述

《第12讲数据库 程序 设计课件》由会员分享,可在线阅读,更多相关《第12讲数据库 程序 设计课件(89页珍藏版)》请在金锄头文库上搜索。

1、第12讲 数据库程序设计,目录,12.1 数据库基础知识 12.2 数据库连接技术 12.3 数据库表数据操作,12.1 数据库基础知识,数据管理的两个阶段 文件管理 各种数据都是以文件为单位存储在外存,且由操作系统统一管理 文件相对独立,文件结构不能很好地反映现实世界中事物之间的联系,文件中存在大量的数据冗余 数据库管理 以数据为中心组织数据,减少冗余,并提供更高的数据共享能力,由数据库系统进行管理 程序和数据具有较高的独立性,当数据的逻辑结构改变时,不涉及数据的物理结构,也不影响应用程序,从而降低应用程序研制与维护的费用,12.1.1 数据库技术的特点,数据库技术有如下一些特点 面向企业或

2、部门,以数据为中心组织数据,形成综合性的数据库为各应用共享 采用一定的数据模型。数据模型不仅要描述数据本身的特点,而且要描述数据之间的联系 数据冗余小,易修改、易扩充。不同的应用程序根据处理要求,从数据库中获取需要的数据,这样就减少了数据的重复存贮,也便于维护数据的一致性 程序和数据有较高的独立性。当数据的物理结构和逻辑结构改变时,有可能不影响或较少影响应用程序 具有良好的用户接口,用户可方便地开发和使用数据库 对数据进行统一管理和控制,提供了数据的安全性、完整性、以及并发控制,数据库基础知识,12.1.1 数据库技术的特点(续),应用程序访问数据库的基本模式 DBMS(数据库管理系统)是数据

3、库的核心软件。数据库系统的各种操作,包括创建数据库对象、检索和修改数据库中的数据,都是通过DBMS实现的,数据库基础知识,12.1.2 数据模型,数据模型 数据库的逻辑结构 所有的数据库系统都是基于某种数据模型的 不同种类的数据库可能支持不同的数据模型 关系数据库就是因为支持关系模型而得名,数据库基础知识,关系模型 形象地说就是二维表结构,也称之为关系表 一个关系数据库可以包含多个关系表,关系表是数据库中组织和存储数据的基本单位 每个表都用于存储面向某个主题的信息。例如: 学生表存储学生信息 系表存储各系的信息 课程表存储课程信息等 关系表每一行存储一个记录,每一列表示记录的一个属性。设计一个

4、关系表时需要 为表命名 设计表的列结构,其中包括列名及列的数据类型,12.1.2 数据模型,数据库基础知识,12.1.2 数据模型,学生表 由5列组成,每一列表示学生的一个属性 每个学生都是用学号、姓名、性别、出生年月及所属系的系号等属性来描述,在这些属性上的一组合法取值就对应一个学生记录(表中的一行),数据库基础知识,12.1.3 关系表中的主码与外来码,主码(Primary Key) 为了保证关系表中没有重复的记录,需要为关系表定义一个主码,作用是唯一标识表中的一个记录 可以是表中的一列,也可以由几列组合而成 在建表时如果定义了主码,系统可以对输入该表的数据进行检查,要求主码不能重、也不能

5、空(NULL) 例如在学生表中 学号可以作为主码,因为一个学号可以唯一地确定表中的一个学生记录 由于学生中有重名现象,姓名就不能用来做为主码,数据库基础知识,12.1.3 关系表中的主码与外来码(续),外来码(Foreign Key) 现实世界中事物之间的联系反 映到数据库中就体现为表之间的联系,在关系数据库中,借助“外来码”实现存贮这种联系的信息 如果一个表中的某一列是另外一个表中的主码,那么该列称之为外来码。 例如在学生表中,“系号”就是外来码,因为系号是系表的主码,在学生表中设计了“系号”一列,就是为了存储学生和系之间的联系信息 通过外来码和主码的等值连接将不同表里的相关记录连接在一起,

6、从而实现数据库中相关数据的查找 可以查询每个学生所在系的信息,也可以查询指定系所包含的学生信息,数据库基础知识,12.1.3 关系表中的主码与外来码(续),数据库基础知识,该数据库中建有 员工基本信息表(person) 包括工作证号、姓名、部门编号、职务、工资、学历编号等字段 工作证号(ID)是该表的主码 Department列是一个外来码,匹配部门编码表中的DepID主码 Education列也是一个外来码,匹配学历编码表中的EduID主码 部门编码表(department) 保存了部门编号和部门名称 部门编号(DepID)是主码 学历编码表(education) 保存了学历编号和学历名称

7、学历编号(EduID)是主码,12.1.3关系表中的主码与外来码(续) 员工信息管理系统(PIMS)的例子,数据库基础知识,12.1.3关系表中的主码与外来码(续) 员工信息管理系统(PIMS)的例子,数据库基础知识,12.1.4 建立一个实例数据库,建立数据库需要借助于数据库管理系统,不同的数据库管理系统其具体操作方法是不同的,以Windows平台上的一个简单的关系型数据库Access为例,建立一个数据库,为编写Java的数据库访问程序提供一个实例环境 1启动Office 的Microsoft Access,选择“新建一个Access数据库选项”,在文件名输入栏中输入“PMS.mdb”。该文

8、件代表一个Access数据库,数据库基础知识,12.1.4 建立一个实例数据库,PMS数据库窗口出现在Access主窗口中。在数据库窗口的左侧,列出了常用的7类数据库对象。当选中某对象类后,就可以在右窗口中进行有关该对象的操作,如建立、修改,运行等。7类对象的主要含义分别是: 表 关系表,可以实现表的建立、数据的维护、查询等 查询 可以建立一个查询(视图的概念),运行SQL语句 窗体 数据库应用界面,可进行简单数据库应用开发 报表 报表的制作与打印输出 页 可生成基于web页面的数据库应用界面 宏 可定义完成特定任务的操作或操作集 模块 可定义数据库中使用的公共过程与函数,12.1.4 建立一

9、个实例数据库,2 在对象栏中选择“表”,再选择“使用设计器创建表”方式,单击工具栏中的“设计”按钮,就会出现表设计窗口。在该窗口中可以定义字段的名称、数据类型、字段说明信息等。分别设计Person表、 Department表、Education表,数据库基础知识,12.1.4 建立一个实例数据库,数据库基础知识,12.1.4 建立一个实例数据库,3建立表之间的联系 点击主窗口“工具”菜单中的“关系”选项,打开“关系”视图 用鼠标拖动Education表的EduID属性,拉到Person表的Education属性上,在自动弹出的“编辑关系”对话框中,选择实施参照完整性,点击“创建”按钮 用同样方

10、法建立Department表中DepID列和Person表中Department列,数据库基础知识,12.1.4 建立一个实例数据库,4 为每个表创建数据,数据库基础知识,12.1.5 SQL语言简介,SQL语言 关系数据库的标准语言,从大型数据库(如Oracle)到微机数据库(如Access)都支持 可以实现对数据库的各种操作。例如 表及其他数据库对象的定义 数据的查询与数据维护 对数据库进行控制 是非过程化的语言,只需要告诉数据库做什么,而不需要描述怎么做 语句都是独立执行的,无上下文联系 本身不区分大小写,数据库基础知识,12.1.5 SQL语言简介(续) SQL关键字,数据库基础知识,

11、在SQL语言中,对数据库中数据的操作可分为读写两种 读操作(查询)通过SELECT语句实现,该语句的执行不会改变数据库中的数据 可以返回一行或多行数据 也可能没有返回结果(没有查到满足条件的记录) 涉及到写操作的语句共有3个 INSERT UPDATE DELETE,12.1.5 SQL语言简介(续) SQL语言的读/写操作,数据库基础知识,建表语句 定义表中各列的名称及数据类型 有关列的数据类型可参考具体数据库的语法手册 CREATE TABLE person ( id INTEGER PRIMARY KEY, /定义该列为主码 name VARCHAR(10), /列定义,字符型 depa

12、rtment INTEGER, /列定义,整型 occupation VARCHAR(10), salary NUMBER, education INTEGER);,12.1.5 SQL语言简介(续) 建表语句,数据库基础知识,插入语句 向指定表插入一条记录,插入的值要与表的定义匹配 插入一行数据 INSERT INTO table_name VALUES (value1, value2,) 插入一行数据在指定的字段上 INSERT INTO table_name (column1, column2,.) VALUES (value1, value2,) 例如在person表中插入一行 INS

13、ERT INTO person VALUES (1, 张三, 1, manager, 3500, 5);,12.1.5 SQL语言简介(续) 插入语句,数据库基础知识,修改语句 修改指定记录中某列的值,更新表中原有数据 其格式为 UPDATE table_name SET column_name = new_value WHERE column_name = some_value 例如:将person表中id号为1的人员的工资修改为3700元 UPDATE person SET salary = 3700 /指定对哪列进行修改、如何修改 WHERE id = 1 ; /选择要修改的行,12.1

14、.5 SQL语言简介(续) 修改语句,数据库基础知识,删除语句 删除表中的指定的数据 其格式为 DELETE FROM table_name WHERE column_name = some_value 例如删除部门号为4的员工记录 DELETE FROM person WHERE department = 4 ;,12.1.5 SQL语言简介(续) 删除语句,数据库基础知识,查询语句 从指定表中取出指定的数据 SELECT select_list INTO new_table FROM table_source WHERE search_condition GROUP BY group_by

15、_expression HAVING search_condition ORDER BY order_expression ASC | DESC ,12.1.5 SQL语言简介(续) 查询语句,数据库基础知识,例:查询工资大于2000的员工的姓名及职务 SELECT * / “*”号表示输出全部列的值 FROM person /指定查询的表,本查询只用到person表 WHERE salary2000 ; /查询条件 例:查询员工“张三”的学历,输出学历名 SELECT education.name FROM person , education /该查询用到两个表 WHERE person.

16、name= 张三 AND person.education =education.eduid ;,12.1.5 SQL语言简介(续) 查询语句,数据库基础知识,12.2 Java数据库连接技术JDBC,JDBC(Java Data Base Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一的访问界面。它由一组用Java语言编写的类和接口组成。 它是一个软件层,允许开发者在java中编写客户端/服务器应用程序。它提供的是一个简单的接口,主要用于执行原始SQL语句并检索结果。,JDBC通常完成以下三项工作: 建立Java程序与数据库的连接。 发送SQL语句。 处理得到的结果。,连接数据库的基本过程为: 注册JDBC驱动程序 建立数据库连接 创建语句对象并发送SQL语

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号