資料庫管理 Database Management 建立銀行資料庫及查詢範例

Slides:



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

作業一 : USING DBMS ( 使用 DB2 及 SQL 基本練習 ) 報告人:學生楊群期 學號: 課程 : 高等資料庫 講師 : 楊維邦教授.
2010 年 6 月课件制作人:王亚楠 1 模块 2 项目开发概论 教学课件 年 6 月课件制作人:王亚楠 2 目录 目标 了解:数据库技术的基本概念与结构 理解:数据模型的分类与结构组成 掌握:关系数据库及 SQL 的基本理论 知识 掌握:数据库设计的方法与步骤 内容 2.1 数据库技术基础.
第6章: 完整性与安全性 域约束 参照完整性 断言 触发器 安全性 授权 SQL中的授权.
日月光·伯爵居项目介绍.
香港故事之 三年零八個月的艱苦歲月 組員: 梁珮瑩 吳遠莉 李琪 李青儀 方松皓.
十一 ASP对数据库的访问.
何谓学龄期 学龄期是指6~7岁入小学起至12~14岁进入青春期为止的一个年龄段。期小儿体格生长仍稳步增长,除生殖系统外其他器官的发育到本期末已接近成人水平。 这个时期发病率较前为低,但要注意预防近视眼和龋齿,矫治慢性病灶,端正坐、立、行姿势,安排有规律的生活、学习和锻炼,保证充足的营养和休息,注意情绪和行为变化,避免思想过度紧张。
我的故事 ————往事回首.
女生成功靠什么? 09英本四班 傅柏双.
国际投资环境罗氏评级法 美国.
社会保障学 第5章 失业保险.
第七章:数据库设计理论基础.
第14章 預存程序 14-1 預存程序的基礎 14-2 建立與執行預存程序 14-3 預存程序的參數傳遞 14-4 預存程序的傳回值
第4章 关系数据库标准语言SQL 4.1 SQL语言概述 4.2 SQL数据查询功能 4.3 SQL数据操作功能 4.4 SQL数据定义功能.
主 题 班 会 团 结   协 作    力 量.
理想.
数据库概述 简而言之,数据库(DataBase)就是一个存储数据的仓库。为了方便数据的存储和管理,它将数据按照特定的规律存储在磁盘上。通过数据库管理系统,可以有效的组织和管理存储在数据库中的数据。如今,已经存在了Oracle、SQL Server、MySQL等诸多优秀的数据库。在这一章中将讲解的内容包括。
第 八 章 資料庫安全 本投影片(下稱教用資源)僅授權給採用教用資源相關之旗標書籍為教科書之授課老師(下稱老師)專用,老師為教學使用之目的,得摘錄、編輯、重製教用資源(但使用量不得超過各該教用資源內容之80%)以製作為輔助教學之教學投影片,並於授課時搭配旗標書籍公開播放,但不得為網際網路公開傳輸之遠距教學、網路教學等之使用;除此之外,老師不得再授權予任何第三人使用,並不得將依此授權所製作之教學投影片之相關著作物移作他用。
固定与搬运技术 义乌市中心医院 陈红卫.
创建数据库 MySql创建数据库的语法: CREATE DATABASE 数据库名; 例: CREATE DATABASE mydb;
携手物流协会 共创物流金融 招商银行重庆分行 2012年5月.
计算机应用基础 上海大学计算中心.
案例分析 胎记美容记 第6小组
資料庫管理 資管二 賴柏融.
数据库原理 Database Principles 第五章 数据库完整性 Database Principles.
PL/SQL程序设计 过程, 函数 Trigger 对象关系数据库技术.
人生五色臉 年輕十歲必學的小動作,九個保持身體健康的的小訣竅 人們常在不經意間做些小動作,並認為這是身體的本能反應,
第7章 建立資料表與完整性限制條件 7-1 資料型別 7-2 資料表的建立 7-3 建立完整性限制條件 7-4 修改與刪除資料表
Introduction to database
關聯式資料庫.
数据库技术 第十章 数据库完整性 中国科学技术大学网络学院 阚卫华.
第六章 學習SQL語言.
資料庫管理 Database Managent Ex.1-3 SQL指令練習
資料庫系統 Database Systems
資料庫系統 Database Systems
SQL結構化查詢語言 SQL是 Structured Query Language 的縮寫,簡單的說,SQL是一種與資料庫溝通的共通語言,它是當時在 IBM 工作的 E.F. Codd於1970 年針對關聯式模型 ( relational model ),所建構出來的資料庫理論,也因此有了所謂關聯式資料庫的系統,但在發展的初期,由於各種關聯式資料庫系統廠商的.
PHP與MySQL 入門學習指南 凱文瑞克 著 第 23 章 資料型別.
二.資料庫系統建立與管理 Access 資料庫:windows下的單機資料庫 Access 操作 Mysql資料庫介紹.
Chap 10 SQL定義、操作與控制指令.
高等資料庫管理系統 Advanced Database Management System
第 7 章 建立資料表與 資料庫圖表.
資料庫管理 操作DBMS 指導教授:楊維邦  助教:廖皓翔.
資料庫安全 (Database Security)
SQL語法 定義與操作指令.
《第二組》 組長/謝佳馨 組員/陳大為、葉容政、張智陪
課程名稱:資料庫系統 授課老師:李春雄 博士
課程名稱:資料庫系統 授課老師:李春雄 博士
建立/修改/刪除資料表 建立資料表 使用Enterprise Manager工具
第三章作业讲评 文洁 2012/4/10.
SQL SERVER 一些经典语句 1.
SQL結構化查詢語言 SQL是 Structured Query Language 的縮寫,簡單的說,SQL是一種與資料庫溝通的共通語言,它是當時在 IBM 工作的 E.F. Codd於1970 年針對關聯式模型 ( relational model ),所建構出來的資料庫理論,也因此有了所謂關聯式資料庫的系統,但在發展的初期,由於各種關聯式資料庫系統廠商的.
第二章 規劃關連式資料庫.
Ch4.SQL Server 2005資料庫組成員元件介紹
实验二讲评 … 张榆….
第 10 章 数据库编程.
数据库技术与应用.
國立東華大學試題 系所:資訊管理學系 科目:資料庫管理 第1頁/共4頁
認識資料庫 MySQL 資料庫新增 MySQL 資料表新增 認識欄位資料表 資料新增、刪除、修改、瀏灠 資料表清空與刪除
認識資料庫 MySQL 資料庫新增 MySQL 資料表新增 認識欄位資料表 資料新增、刪除、修改、瀏灠 資料表清空與刪除
Example: Banking Database
3.2 Mysql 命令行 1 查看数据库 SHOW DATABASES; 2 创建一个数据库test1 CREATE DATABASE test1; 3 选择你所创建的数据库 USE test1; (按回车键出现Database changed 时说明操作成功!) 4 查看现在的数据库中存在什么表.
資料庫管理 Database Managent Ex.1-4 SQL指令練習
通讯录管理系统设计 常州工程职业技术学院 计算机技术系.
交際障礙分組系統 交際障礙分組系統 班級:2439 組員: 組別:A01 林子婷 資訊三丁 D
第 7 章 建立資料表與資料庫圖表.
資料庫管理 Database Managent Ex.1-2 課本範例練習
Database Management Exercise 1
資料庫管理 HOMEWORK #2 楊立偉教授 台灣大學工管系 2013 Fall.
第4章 数据查询.
Presentation transcript:

