第4章(1) 空间数据库 —数据库理论基础 北京建筑工程学院 王文宇.

Slides:



Advertisements
Similar presentations
作業一 : USING DBMS ( 使用 DB2 及 SQL 基本練習 ) 報告人:學生楊群期 學號: 課程 : 高等資料庫 講師 : 楊維邦教授.
Advertisements

第十章 Java 数据库编程. 内容提要 数据库有关概念; 介绍 JDBC 的结构; 重点介绍 JDBC 访问几种数据库的基本过程;
2010 年 6 月课件制作人:王亚楠 1 模块 2 项目开发概论 教学课件 年 6 月课件制作人:王亚楠 2 目录 目标 了解:数据库技术的基本概念与结构 理解:数据模型的分类与结构组成 掌握:关系数据库及 SQL 的基本理论 知识 掌握:数据库设计的方法与步骤 内容 2.1 数据库技术基础.
Java 技术与应用 数据库应用 ( 第 14 章 ) 西安交大 卫颜俊 2008 年 12 月 电子信箱: QQ: 网站 : /java.
第 7 章 数据库 1. Overview  数据库概述  数据库管理系统  数据库的体系结构和数据库模型  SQL 语言  数据库技术  构建数据库系统 2.
補救教學理念與實施分享 新豐國中姜瑞玉. Why ─ 為何要實施補救教學 各國老年人口變化圖 國中在學階段 2 大重點 1. 國中教學正常化及 學力品質確保 2. 國中適性輔導 適時進行校、班本位 診斷性測驗及 補救教學.
新闻写作基础知识 一. 新闻导语 二.新闻主体 三.新闻结构 四.角度选择.
教学网站: 数据库及应用 授课教师:岳静 Tel: 教学网站:
数据库原理及应用(ORACLE)实用教程
An Introduction to Database Systems
第6章 数据库管理软件Access 年秋.
系統分析與設計 第九章 資料設計.
数据库系统原理及应用 Database Theory and Application
第2章 資料庫系統 2-1 資料庫環境的四大組成元件 2-2 ANSI/SPARC的三層資料庫系統架構
加油添醋話擴寫 日新國小 鄒彩完.
十一 ASP对数据库的访问.
数据库概述 简而言之,数据库(DataBase)就是一个存储数据的仓库。为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上。通过数据库管理系统,可以有效的组织和管理存储在数据库中的数据。如今,已经存在了Oracle、SQL Server、MySQL等诸多优秀的数据库。在这一章中将讲解的内容包括。
文科计算机小公共课规划教材 Access 程序设计.
数据库原理及应用 第10章 事务与锁 10.1 事务 10.2 锁.
第6章 資料庫管理系統 6-1 關聯式資料庫管理系統 6-2 SQL Server資料庫管理系統
資料庫設計 Database Design.
第五章 信息系统开发能力培养.
第七章 数据库管理系统.
数据库原理与应用.
数据库原理与应用     制作人:王春玲         黄金燕         张惠萍         陈志泊 人民邮电出版社.
An Introduction to Database System
离职流程精细化标准推进材料 人事行政处.
How can we be a member of the Society? You should finish the following tasks if you want to be a member of the Birdwatching Society.
Introduction to database
新聞報導 一、什麼是新聞? 1、狗咬人不是新聞,人咬狗才是新聞 2、大眾關切的事 3、讀者有興趣知道的事 4、接近性.
關聯式資料庫.
第十五章 常見的資料庫管理系統 目的 Oracle 微軟SQL Server 微軟Access MySQL Oracle 應用伺服器
第六章 學習SQL語言.
課程名稱:資料庫系統 授課老師:李春雄 博士
解振宇 客户技术经理 客户售前技术部 微软中国有限公司广州办事处
二.資料庫系統建立與管理 Access 資料庫:windows下的單機資料庫 Access 操作 Mysql資料庫介紹.
Chap 10 SQL定義、操作與控制指令.
辦公室自動化軟體: 資料庫管理Access 1 授課老師:林彣珊
Chap 3 資料庫模型與處理架構.
彰化縣政府補助辦理網頁設計資料庫應用班 資料庫簡介 建國技術學院資管系 饒瑞佶.
Flash数据管理 Zhou da
課務組 Curriculum Section
第4章(2) 空间数据库 —关系数据库 北京建筑工程学院 王文宇.
計算機概論 第十章 檔案與資料庫管理系統 陳維魁/陳邦治 旗標出版社.
5 数据库管理与保护 数据库运行的最小逻辑工作单位是事务,所有对数据库的操作,都以事务作为一个整体来执行或撤销。
加油添醋話擴寫 鄒彩完.
資料庫系統導論.
刘红岩 清华大学 管理科学与工程系 第17章 事务管理 刘红岩 清华大学 管理科学与工程系
SAP R/3架構及前端軟體安裝 Logical View of the R/3 System SAP Frontend 6.2安裝
資料庫 靜宜大學資管系 楊子青.
認識資料庫 MySQL 資料庫新增 MySQL 資料表新增 認識欄位資料表 資料新增、刪除、修改、瀏灠 資料表清空與刪除
認識資料庫 MySQL 資料庫新增 MySQL 資料表新增 認識欄位資料表 資料新增、刪除、修改、瀏灠 資料表清空與刪除
第一章 数 据 库 概 述 第一节 引言 第二节 数据库基本概念 第三节 数据库系统结构 第四节 数据模型 第五节 数据库管理系统
第11章 事务与锁 11.1 事务Transact 11.2 数据并发的问题 11.3 锁Lock 11.4 事务隔离级别.
CS, ZJU 4/18/2019 Chapter 7 数据库.
计算机文化 第7讲:数据库技术 王哲 河南中医药大学信息技术学院.
資料庫管理系統 緒 論.
17 交易處理與鎖定 17-1 交易的基礎 17-2 交易處理 17-3 並行控制 17-4 資料鎖定 17-5 死結問題.
第三章 SQL Server数据管理.
第六類 資料庫備份與回復.
第4章(1) 空间数据库 —数据库理论基础 北京建筑工程学院 王文宇.
第十八章 資料庫與Access 課前指引 在日常生活中,無論各位到銀行開戶、醫院掛號或是到學校註冊,一定都會填寫所謂的個人資料,裡面通常包括姓名、性別、生日、電話、住址等項目,所以人們建立了各種不同的列表來儲存及組織這些資料。 人們當初試圖建造電腦的主要原因之一就是可用來儲存及管理一些數位化資料清單與資料,這也是資料庫觀念的由來。尤其在資訊科技發達的今日,日常的生活已經和資料庫產生密切的結合。例如目前最熱門的網路拍賣,如何讓千萬筆交易順利完成,或者透過手機記錄著他人電話號碼,並能分類與查詢電話。
计算机问题求解 – 论题1-5 - 数据与数据结构 2018年10月16日.
M; Well, let me check again with Jane
TinyDB資料庫 靜宜大學資管系 楊子青.
2017学考复习 信息管理(导引P37).
Operating System Software School of SCU
欢迎参加新晋员工职业化训练教程 GEC Program.
活動主題:能「合」才能「作」 指導教授:張景媛教授 設 計 者:協和國小團隊 李張鑫 × 陳志豪.
資料庫應用與實作 一到六章重點、習題.
Presentation transcript:

