版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,第二章 数据库创建及其查询,上海财经大学 信息管理与工程学院 计算机应用课程组,2,内容简介,基础篇 数据库概述 表及其相互间的联系 建立ODBC数据源 数据查询 提高篇 数据库建立 复杂查询,3,第一节 数据库概述,信息的保存和管理 人工管理信息:费时费力、容易出错,4,第一节 数据库概述(续),人工管理信息:查找困难 利用文件系统来保存信息 利用数据库系统管理信息 ,5,第一节 数据库概述(续),数据库定义 数据库就是存放在计算机中的、以一种合理的方法组织起来的、与公司或组织的业务活动和组织结构相对应的各种相关数据的集合,该集合中的数据可以为公司的各级经过授权的用户和信息系统所共享。
2、数据库是存在于计算机中的、与公司或组织的业务活动和组织结构相对应的各种相关数据的一个集合。 存放在数据库中的数据是按一定的方式组织起来的 数据库是一个共享的信息资源,可以被企业或组织中的多个经过授权的用户使用,也可以被与企业有关的各种信息系统使用。,6,第一节 数据库概述(续),数据库管理系统(DBMS) DBMS是位于用户与操作系统之间的一层数据管理软件 文字文档 Microsoft Word 幻灯片Microsoft PowerPoint 数据库DBMS DBMS功能: 数据库的建立 数据的插入、查询、删除、修改 数据控制功能 数据安全性控制 数据完整性控制 并发控制 数据库的备份、恢复,
3、7,第一节 数据库概述(续),数据库采用不同的数据模型 数据模型 层次模型 网状模型 关系模型 面向对象模型,8,第一节 数据库概述(续),采用关系模型的数据库称为关系数据库 采用关系模型的数据库管理系统称为关系型数据库管理系统 Oracle DB2 SQL Server Informix Microsoft Access,9,第二节 表及其相互间的联系,关系数据库是由一系列的二维表(Table)组成的 一般情况下,每个表都具有一个主键(Primary Key) 通过这些主键,数据库的表与表之间可以建立各种联系,10,一、表,采用关系模型的数据库由一系列的“二维表”组成 每个表保存着企业业务活
4、动中所涉及的一个特定实体集(或者两个实体集之间的某种联系)的所有实例的各种属性值数据 实体是指客观存在、可相互区分的事物 e.g. 一个产品、一个仓库、一艘船、一个房子、一个学生、一门课程、一次订货、一次购房、一次选课 实体集是指同类实体的集合 某公司的所有产品 某学校的所有学生 某学校的所有课程,11,一、表(续),会员表,属性或字段,记录,实体集中的所有实体都有一组相同的特性,某一特性称为属性,12,一、表(续),商品表,13,二、主键,主键 在关系数据库的某些表中存在着其值能够唯一地确定一个记录的属性或属性组,这样的属性(或属性组)称为表的主键 一个表的主键可以由一个属性组成,也可以由多
5、个属性组成 主键又称为主关键字,14,二、主键(续),商品表,15,订单明细表的主键: (订单号,产品号),二、主键(续),16,三、表与表之间的联系,一对一联系 一对多联系 多对多联系,17,三、表与表之间的联系(续),一对一联系 如果同一数据库中两个表的各个记录之间存在着一种一一对应的关系,即,每个表中的一个记录均(通过主键)与对方表中的一个记录相对应,那么这两个表存在着一对一的联系。,18,三、表与表之间的联系(续),一对一联系,19,三、表与表之间的联系(续),一对多联系 如果数据库的一个表中的一个记录与同一数据库的另一个表中的多个记录(包括0个)相对应,反过来,后一个表中的一个记录只
6、与前一个表中的一个记录相对应,那么这两个表存在着一对多的联系。,20,三、表与表之间的联系(续),一对多联系,21,三、表与表之间的联系(续),多对多联系 在同一数据库的两个表中,如果每个表的一个记录都与对方表中的多个记录(包括0个)相对应,那么这两个表之间就存在着多对多的联系。,22,多对多联系,23,三、表与表之间的联系(续),多对多联系转化成一对多联系,24,四、Northwind示例数据库中表之间的联系,25,四、Northwind示例数据库中表之间的联系(续),客户、雇员、运货商和订单表间的联系,26,四、Northwind示例数据库中表之间的联系(续),订单、订单明细和产品间的联系
7、,27,四、Northwind示例数据库中表之间的联系(续),产品、类别和供应商表间的联系,28,第三节 建立ODBC数据源,一、Microsoft ODBC体系结构,29,一、Microsoft ODBC体系结构,一个ODBC数据源包括下面三方面的内容: 数据源名字 系统将根据该名字建立一个扩展名为.DSN的文件,以存放数据库连接信息。 驱动程序名称 选择一个具体的数据库驱动程序,该驱动程序应与数据源所要引用的数据库的类型相匹配。 引用Access数据库,选择Microsoft Access驱动程序 引用Foxpro数据库,选择Microsoft Visual FoxPro 驱动程序 数据库
8、连接信息 给出所要连接的数据库的文件名或文件夹。,30,二、ODBC数据源的建立,ODBC数据源的建立 利用控制面板定义ODBC数据源 利用Microsoft Query应用程序定义ODBC数据源 【例2-1】利用控制面板中的ODBC数据源管理器定义一个名为“nw”的ODBC数据源,该数据源中引用的是“Northwind”示例数据库,该数据库的文件名为“Northwind.mdb”,该数据库存放在“Program FilesMicrosoft OfficeOfficeSamples”文件夹下。,31,二、ODBC数据源的建立(续),【例2-2】利用控制面板中的ODBC数据源管理器定义一个名为“
9、abcsales”的ODBC数据源,该数据源中引用的是ABC公司销售数据库,假设该数据库中只有一个表,该表存放在“数据库”文件夹的 “ABC公司销售数据.dbf”文件中。,32,二、ODBC数据源的建立(续),【例2-3】利用Microsoft Query定义一个名为“NW”的ODBC数据源,该数据源中引用的是“Northwind” 数据库。 该数据库的文件名为“Northwind.mdb”,存放在“Program FilesMicrosoft OfficeOffice Samples”文件夹下。,33,第四节 数据查询,数据查询就是从数据库所保存的众多数据中挑出符合某种条件的一部分数据,或者
10、将这些数据挑出来之后再对它们进行适当的运算而得到某种汇总信息(统计信息)。 数据查询包括: 单表查询:只涉及一个表的查询。 简单的多表查询:涉及两个或两个以上表的查询。 用Microsoft Query进行数据查询的方法: 利用“查询向导”进行数据查询。 直接进入“查询设计”窗口进行数据查询。,34,一、单表查询,单表查询是指仅涉及一个表的查询操作,这种查询分为如下几种查询: 无条件的查询:从数据库的一个表中查询所有记录中的某几个字段的值。 涉及一个条件的查询:从数据库的一个表中按一个查询条件挑出部分记录,显示这些记录中全部字段或部分字段的值。 涉及多个条件的查询:从数据库的一个表中按多个查询
11、条件挑出部分记录,显示这些记录中全部字段或部分字段的值。,35,一、单表查询(续),【例2-4】“Northwind”示例数据库中存放了其供应商的一些信息,现要求查询其中的供应商ID、公司名称、地区、城市和电话等信息。,36,一、单表查询(续),【例2-5】“Northwind”示例数据库中存放了其供应商的信息,现要求查询其中位于“华东”地区的供应商的ID、公司名称、地区、城市和电话等信息。,37,一、单表查询(续),【例2-6】查询“Northwind”示例数据库中位于 “华东”或“华南”地区的供应商的ID、公司名称、地区、城市和电话等信息。,38,一、单表查询(续),【例2-7】查询“No
12、rthwind”示例数据库中供应商的ID、公司名称、地区、城市和电话等信息。其中的一些供应商位于华东或华南地区,另外一些供应商所在的城市是天津。,39,一、单表查询(续),【例2-8】查询“Northwind”示例数据库中供应商的ID、公司名称、地区、城市和电话等信息。这些供应商所在的地区是华北,联系人职务是销售代表。,40,一、单表查询(续),【例2-9】“Northwind”数据库中存放了三年的订单数据,现有关人员想查询该公司的客户在1996年下半年订购的所有订单的订购日期、订单ID、客户ID和雇员ID等信息。,41,一、单表查询(续),练习:利用Northwind数据库 查询所有的运货商
13、 查询库存量低于20件的商品的产品名称,单价,订购量等信息 已经停止销售的产品的名称,库存数量,单价等信息,42,二、简单的多表查询,对于多表查询须了解两个问题: 查询中使用到的各个字段分别来自于哪些表 分析查询所涉及的表与表之间存在着何种联系,这些联系是通过哪些字段建立起来的 【例2-10】查询Northwind公司所有产品的产品ID、名称、单价和供应商的公司名称等信息,43,第六节 复杂查询,一、多表查询 内连接: 将多个表中符合条件的记录挑选出来组成一个结果集。 查询结果中包含的都是符合连接条件的记录。 外连接:查询时可以将不符合连接条件的记录一并查询出来。,44,一、多表查询(续),内
14、连接 【例2-15】Northwind数据库中有三年的数据,现在需要查询最后一个月中每份订单的的订购日期、订单ID、相应订单的客户公司名称、负责订单的雇员的姓氏和名字等信息。并将查询结果按雇员的“姓氏”和“名字”字段的升序排列,“姓氏”和“名字”值相同的记录按“订单 ID”的降序排列。,45,一、多表查询(续),46,一、多表查询(续),在内连接查询中,正确建立表之间的联系的三种方式: 若查询中涉及的表有公共的字段名,则Microsoft Query应用程序会自动根据两个表之间的公共字段名建立联系。 若查询中涉及的表之间没有直接的联系,则可引入中间表,再由Microsoft Query应用程序
15、自动根据表之间的公共字段名建立联系。 若查询中涉及的表之间有联系但却没有公共的字段名,则可以通过手工方式来添加联系。,47,一、多表查询(续),【例2-16】Northwind数据库中存放了其所有订单的信息,现要求查询其中的“10248”和“10254”号订单的订单ID、运货商的公司名称以及订单上所订购的产品的名称。,48,一、多表查询(续),【例2-17】查询Northwind公司所有雇员的ID、姓氏、名字、职务以及其上级的姓氏、名字和职务。,49,一、多表查询(续),外连接:查询时可以将不符合连接条件的记录一并查询出来。 【例2-18】查询Northwind公司所有雇员的ID、姓氏、名字、
16、职务以及其上级的姓氏、名字和职务。若雇员没有上级的话,也必须将雇员的其他信息显示在查询结果中。,50,二、计算字段,计算字段:由表中某些原有字段进行适当计算后生成的新字段的值,这种新字段称为“计算字段” 。 【例2-19】Northwind数据库中有三年的数据,现在需要查询最后一个月中每份订单的订单ID、订单上所订购的产品的名称及其销售金额。,51,三、汇总,在利用Microsoft Query进行查询时,还可以按照某个或某些字段的值来产生对其他字段(包括计算字段)的汇总值。,52,三、汇总(续),【例2-20】Northwind数据库中有三年的数据,现在需要查询最后一个月中每份订单各自的总销售金额。,53,三、汇总(续),【例2-21】利用例2-2中定义的“abcsales”数据源,在ABC公司销售数据库中,查询1995年不同省份不同类别产品的净销售额总计值。,54,本章小结,基本概念 数据库、数据库管理系统和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高一学生期末评语课件
- 健康宣教日活动策划
- 高效员工职业发展管理
- 机械操作工面试技巧
- 临床急诊采血多功能治疗车优化改造护理创新
- 高一地理中图版(2019)第2周周末小测卷
- 医院医保新增医疗服务项目申报制度
- 2005年1月国开电大行管本科《行政法与行政诉讼法》期末纸质考试试题及答案
- 2026电子厂面试题目及答案
- 2圆锥体的投影
- 加盟美宜佳合同跟协议
- “北京大学医学部2025年医学影像学试题及答案”
- 平安家医介绍课件
- 无人机应用技术专业开设论证报告
- 检测机构数据管理办法
- 山东省德州市2024-2025学年高二年级下册期末考试生物试卷(含答案)
- 2024-2025学年浙江省杭州二中高一(下)期末数学试卷(含解析)
- 鞍山市高校毕业生“三支一扶”计划招募考试试题(含答案)
- 人类辅助生殖管理制度
- 2025年上海市中考语文备考之文学常识汇编
- 锂电行业铜锌镍禁令标准
评论
0/150
提交评论