DEMO地點:雲平大樓東棟3樓 高等資料實驗室

Slides:



Advertisements
Similar presentations
第二章 简单的 SQL 语句. 本章要点  创建一个简单的表  SQL 语句介绍  最简单的查询语句 select  带有限制条件的查询  查询结果的排序显示.
Advertisements

作業一 : USING DBMS ( 使用 DB2 及 SQL 基本練習 ) 報告人:學生楊群期 學號: 課程 : 高等資料庫 講師 : 楊維邦教授.
2010 年 6 月课件制作人:王亚楠 1 模块 2 项目开发概论 教学课件 年 6 月课件制作人:王亚楠 2 目录 目标 了解:数据库技术的基本概念与结构 理解:数据模型的分类与结构组成 掌握:关系数据库及 SQL 的基本理论 知识 掌握:数据库设计的方法与步骤 内容 2.1 数据库技术基础.
第 7 章 数据库 1. Overview  数据库概述  数据库管理系统  数据库的体系结构和数据库模型  SQL 语言  数据库技术  构建数据库系统 2.
第6章 数据库管理软件Access 年秋.
第8章 資料設計.
第5章 关系数据库标准语言SQL 主讲:张丽芳.
十一 ASP对数据库的访问.
第2章 SQL语言初步 2.1 SQL的基本概念 2.2 基本表、索引的创建、删除和修改操作 2.3 SQL的查询语句——SELECT
第2讲 Transact-SQL语言.
第5章 索引及视图操作 数据库原理应用与实践 SQL SERver2014(第2版) 主编 贾铁军 科学出版社 编著 陈国秦 万程 邢一鸣
数据库技术 实践.
第2章 数据模型 2.1 实体联系模型 2.2 关系模型 2.3 面向对象的数据模型 习 题 2.
Chap 11 SQL基本查詢指令.
第8章 SELECT敘述的基本查詢 8-1 SELECT查詢指令 8-2 SELECT子句 8-3 FROM子句 8-4 WHERE子句
第4章 关系数据库标准语言SQL 4.1 SQL语言概述 4.2 SQL数据查询功能 4.3 SQL数据操作功能 4.4 SQL数据定义功能.
第3章 SQL的基础知识 数据库管理及应用 3.1 SQL简介 3.2 SQL的数据模型 3.3 标识符 3.4 使用SQL语句管理数据库
数据库概述 简而言之,数据库(DataBase)就是一个存储数据的仓库。为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上。通过数据库管理系统,可以有效的组织和管理存储在数据库中的数据。如今,已经存在了Oracle、SQL Server、MySQL等诸多优秀的数据库。在这一章中将讲解的内容包括。
数据库原理及设计 --作业.
第 八 章 資料庫安全 本投影片(下稱教用資源)僅授權給採用教用資源相關之旗標書籍為教科書之授課老師(下稱老師)專用,老師為教學使用之目的,得摘錄、編輯、重製教用資源(但使用量不得超過各該教用資源內容之80%)以製作為輔助教學之教學投影片,並於授課時搭配旗標書籍公開播放,但不得為網際網路公開傳輸之遠距教學、網路教學等之使用;除此之外,老師不得再授權予任何第三人使用,並不得將依此授權所製作之教學投影片之相關著作物移作他用。
文科计算机小公共课规划教材 Access 程序设计.
資料庫設計 Database Design.
第六章 結構化分析與設計 ─資料塑模.
第三章 管理信息系统的技术基础 主要内容: 数据处理 数据组织 数据库技术 4. 计算机网络.
计算机应用基础 上海大学计算中心.
第3章 数据查询与SQL命令.
Chapter 5 Relational Algebra
第五讲 利用视图进行查询优化.
關聯式資料庫.
9 SELECT敘述的進階查詢 9-1 SQL的多資料表查詢 9-2 合併查詢 9-3 集合運算查詢 9-4 子查詢
資料庫系統 Database Systems
資料庫系統 Database Systems
課程名稱:資料庫系統 授課老師:李春雄 博士
实验二 交互式SQL 邓云.
分布式数据库系统及其应用.
二.資料庫系統建立與管理 Access 資料庫:windows下的單機資料庫 Access 操作 Mysql資料庫介紹.
2、掌握SQL中各种查询方法和数据更新方法 3、掌握SQL中视图的定义方法和用法 4、掌握SQL的授权机制
Chap 10 SQL定義、操作與控制指令.
高等資料庫管理系統 Advanced Database Management System
資料庫安全 (Database Security)
彰化縣政府補助辦理網頁設計資料庫應用班 ASP與資料庫介紹 建國技術學院資管系 饒瑞佶.
Transact-SQL 語言設計教學.
第4章(2) 空间数据库 —关系数据库 北京建筑工程学院 王文宇.
課程名稱:資料庫系統 授課老師:李春雄 博士
課程名稱:資料庫系統 授課老師:李春雄 博士
第4章 關聯式資料庫模型 4-1 關聯式資料庫模型的基礎 4-2 關聯式資料庫模型的資料結構 4-3 關聯式資料庫模型的完整性限制條件
單元3:軟體設計 3-1實體關係圖 Ch 08 System models.
第3章 MySQL教學範本 主從式資料庫系統 - CH3.
SQL SERVER 一些经典语句 1.
MySQL 結構化查詢語言 MySQL.
第十七章 資料庫SQL 17-1 SELECT 17-2 INSERT 17-3 UPDATE 17-4 DELETE.
DBMS’10 Term Project 教師: 李強老師 助教: 林宣佑、袁國斌、劉佩琦
Dept. of Information Management OCIT February, 2002
第6章 資料庫設計與實體關聯模型 6-1 資料庫設計的基礎 6-2 實體關聯模型 6-3 建立實體關聯圖 6-4 實體關聯圖的常見錯誤
第18章 SQL結構化查詢語言 18-1 SQL語言的基礎 18-2 SQL的查詢指令 18-3 SQL子查詢與合併查詢.
資料庫系統 李翊豪 2017/12/21 Reference
CS, ZJU 4/18/2019 Chapter 7 数据库.
3.2 Mysql 命令行 1 查看数据库 SHOW DATABASES; 2 创建一个数据库test1 CREATE DATABASE test1; 3 选择你所创建的数据库 USE test1; (按回车键出现Database changed 时说明操作成功!) 4 查看现在的数据库中存在什么表.
ER Model.
資料庫管理系統 緒 論.
3. SQL语言的应用 3.1 SQL历史和优点 3.2 数据查询 3.3 数据操纵.
查询与视图 蔡海洋.
SQL查询语句 蔡海洋.
第三章 SQL Server数据管理.
資料庫管理 Database Managent Ex.1-2 課本範例練習
8 SELECT敘述的基本查詢 8-1 SELECT查詢指令 8-2 SELECT子句 8-3 FROM子句 8-4 WHERE子句
SQL語法教學 2015/10/15 John.
11 檢視表的建立 11-1 檢視表的基礎 11-2 建立檢視表 11-3 修改與刪除檢視表 11-4 編輯檢視表的內容.
資料庫應用與實作 一到六章重點、習題.
第4章 数据查询.
Presentation transcript:

DEMO地點:雲平大樓東棟3樓 高等資料實驗室 DBMS 2010 Term Project 教師: 李強 助教: 袁國斌、劉佩琦、林宣佑 E-mail: {jordan7652, ayumi416, a6771349} @dblab.csie.ncku.edu.tw DEMO地點:雲平大樓東棟3樓 高等資料實驗室

DBMS Term Project 本期末專案有兩個題目,同學們可以自行選擇其中一個題目來完成。 專案一:使用現成的 DBMS (如 SQL server,MySQL…等)來建立一個系 統資料庫(例如:人事薪資系統,學生學籍系統…等)。 (滿分 20 分) 專案二:自行開發一個 DBMS 。(滿分 30 分) 註:由於專案二較為困難,故完成專案二可以得到較多的分數。 分組需求 一人一組。 應用程式介面 (二擇一) 1.直接以SQL語法查詢 (ex: phpmyadmin) 2. 視窗介面,或是 Web 介面。把SQL語法包裝起來,使用者不需知道SQL語法也可以操作(分數較高) 專案截止日期 2011/01/03 ~ 2011/01/07 為 Demo 日。 上課程網站登記demo時間。 詳細的分組 demo 時間表會在公布於課程網頁上。 注意:拒收遲交的專案。

專案說明 專案一: 用現成的DBMS(如 SQL server,MySQL…等)建立database system,並可以取得使用者要求的查詢結果。 例如:人事薪資系統、學生成績系統、學生學籍系統…等。 專案二: 自行設計一個 Database 以及 管理介面(DBMS) Database需包含基本的資料結構 (如 Database 的資料結構,table 的資料結構,欄位的資料結構…等) 管理介面需可以分析使用者所輸入的 SQL Query , 並將正確結果輸出