第4章(1) 空间数据库 —数据库理论基础 北京建筑工程学院 王文宇

第一节 概述 数据库技术简介 数据库管理系统 数据模型 ER模型设计 http://wwww-db.stanford.edu 第一节 概述 数据库技术简介 数据库管理系统 数据模型 ER模型设计 http://wwww-db.stanford.edu 你怎样搜集、管理和使用信息,将决定你在竞争中的输赢。 中国不缺软件人才,缺少的只是群体作业和协同发展的全球战略眼光以及市场运作的能力。 —比尔.盖茨

一 数据库技术的地位 数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支 数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透 数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志

数据管理技术的发展过程 什么是数据管理 数据管理技术的发展过程 对数据进行分类、组织、编码、存储、检索和维护,是数据处理的中心问题 人工管理阶段(40年代中--50年代中) 文件系统阶段(50年代末--60年代中) 数据库系统阶段(60年代末--现在) 人工管理:时期40年代中--50年代中 产生的背景 应用需求 科学计算 硬件水平 无直接存取存储设备 软件水平 没有操作系统 处理方式 批处理

Example of a Traditional Database Application Suppose we are building a system to store the information about: students courses professors who takes what, who teaches what

Can we do it without a DBMS ? Sure we can! Start by storing the data in files: students.txt courses.txt professors.txt Now write C or Java programs to implement specific tasks

Doing it without a DBMS... Enroll “Mary Johnson” in “CSE444”: Write a C/Java program to do the following: Read ‘students.txt’ Read ‘courses.txt’ Find&update the record “Mary Johnson” Find&update the record “CSE444” Write “students.txt” Write “courses.txt”

Problems without an DBMS... Read ‘students.txt’ Read ‘courses.txt’ Find&update the record “Mary Johnson” Find&update the record “CSE444” Write “students.txt” Write “courses.txt” System crashes: What is the problem ? Large data sets (say 50GB) Why is this a problem ? Simultaneous access by many users Lock students.txt – what is the problem ? CRASH !

Database server (someone else’s C program) Enters a DBMS “Two tier system” or “client-server” connection (ODBC, JDBC) Database server (someone else’s C program) Applications Data files

三 数据库管理系统 什么是数据库管理系统 数据库管理系统是位于用户与操作系统之间的一层数据管理软件。 DBMS的用途 科学地组织和存储数据、高效地获取和维护数据