資料庫管理 Database Management 建立銀行資料庫及查詢範例 系級:物理四 學號:49814201 姓名:吳嘉峰 授課老師:楊維邦 教授

主題說明 利用phpMyAdmin在MySQL中建 立簡單的銀行資料庫。 依照範例情境,練習對銀行資料庫 作查詢。

目錄 檢視銀行資料庫 建立銀行資料庫 查詢範例練習 手動解題 SQL操作演列 心得感想 實做練習心得 Primary Key Foreign Key Schema Diagram 建立銀行資料庫 建立Banking Database 建立Table 輸入資料 查詢範例練習 手動解題 SQL操作演列 心得感想 實做練習心得

檢視銀行資料庫 Banking Database

Example: Banking Database 1. branch 2. customer 客戶(存款戶, 貸款戶) 5. account 存款帳 3. depositor 存款戶 6. loan 貸款帳 4. borrower 貸款戶 分公司 ※資料來源:Database System Concepts, Silberschatz etc. 2006 (Fifth Ed.)

Primary Key & Foregin Key Foregin Key:該欄位的值需參考 其他表格中的欄位,當被參考表 格中不存在該值時便不可輸入該 筆資料,被參考的資料也不可任 意的更新(UPDATE)或刪除 (DELETE)。

Schema Diagram for the Banking Enterprise Primary Key and foreign key can be depicted by schema diagram Schema Diagram for the Banking Enterprise 箭號方向:Primary Key Foreign Key ※資料來源:Database System Concepts, Silberschatz etc. 2006 (Fifth Ed.)

