在日常生活中,我們可能沒有察覺到經常使用的數據庫系統。正式學習數據庫之前,先帶大家了解一下身邊常見的數據庫系統應用。
在閱讀以下內容時,讀者可以先將:
* 數據庫看作一組相關的數據
* 數據庫管理系統(DBMS)看作管理和控制這組數據的軟件
* 數據庫系統包括與數據庫相互作用的應用程序、DBMS 和數據庫在內的所有東西
> 本章后面會對上述術語給出更加準確的定義。
下面是生活中一些常見的數據庫應用。
#### 超市購物
我們在超市購買商品時,就是在訪問一個數據庫。
結賬時,收銀員使用條形碼閱讀器掃描客戶購買的每一件商品。這個條形碼閱讀器連接著一個訪問商品數據庫的應用程序,該程序根據條形碼從商品數據庫中找出商品價格,然后從庫存中減去本次銷售這種商品的數量,并且在屏幕上顯示相應的價格。
如果存貨量低于設置的臨界值,數據庫系統將提示進貨以補充存貨。如果有客戶向超市打電話訂購商品,售貨員可以通過運行應用程序,查看數據庫中此商品是否有足夠的存貨。
#### 信用卡消費
使用信用卡購買商品時,售貨員要檢查客戶是否有足夠的信用額度。該項檢查可以通過打電話進行,也可以通過一個與計算機系統相連接的信用卡閱讀器自動進行。無論哪種方式,一定在某個數據庫中存有該客戶使用信用卡購買商品的所有信息。
為了檢查客戶的信用情況,需要有一個數據庫應用程序,使用信用卡號碼可以查詢出這個月客戶已購買商品的總價格,加上這次希望用信用卡購買的商品的價格,判斷是否仍在信用額度之內。并且,如果用戶確認購買,則此次購買商品的詳細內容會被記錄到該數據庫中。
應用程序還要訪問數據庫,在同意購買之前,檢查信用卡不屬被盜或丟失之列。此外,一般還有一些其它的應用程序負責每月向信用卡持卡人發送信用卡使用記錄,并在收到付款之后向信用卡持卡人發送信息。
#### 旅行社預訂假期行程
當旅客向旅行社咨詢假期行程安排時,旅行社將訪問多個包含假日和航班詳細信息的數據庫。
若客戶預定行程,數據庫系統必須進行所有必要的預定安排。在這種情況下,系統必須確保一個座位不被兩個不同的旅行社預定,以及航班的預定座位不超過航班的固定座位。
例如,假設從青海飛往北京的航班上僅剩最后一個座位,卻有兩個旅行社同時要求預定該座位,系統必須能夠分辨和處理這種情況,即允許一個預定繼續進行,通知另外一個旅行社已經沒有剩余的座位。旅行社通常可能還有另外一個數據庫用于開列票據。
#### 圖書館
在圖書館中可能存在一個數據庫,用來存儲圖書館中所有圖書的詳細資料和讀者的詳細信息等。
數據庫系統還能提供預定服務,即允許讀者預定圖書,當該書可以借閱時,用郵件或其它方式通知讀者。系統還可以向借書的讀者發送提醒信息,告知其在規定的期限內尚未歸還所借書。
另外,現在所有的圖書館都配備了計算機索引系統,實現了圖書的自動查詢。使用該系統,可以讓讀者通過查詢書名、作者或出版年份等信息,查找出希望借閱圖書的所在位置,以及是否已經借出等信息。
#### 購買保險
無論何時,如果想投保某個保險,比如壽險、家庭財產險或汽車保險,保險經紀人都要訪問多個保險機構的數據庫。
數據庫系統會根據所提供的客戶個人詳細信息,如姓名、家庭住址、年齡等情況,來確定保險的金額。保險經紀人可通過查閱多個數據庫,找到一個能給客戶最大實惠的保險。
#### 網上購物
我們平時使用的購物網站都是通過數據庫應用驅動的,例如,淘寶、京東、當當等。
當當中有好多在線書店,它允許客戶在不同的種類(例如計算機類或者管理類)中瀏覽和購買書籍。還可以按作者的姓名來瀏覽書籍。無論何種情形,該組織的網絡服務器中都存在一個數據庫,含有所有書籍的詳細信息(書名、作者、價格、銷售記錄、出版社、簡介和詳細描述等),以及是否有存貨、書籍運送情況、庫存量和訂購等信息。
在數據庫中書籍可被交叉引用。例如,一本書可能被列在多個種類下,比如同時列在計算機、程序語言、暢銷書和推薦書籍名下。
我們可以在線購買一本或多本書籍。當當網會通過數據庫保存先前交易的記錄(歷史訂單),包括購買的書名、送貨地址和支付價格等詳細信息,為網站的用戶提供個性化服務。
#### 大學
如果你正在大學就讀,學校會有一個用來存儲學生所有信息的數據庫系統(學生管理系統),包括注冊的課程、獲得的各類獎學金、往年已選擇的課程和今年正在選擇的課程以及考試成績信息等。可能還有一個數據庫用來存儲在大學中工作員工的詳細信息。
上述是生活中常見數據庫的應用,你肯定還會遇見其它更多的數據庫系統。雖然我們今天對這些應用司空見慣,但其實數據庫系統是相當復雜的技術,到現在已經歷經了六十多年的發展。
- 數據庫入門
- 1.常用的數據庫
- 2.數據管理技術的3個發展階段
- 3.數據庫是什么?關系型數據庫和非關系型數據庫又是什么?
- 4.為什么要使用數據庫?
- 5.數據庫系統是什么?它由哪幾部分組成?
- 6.常用數據庫訪問接口簡介
- 7.數據庫的種類有哪些?
- 8.幾種常用的數據庫
- 9.MySQL是什么
- 10.MySQL適用于哪些場景?
- 11.學MySQL前,需要了解這些數據庫專業術語
- 12.MySQL客戶端和服務器架構(C/S架構)
- 13.明白了MySQL內部結構才能成為高手!
- 14.如何學習數據庫(新手必看)?
- 15.小白學習MySQL需要多長時間,能從事哪方面的工作?
- 16.當前市場對數據庫程序員的需求如何?待遇如何?
- 17.DBA到底要做什么,成為一名DBA需要具備什么能力?
- 一、數據庫的概念和常用工具
- 二、MySQL規范、配置及登錄退出操作
- 三、MySQL中的數據類型
- 四、數據庫增查改刪等操作
- 五、數據表增查改刪操作
- 六、MySQL數據增查改刪操作
- 七、MySQL存儲引擎
- 八、MySQL常用函數
- MySQL的安裝和配置
- 1.MySQL 5.7的新特性(新功能)
- 2.MySQL下載步驟詳解
- 3.MySQL安裝配置教程(Windows系統)
- 4.MySQL免安裝版配置教程
- 5.MySQL配置環境變量
- 6.安裝MySQL后,如何判斷是否已安裝成功
- 7.啟動MySQL服務的兩種方式(圖解)
- 8.登錄MySQL數據庫
- 9.對Linux MySQL軟件包的一些說明
- 10.Linux CentOS卸載MySQL(Linux安裝MySQL前的準備)
- 11.Linux安裝配置MySQL詳細步驟
- 12.MySQL my.cnf配置文件詳解
- 13.MySQL常用圖形化管理工具
- 14.MySQL安裝后的目錄結構介紹
- 15.MySQL數據庫文件存放目錄結構詳解
- 16.MySQL配置文件(my.ini)詳解
- 17.與其它數據庫不同,MySQL可以在不同的SQL模式下運行
- 18.MySql Command Line Client閃退原因及解決方案
- MySQL數據庫的基本操作
- 1.SQL是什么?它能做什么?
- 2.SQL的基本書寫規則
- 3.MySQL查看或顯示數據庫(SHOW DATABASES語句)
- 4.MySQL創建數據庫(CREATE DATABASE語句)
- 5.MySQL修改數據庫:ALTER DATABASE用法簡介
- 6.MySQL刪除數據庫(DROP DATABASE語句)
- 7.MySQL選擇數據庫(MySQL USE語句)
- 8.MySQL注釋:單行注釋和多行注釋
- 9.MySQL中SQL語句的大小寫規則
- 10.如何查看MySQL系統幫助?
- 11.看懂SQL錯誤代碼,提高學習效率!
- 數據庫高級
- 一、視圖的操作
- 二、觸發器的操作
- 三、事務的操作
- 四、索引的操作
- 五、存儲過程的操作
- 六、數據庫的優化方案
- 1.分庫、分表和索引
- 2.讀寫分離和查詢優化
- 3.join代替子查詢
- 4.盡量使用短小的事務
- 5.常用小技巧
- MySQL使用注意事項
- 1.字符亂碼及連接驅動