需求 底下將說明期末專案的需求。同學們必須滿足這些需求才可以得到分數。 專案的需求分兩類: 基本需求:無論同學們選擇的是哪一個專案,都需要滿足此處的要求。 進階需求:對於不同的專案,我們也提出了不同的要求。

基本需求:兩個專案都需要滿足的要求 建立的資料庫要滿足底下的需求。 Entity type 需求 Relationship 需求 最少 5 個 entities 在這些 entities 中至少有一個 weak entity type Relationship 需求 要有Binary relationship和Ternary relationship 需標示 relationship 間的 cardinality ratio Attribute 需求 每個 table 至少有 2 個 attributes 每個 table 都要有 key attribute 這些 table 中,要能表示下列的2種 attribute Multi-valued attribute, Composite attribute

基本需求:兩個專案都需要滿足的要求 (Cont.) 能下達查詢指令 當使用者下達查詢後,必需將符合要求的結果展示在畫面上。 實作的程式語言不限

專案一:使用現成的 DBMS 來完成一個應用程式 (滿分 20 分) 進階需求

專案一:使用現成的 DBMS 來完成一個應用程式 (滿分 20 分) 用DBMS (如 SQL server,MySQL…等)建立一個database system,並取得使用者要求的查詢結果。 Demo時必需能下達下列的 SQL Query Demo時說明每個SQL語法對應到database system的物理意義 Modify the database (參考投影片 p.15) 需有 CREATE, DROP table 和 INSERT, DELETE, UPDATE tuple 功能 Basic queries in SQL (參考投影片 p.16~19) SELECT-FROM-WHERE Eliminates the duplicate tuples (DISTINCT) Ordering of query results (ORDER BY & DESC/ASC) Set operations (UNION) Complex queries in SQL (參考投影片 p.20~22) Nested queries (IN) Aggregate functions (COUNT, SUM, MAX, MIN, AVG) Grouping (GROUP BY & HAVING)

專案二: 自行開發一個 DBMS (滿分 30 分) 進階需求

專案二:自行開發一個 DBMS (滿分 30 分) 自行設計一個 DBMS,包含資料庫格式、資料型態…等。此 DBMS 可編譯使用者輸入的 SQL 查詢,並可正確的把使用者要求的結果輸出。 實作的程式語言不限 功能要求: Basic queries in SQL (參考投影片 p.16) SELECT-FROM-WHERE Complex queries in SQL (參考投影片 p.20~21) Nested queries (IN) Aggregate functions (COUNT, SUM, MAX, MIN, AVG)

報告內容要求 Demo當天請攜帶以上要求之電子檔。 Program Source Code with Clear Explanations Executable file Document 系統架構與環境 資料庫設計 E-R schema diagram (詳細文字說明每個 table, attribute, relationship 的意義和關係) SQL syntax (create database, create table, primary key, foreign key…等,需加詳細註解) 系統使用說明 Demo當天請攜帶以上要求之電子檔。

Project Demo Project Demo: Demo 前注意事項: 實驗室在雲平大樓東棟3樓 高等資料實驗室 驗收請確定資料庫中有 demo 需要的各種資料 來之前先把要demo的SQL語法準備好,結省大家時間 來demo時繳交 Project Documents 電子檔 每組的驗收時間不超過 15 分鐘

評分標準 Total (100%) = demo(70%) + document(30%) Demo (70%) Query 介面 (10%): look and feel, response time Database requirement (10%): 符合助教的規定 功能 (50%): 專案一:使用現成的 DBMS 來完成一個應用程式 Modify the database (10%) Basic SQL queries (20%) Complex SQL queries (20%) 專案二:自行開發一個 DBMS Complex SQL queries (30%) Document (30%) 報告的架構完整度 (10%) 系統架構與環境 、資料庫設計 (ER schema& SQL syntax )、系統使用說明 內容詳細度 (20%) 註:嚴禁抄襲,抄襲一律零分!