DBMS的主要功能 The programmer sees SQL, which has two components: Data Definition Language - DDL Data Manipulation Language - DML query language Behind the scenes the DBMS has: Query engine Query optimizer Storage management Transaction Management (concurrency, recovery)

How the Programmer Sees the DBMS Tables: Still implemented as files, but behind the scenes can be quite complex Students: Takes: Courses: “data independence” = separate logical view from physical implementation

Transactions Enroll “Mary Johnson” in “CSE444”: BEGIN TRANSACTION; INSERT INTO Takes SELECT Students.SSN, Courses.CID FROM Students, Courses WHERE Students.name = ‘Mary Johnson’ and Courses.name = ‘CSE444’ -- More updates here.... IF everything-went-OK THEN COMMIT; ELSE ROLLBACK If system crashes, the transaction is still either committed or aborted

Queries Find all courses that “Mary” takes What happens behind the scene ? Query processor figures out how to answer the query efficiently. SELECT C.name FROM Students S, Takes T, Courses C WHERE S.name=“Mary” and S.ssn = T.ssn and T.cid = C.cid

Queries, behind the scene Declarative SQL query Imperative query execution plan: Students Takes sid=sid sname name=“Mary” cid=cid Courses SELECT C.name FROM Students S, Takes T, Courses C WHERE S.name=“Mary” and S.ssn = T.ssn and T.cid = C.cid The optimizer chooses the best execution plan for a query

Database Systems The big commercial database vendors: Oracle IBM (with DB2) Microsoft (SQL Server) Sybase Some free database systems (Unix) : Postgres MySQL Predator

三 数据模型 在数据库中用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通俗地讲数据模型就是现实世界的模拟 数据模型应满足三方面要求 能比较真实地模拟现实世界 容易为人所理解 便于在计算机上实现

数据模型(续) 客观对象的抽象过程---两步抽象 现实世界中的客观对象抽象为概念模型; 概念模型 也称信息模型,它是按用户的观点来对数据和信息建模。 概念模型是现实世界到机器世界的一个中间层次。 把概念模型转换为某一DBMS支持的数据模型。 数据模型 主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模。 数据模型分成两个不同的层次 (1) 概念模型 也称信息模型,它是按用户的观点来对数据和信息建模。 (2) 数据模型 主要包括网状模型、层次模型、关系模型等,它是按计算机系统的观点对数据建模。

Levels of Abstraction Physical level describes how a record (e.g., customer) is stored. Logical level: describes data stored in database, and the relationships among the data. type customer = record name : string; street : string; city : integer; end; View level: application programs hide details of data types. Views can also hide information (e.g., salary) for security purposes.

An architecture for a database system View of Data An architecture for a database system

数据模型的组成要素 数据结构 数据结构是对系统静态特性的描述 数据操作 数据的约束条件

四 ER模型设计 概念模型的表示方法很多 基于E-R模型的数据库设计方法 基于3NF的数据库设计方法 实体-联系方法(E-R方法) 基于E-R模型的数据库设计方法是由P.P.S.chen于1976年提出的数据库设计方法,其基本思想是在需求分析的基础上,用E-R(实体—联系)图构造一个反映现实世界实体之间联系的企业模式,然后再将此企业模式转换成基于某一特定的DBMS的概念模式。

ER模型 ER模型的基本元素 实体 联系 属性 ER模型图例 例子 实体 联系 m n 属性 老 师 学 生 教 学号 姓名 专业 班级 职称 性别 职号 属性

例1:学校管理信息系统ER图 社会关系 系 项目 院长 学院 教师 职称 工作量 档案材料 学会 宿舍 教科书 课程 教室 班级 学生 具有 N P M 社会关系 具有 系 聘用 承接 项目 参加 设置 院长 学院 主管 教师 评定 职称 分配 工作量 档案材料 归档 学会 宿舍 住宿 教科书 担任 指导 课程 选修 教室 上课 有 班级 学生 组成 开设 管理

出库(出库单号,出库量,出库日期,经手人, 订单(订单号,数量,折扣,总价,订单日期, 存储(仓位号,产品号,核对日期,核对员,存储量) 例2 库存销售信息管理系统的 ER模型及转换 车间(车间号,车间名,主任名) 产品(产品号,产品名,单价) 仓位(仓位号,地址,主任名) 客户(客户号,客户名,联系人,电话, 地址,税号,账号) 销售员(销售员号,姓名,性别,学历,业绩) P 车间 仓位 产品 客户 销售员 存储 出库 订单 入库 M N 实体 入库(入库单号,入库量,入库日期,经手人, 车间号,仓位号,产品名) 出库(出库单号,出库量,出库日期,经手人, 客户号,产品名,仓位号) 订单(订单号,数量,折扣,总价,订单日期, 产品号,客户号,销售员号) 存储(仓位号,产品号,核对日期,核对员,存储量) 联系 库存系统ER图

总结 数据库是GIS的后台 数据库技术是GIS的重要技术