資料庫由特殊格式的檔案與管理這些檔案的 DBMS 組成。 而 DBMS 接受 SQL 語言,代理資料之搜尋、修改、新增、刪除等工作。 設計一個資料庫的基本程序如何?需要考慮哪些範疇? 所謂關聯式資料庫的「關聯」有何意義?在技術上如何實現? 初步認識資料型態和應用程式介面,它們將會在後續的課文中繼續出現。
資料庫軟體之設計與製作儘管複雜, 就使用的技術而言,卻相對地簡單。 設計一套資料庫的應用系統,真正重要的, 是對於資料來源與其工作環境的知識, 設計者必須熟知工作場合中人們看待這些資料的模型與使用它們的習慣, 否則就算資料庫本身的操作技能再強,也不能設計出能夠提高工作效率的資料庫。 此外,資料庫只是提供資料的「後勤」部門, 一個完整的資料庫,必須加上前端的資料輸入介面, 與後端的資料分析程式。 前者通常與 GUI 或網頁設計有關,後者通常需要統計或數學的計算。
利用一個資料庫管理系統的文字或圖形介面,建立、修改、查詢表格。 而查詢當中,更需有能力處理相關聯之表格。
1.21: 一則關於沒有資料的故事 | 1.31: 為何 zip 表格需要 id 欄位 |
1.25: 關於資料庫的集合論簡介 | Edgar Codd (b. 1923) |
此處提供課文內作為範例的四張表格以及一個 DBMS 操作介面, 讓讀者輸入 SQL 語言,練習查詢。 本介面不提供建立、修改、刪除等權力,故不能練習這些動作。 更深入的練習,需由授課單位提供完整的資料庫使用帳戶。
MySQL 是一家瑞典公司 TcX 的產品,不過這是個 open source 的產品, TcX 主要賣的是服務吧。MySQL 是一種 RDBMS、支援大部分的 SQL 語言, 有完備的線上說明與編印成書的使用手冊。 據網友測試,MySQL 的效能頗高,而且有 Perl 和 PHP 的應用程式介面, 經常有人選擇 Linux + Apache + MySQL 作為小型網站的架設平台。
以經過變造且簡化的『中央大學數學系校友通訊錄』為範例資料庫, 其表格屬性悉如課本所述, 並分成三個階段設計問題讓讀者自行練習 SQL 查詢指令的用法。
讀過課文之後,用此工具檢查是否瞭解內容。
前言(8'04") | 資料庫表格(13'36") | 表格與欄位屬性(18'24") | SQL 語言(6'15") |
關聯性(24'21") | 接合(9'14") | 應用程式介面(12'49") |
關於這一講內容的歷年考題。
教師或助教,請看這一講的設計理念和教學建議。 這裡還會包含一些教學經驗的交流以及某些評量的統計資料。 (如何申請教師帳號?)
製作人、 修改記錄 |
單維彰 (2251/05/24) --- 02/01/21 (徐), 03/03/29 (單) |