Operation requirements

Modify the database CREATE TABLE DROP TABLE INSERT a tuple DELETE a tuple UPDATE a tuple Example Suppose we want to create a temporary table that has the name, number of employees, and total salaries for each department. CREATE TABLE DEPTS_INFO (DEPT_NAME VARCHAR(10), NO_OF_EMPS INTEGER, TOTAL_SAL INTEGER); INSERT INTO DEPTS_INFO (DEPT_NAME, NO_OF_EMPS, TOTAL_SQL)

Basic queries in SQL SELECT-FROM-WHERE SELECT <attribute list> FROM <table list> WHERE <condition> Number of <attribute list> ranging from 1 to N. Number of <table list> ranging from 1 to N. Number of <condition> ranging from 0 to N. Logical comparison operators are =, <, <=, >, >=, != Example Query 1: Retrieve the name and address of all employees who work for the ‘Research’ department. Q1: SELECT FNAME,LNAME,ADDRESS FROM EMPLOYEE,DEPARTMENT WHERE DNAME =‘Research’ AND DNUMBER = DNO

Basic queries in SQL (Cont.) DISTINCT:Eliminates the duplicate tuples SELECT DISTINCT <attribute list> FROM <table list> WHERE <condition> Example Query 2: Retrieve the all distinct salary values of employees. Q2: SELECT DISTINCT SALARY FROM EMPLOYEE

Basic queries in SQL (Cont.) QRDER BY & DESC/ASC:Ordering of query results SELECT <attribute list> FROM <table list> WHERE <condition> ORDER BY <attribute list> DESC/ASC Example Query3: Retrieve a list of employees and the projects they are working on, ordered by department and, within each department, ordered alphabetically by last name, first name. Q2: SELECT DNAME, LNAME, FNAME, PNAME FROM DEPARTMENT, EMPLOYEE, WORKS_ON, PROJECT WHERE DNUMBER = DNO AND SSN = ESSN AND PNO = PNUMBER ORDER BY DNAME DESC, LANME ASC, FNAME ASC

Basic queries in SQL (Cont.) UNION:Set operations SELECT <attribute list> FROM <table list> WHERE <condition> There is a union operation (UNION) operations Example Query 4:Male a list of all project numbers for projects that involve an employee whose last name is ‘Smith’ as a worker or as a manager of the department that controls the project. Q4: ( SELECT PNAME FROM PROJECT,DEPARTMENT,EMPLOYEE WHERE DNUM = DNUMBER AND MGRSSN = SSN AND LNAME =‘Smith’) UNION FROM PROJECT,WORKS_ON,EMPLOYEE WHERE PNUMBER = PNO AND ESSN = SSN AND LNAME =‘Smith’)

Complex Basic queries in SQL IN:Nested queries SELECT <attribute list> FROM <table list> WHERE <condition> IN ( SELECT <attribute list> WHERE <condition> ) Example Query 5: Retrieve the name and address of all employees who work for the ‘Research’ department. Q5: SELECT FNAME,LNAME,ADDRESS FROM EMPLOYEE WHERE DNO IN ( SELECT DNUMBER FROM DEPARTMENT WHERE DNAME =‘Research’)

Complex Basic queries in SQL (Cont.) Aggregate functions Include COUNT, SUM, MAX, MIN, and AVG Example Query 6a: Find the maximum salary, the minimum salary, and the average salary among employees who work for the ‘Research’ department. Q6a: SELECT MAX(SALARY),MIN(SALARY),AVG(SALARY) FROM EMPLOYEE,DEPARTMENT WHERE DNO=DNUMBER AND DNAME=‘Research’ Queries 6b: Retrieve the total number of employees in the company Q6b: SELECT COUNT(*) FROM EMPLOYEE

Complex Basic queries in SQL (Cont.) GROUP BY & HAVING:Grouping SELECT <attribute list> FROM <table list> WHERE <condition> GROUP BY <grouping attribute(s)> HAVING <group condition> Example Query 7: For each project on which more than two employees work, retrieve the project number, project name, and the number of employees who work on that project. Q7: SELECT PNUMBER,PNAME,COUNT(*) FROM PROJECT,WORKS_ON WHERE PNUMBER=PNO GROUP BY PNUMBER,PNAME HAVING COUNT(*)>2