建立Database及Table並輸入資料 建立銀行資料庫 建立Database及Table並輸入資料

建立Banking Database 資料庫 CREATE DATABASE Banking_Database; 新增一個名為“Banking_Database”的資料庫 指令格式: CREATE DATABASE 資料庫名稱

建立及輸入Table內資料 設為PRIMARY KEY 表示該欄位不得為空值 且為唯一(選用) 新增多筆資料 指令格式: 1. branch 2. customer 3. account 4. loan 5. depositor 6. borrower 指令格式: CREATE TABLE 表格名稱 ( 欄位名稱1 資料型別(資料長度), 欄位名稱2 資料型別(資料長度), PRIMARY KEY(欄位名稱), FOREIGN KEY(本table欄位名稱) REFERENCES 參照table名稱(參照欄位) ); 設為PRIMARY KEY 表示該欄位不得為空值 且為唯一(選用) 新增多筆資料 指令格式: INSERT INTO `表格名稱` (`欄位1`, `欄位2`) VALUES (資料1, 資料2), (資料3, 資料4); 設為FOREIGN KEY 表示該欄位的值需參考其他表格中的欄位,當被參考表格中不存在該值時便不可輸入該筆資料(選用)

1. branch (分公司) CREATE TABLE branch ( branch_name char(16), back 1. branch (分公司) branch-name branch-city assets Brighton Brooklyn 7100000 Downtown 9000000 Mianus Horseneck 400000 North Town Rye 3700000 Perryridge 1700000 Pownal Bennington 300000 Redwood Palo Alto 2100000 Round Hill 8000000 CREATE TABLE branch ( branch_name char(16), branch_city char(16), assets int(10), PRIMARY KEY(branch_name) ); INSERT INTO `branch` (`branch_name`, `branch_city`, `assets`) VALUES ('Brighton', 'Brooklyn', 7100000), ('Downtown', 'Brooklyn', 9000000), ('Mianus', 'Horseneck', 400000), ('North Town', 'Rye', 3700000), ('Perryridge', 'Horseneck', 1700000), ('Pownal', 'Bennington', 300000), ('Redwood', 'Palo Alto', 2100000), ('Round Hill', 'Horseneck', 8000000);

2. customer (客戶:存款戶、貸款戶) back 2. customer (客戶:存款戶、貸款戶) INSERT INTO `customer` (`customer_name`, `customer_street`, `customer_city`) VALUES ('Adams', 'Spring', 'Pittsfield' ), ('Brooks', 'Senator', 'Brooklyn'), ('Curry', 'North', 'Rye'), ('Glenn', 'Sand Hill', 'Woodside'), ('Green', 'Walnut', 'Stamford'), ('Hayes', 'Main', 'Harrison'), ('Johnson', 'Alma', 'Palo Alto'), ('Jones', 'MAin', 'Harrison'), ('Lindsay', 'Park', 'Pittsfield'), ('Smith', 'North', 'Rye'), ('Turner', 'Putnam', 'Stamford'), ('Williams', 'Nassau', 'Princeton'), ('Jackson', NULL, NULL);#特別注意! customer-name customer-street customer-city Adams Spring Pittsfield Brooks Senator Brooklyn Curry North Rye Glenn Walnut Stamford Hayes Main Harrison Johnson Alma Palo Alto Jones Lindsay Park Smith Turner Putuam Williams Nassau Princeton CREATE TABLE customer ( customer_name char(16), customer_street char(16), customer_city char(16), PRIMARY KEY(customer_name) );

back 3. account (存款帳) account-number branch-name balance A-101 Downtown 500 A-102 Perryridge 400 A-201 Brighton 900 A-215 Mianus 700 A-217 750 A-222 Redwood A-305 Round Hill 350 CREATE TABLE account ( account_number char(16), branch_name char(16), balance int(10), PRIMARY KEY (account_number), FOREIGN KEY (branch_name) REFERENCES branch(branch_name) ); INSERT INTO `account` (`account_number`, `branch_name`, `balance`) VALUES ('A_101', 'Downtown', 500), ('A_102', 'Perryridge', 400), ('A_201', 'Brighton', 800), ('A_215', 'Mianus', 700), ('A_217', 'Brighton', 750), ('A_222', 'Redwood', 700), ('A_305', 'Round Hill', 350);

back 4. loan (貸款帳) loan-number branch-name amount L-11 Round Hill 900 L-14 Downtown 1500 L-15 Perryridge L-16 1300 L-17 1000 L-23 Redwood 2000 L-93 Mianus 500 INSERT INTO `loan` (`loan_number`, `branch_name`, `amount`) VALUES ('L_11', 'Round Hill', 900), ('L_14', 'Downtown', 1500), ('L_15', 'Perryridge', 1500), ('L_16', 'Perryridge', 1300), ('L_17', 'Downtown', 1000), ('L_23', 'Redwood', 2000), ('L_93', 'Mianus', 500); CREATE TABLE loan ( loan_number char(16), branch_name char(16), amount int(10), PRIMARY KEY (loan_number), FOREIGN KEY (branch_name) REFERENCES branch(branch_name) );

back 5. depositor (存款戶) customer-name account-number Hayes A-102 Johnson A-101 A-201 Jones A-217 Lindsay A-222 Smith A-215 Turner A-305 INSERT INTO `depositor` (`customer_name`, `account_number`) VALUES ('Hayes', 'A_102'), ('Johnson', 'A_101'), ('Johnson', 'A_201'), ('Jones', 'A_217'), ('Lindsay', 'A_222'), ('Smith', 'A_215'), ('Turner', 'A_305'); CREATE TABLE depositor ( customer_name char(16), account_number char(16), FOREIGN KEY (customer_name) REFERENCES customer(customer_name), FOREIGN KEY (account_number) REFERENCES account(account_number) );

back 6. borrower (貸款戶) customer-name loan-number Adams L-36 Curry L-93 Hayes L-15 Jackson L-14 Jones L-17 Smith L-11 L-23 Williams INSERT INTO `borrower` (`customer_name`, `loan_number`) VALUES ('Adams', 'L_16'), ('Curry', 'L_93'), ('Hayes', 'L_15'), ('Jackson', 'L_14'), ('Jones', 'L_17'), ('Smith', 'L_11'), ('Smith', 'L_23'), ('Williams', 'L_17'); CREATE TABLE borrower ( customer_name char(16), loan_number char(16), FOREIGN KEY (customer_name) REFERENCES customer(customer_name), FOREIGN KEY (loan_number) REFERENCES loan(loan_number) );

檢視各表格中的資料

查詢範例練習 範例說明及演練

查詢範例說明 找出住在North且有貸款的客戶。 查詢這些客戶的貸款金額。 確認貸款分公司及所在地。 是否有存款? 存款分公司所在地?

手動解題 4.是否有存款? 5.存款分公司所在地? 3.確認貸款分公司及所在地。 2.查詢這些客戶的貸款金額。 找出住在North且有貸款的客戶名稱。 1. branch 2. customer 客戶(存款戶, 貸款戶) 5. account 存款帳 3. depositor 存款戶 6. loan 貸款帳 4. borrower 貸款戶 分公司

SQL解題1:住North且有貸款的客戶

SQL解題2:貸款金額

SQL解題3:貸款分公司及所在地

SQL解題4:是否有存款?

SQL解題5:存款分公司所在地?

SQL解題6:住在North同時有存款及貸款的客戶之帳目資料

心得感想 實做練習心得

心得感想 這次為了建立好銀行資料庫,必須要把它的 schema diagram弄清楚,了解各個key的 作用,參考時需注意欄位型別及長度。 資料輸入必須謹慎,需注意是否有打字錯誤。 真實的資料庫系統中,我們比較不可能使用 手動查詢的方式來解決問題,因為真實系統 中的資料數量遠高於這次的範例。 解決同一問題的SQL query,通常不只一種。

The End. Thank you!