Ⅰ 資料庫設計的根本目的是什麼
資料庫設計的根本目標是要解決
A)數據共享問題 B)數據安全問題
C)大量數據存儲問題 D)簡化數據維護
一般書上很少這么提,大家在答這個題的時候,可以從資料庫的概念上入手,資料庫設計的根本目標是要解決應該是共享問題。四個答案可以做一些比較,最好的答案應該是A答案。你可以看一下資料庫的概念,一般資料庫是長期存儲在計算機內有組織的可共享的數據集合。還有一個線索,資料庫設計的六個階段,每一個階段主要做什麼,或者是大家看資料庫的一些範式,這個範式主要解決什麼問題。從這一題大家一定要注意二級考試的公共基礎知識,很多地方都考最根本,最主要的地方。
*************************
以上是轉載的資料
呵呵,說一下我的理解:
資料庫設計的目的即設計目標從根本上來說就是要實現數據的共享和安全存取,從細化及技術上來說,一個優秀的資料庫設計必須要最終實現用戶對於數據共享的具體要求,必須要在滿足於用戶的數據存取要求的基礎上實現對於數據的關聯性及優化,必須實現數據的安全性及可移植性,以保證用戶數據能夠簡單的進行移植,必須要實現資料庫的可擴容性結構以保證資料庫對於用戶未來數據要求的兼容性等等
Ⅱ 求一份資料庫課程設計,課題為學生成績管理系統
第一步,規劃。規劃階段的主要任務是進行建立資料庫的必要性及可行性分析。如系統調查(即對企業全面調查,畫出組織層次圖,以了企業組織結構),可行性分析,確定DBS(資料庫系統)的總目標和制定項目開發計劃。
第二步,需求分析。需求分析階段應該對系統的整個應用情況作全面的、詳細的調查,確定企業組織的目標,收集支持系統總的設計目標的基礎數據和對這些數據的要求,確定用戶的需求,並把這些要求寫成用戶和資料庫設計者都能夠接受的需求分析報告。這一階段的工作只要有,分析用戶活動,產生業務流程圖;確定系統范圍,產生體統范圍圖;分析用戶活動涉及的數據,產生數據流程圖;分析系統數據,產生數據字典。
第三步,概念設計。概念設計的目標是產生反應企業組織信息需求的資料庫概念結構,即設計出獨立與計算機硬體和DBMS(資料庫管理系統)的概念模式。E-R模型是主要設計工具。
第四步,邏輯結構設計。其目的是把概念設計階段設計好的全局E-R模式轉換成與選用的具體機器上的DBMS所支持的數據模型相符合的邏輯結構(包括資料庫模式和外模式)。
第五步,資料庫的物理設計。對於給定的數據模型選取一個最適合應用應用環境的物理結構的過程。資料庫的物理結構主要指資料庫的存儲記錄格式、存儲記錄安排和存取方法,完全依賴於給定的硬體環境赫爾資料庫產品。
第六步,資料庫的實現。該階段主要有3項工作:1建立實際資料庫結構 2裝入試驗數據對應用程序進行調試 3裝入實際數據,進入試運行狀態。
第七步,資料庫的運行與維護。資料庫系統的正式運行,標志著資料庫設計與應用開發工作的結束和維護階段的開始,該階段有4項任務:1維護資料庫的安全性與完整性 2監測並改善資料庫運行性能 3根據用戶要求對資料庫現有功能進行擴充 4及時改正運行中發現的系統錯誤
Ⅲ 資料庫原理
《資料庫原理及應用》教學大綱
課程編號 1620127 總學時 46 理論 32 實驗/上機 14
學分 2.5 開課單位 信息學院 開課系 電子工程系 修訂時間 2006年1月1日
課 程 簡 介
教學內容
《資料庫原理及應用》主要討論資料庫系統的基本概念,基本原理,基本方法以及有關的應用。
主要內容包括:資料庫系統的組成、關系資料庫、資料庫設計以及數據保護等,同時講解一種重要的資料庫系統的應用。要求學生通過本課程的學習了解有關資料庫系統的基本概念,掌握相關的知識,初步掌握資料庫設計方法,並能用資料庫系統建立資料庫及簡單的應用。
修讀專業:本大綱適合本科電子信息工程專業使用
先修課程:《數據結構》
教材:資料庫系統及應用(第二版) 「北京市高等教育精品教材」立項項目。由崔巍編著,高等教育出版社
一、 課程的性質與任務
本課程是電子信息工程專業有關資料庫的一門統設必修課。主要任務是介紹資料庫組織、管理和使用的一般知識,包括數據模型、資料庫結構、資料庫系統、資料庫設計、關系運算、關系規范化、關系查詢(sql語言)等方面的知識;介紹至少一種實際的資料庫管理系統的構成與使用。目的使學生通過該課程的學習,具有進行簡單資料庫應用系統設計與開發的能力。
二、 課程的基本要求
1.熟練掌握(代碼:A):資料庫中的概念、資料庫設計與編程方法。資料庫的結構與特點,資料庫系統的組成及各部分的功能,熟練使用結構化查詢語言(SQL)。
2.掌握(代碼:B):關系代數語言的使用;關系演算語言的使用;三級一致性的區別及其與可串列化調度的關系;關系資料庫以及面向對象資料庫的特點與區別;查詢表達式優化的方法。
3.了解(代碼:C):關系、關系模型、鍵碼、視圖、函數依賴等概念
三、 修讀專業
本大綱適合本科電子信息工程專業使用
四、 本課程與其它課程的聯系
由於資料庫理論及應用是各種計算機技術的綜合應用,為了能夠讓學生很好地理解資料庫技術,要求學生在學習本課程之前最好已經學習過以下課程:《程序設計》、《數據結構》、《操作系統》等課程。當然主要要求學生具有「數據結構」的基本知識,其他課程的知識要求是其次的。
對於現行資料庫的選擇,建議教師最好選擇「Microsoft SQL Server」,其它的資料庫如:Oracle,IBM DB2相對比較難理解和應用,Access又過於簡單。
五、 教學內容安排、要求、學時分配及作業
Chapter 1 緒論(2)
1.1 什麼是資料庫(C)
1.2 資料庫管理系統(C)
1.3 資料庫管理和資料庫管理員(B)
1.4 資料庫系統(B)
1.5 資料庫的過去、現在和未來(C)
作業:第2題
Chapter 2 數據模型和三層模式資料庫(4)
2.1 信息結構與E-R方法(C)
2.2 概念數據模型(B)
2.2.3 連接陷阱(C)
2.3 傳統的三大數據模型(C)��
2.4 數據獨立性與三層結構(B)��
2.5 資料庫管理系統的結構(B)��
Chapter 3 關系資料庫(4)
3.1 關系資料庫系統概述(C)��
3.2 關系數據模型(C)��
3.3 關系模型的完整性約束(B)��
3.4 關系代數(B)��
3.5 關系資料庫系統的三層模式結構(B)��
作業:第8題--1),2)
Chapter 4 Microsoft SQL Server資料庫基礎(1)
4.1 客戶/伺服器體系結構(C)��
4.2 Microsoft SQL Server基礎(C)��
4.3 Transact-SQL簡介(C)��
Chapter 5關系資料庫標准語言——SQL(8)
5.1 SQL語言概述(B)��
5.2 SQL的數據定義功能(B)��
5.3 SQL的數據查詢功能(C)��
5.4 視圖(View) (B)�
5.5 SQL的數據操作功能(A)��
5.6 SQL的數據控制功能(A)��
5.7 SQL的宿主使用(B)��
5.8 動態SQL(B)��
作業:第2題--7),9),11 )
Chapter 6 存儲過程、觸發器�和數據完整性(4)
6.1 存儲過程(B)��
6.2 觸發器及其用途(B)��
6.3 數據完整性(A)�
作業:第2題--3)�
Chapter 7 安全性(4)
7.1 安全性概述(C)��
7.2 用戶管理和角色管理(A)��
7.3 許可權管理(A)��
7.4 其他安全問題(C)��
Chapter 8 事務管理(2)
8.1 事務(B)��
8.2 並發控制(B)��
8.3 恢復(A)��
作業:第1題,第2題
Chapter 9 關系數據理論(2)
9.1 基本概念(C)��
9.2 函數依賴的公理系統(C)��
9.3 規范化(B)��
9.4 模式分解(B)��
Chapter 10 資料庫設計(1)
10.1 完善E-R模型中的概念(C)��
10.2 資料庫設計的過程(B)�
六、 實驗內容與要求
序號 實驗內容 學時
1 建立資料庫(B)�� 2
2 建立表和數據完整性(A)� 2
3 SQL數據操作(B)�� 2
4 SQL數據查詢(A)�� 2
5 視圖的定義和操作(B)�� 2
6 存儲過程、觸發器(B)�� 2
7 用戶管理和許可權管理(A) 2
七、 教材與參考書
本課程選用教材:崔巍,資料庫系統及應用(第二版),高等教育出版社
本課程推薦參考書:
1)薩師煊、王珊,資料庫系統概論(第一版),北京:高等教育出版社,1983
2)薩師煊、王珊,資料庫系統概論(第二版),北京:高等教育出版社,1991
3)薩師煊、王珊,實用資料庫系統匯編,北京:高等教育出版社,1990
4)王珊、陳紅、文繼榮,資料庫和資料庫管理系統,北京:電子工業出版社,1995
5)馮玉才,資料庫基礎(第二版),武漢:華中理工大學出版社,1993
6)施伯樂、何繼潮、崔靖,關系資料庫的理論及應用,鄭州:河南科技出版社,1990
7)《資料庫系統概論》第三版 普通高等教育「九五」國家教委重點教材,由薩師煊、王珊編著,高等教育出版社
Ⅳ 求一個用C#編寫的宿舍管理系統 《基於C#.NET和SQL Server的資料庫應用系統開發》課程設計計劃.
幸虧有你們這么一類人啊,要不然,這一年一年的,程序員早沒飯吃了!!
Ⅳ 《資料庫系統原理》課程設計:學生信息管理系統 圖書借閱管理 工資管理系統 學生成績管理系統 任選其一
學生信息管理系統 圖書借閱管理 工資管理系統 學生成績管理系統都有 全套 資料 找我 吧
Ⅵ 200分2天內求大學本科資料庫課程設計!急!急!
一、課程設計的內容
本課程設計要採用本課程中學習的資料庫設計方法,運用其基本思路與主要圖表工具完成「企業報刊訂閱管理系統」資料庫應用系統。完成信息需求分析與資料庫的概念設計、邏輯設計、物理設計以及處理功能設計,用SQL Sever的資料庫管理系統、JSP開發工具實現該系統,並運行、評價、改進之;在此基礎上嚴格按課程設計教學大綱所附報告提綱撰寫課程設計報告。通過本課程設計進一步弄懂資料庫系統及其相關的基本概念,理解資料庫系統的系統結構、主要特點,掌握資料庫設計的原理、方法及其基本過程,初步具備資料庫應用設計的能力,初步形成運用資料庫應用系統解決管理決策中的實際問題的基本素質。
二、課程設計的要求與數據
要求學生結合所學管理知識,在借鑒課堂教學案例、了解家人或親友所從事的業務及其流程的基礎上,參考有關資料,選擇自己了解的一項業務,運用課堂所學資料庫系統與資料庫設計知識,完成信息需求分析、資料庫概念設計、邏輯設計、物理設計,實現完成該業務的資料庫應用系統,並運行、評價改進之,最後要寫出課程設計報告。
三、課程設計應完成的工作
要求學生按照《資料庫應用課程設計》教學大綱完成一個資料庫應用系統,並撰寫相應的課程設計報告,主要內容包括:
概述:系統的基本任務,主要業務,開發目標
1. 需求分析
2. (資料庫)概念(模型)設計
3. (資料庫)邏輯(模型)設計
4. 資料庫物理設計與資料庫保護設計
5. 處理功能設計
6. 資料庫應用系統的實現
7. 資料庫應用系統運行
四、課程設計進程安排
序號 設計各階段內容 地點 起止日期
五、應收集的資料及主要參考文獻
[1] 王 珊、陳 虹編著,資料庫系統原理教程,清華大學出版社,2003.
[1] 金銀秋主編,資料庫原理與設計,科學出版社,2000.
[2] 李建中 王珊,資料庫系統原理,電子工業出版社,1998.
[3] 李大友,資料庫原理及應用(第二版),清華大學出版社,2000
發出任務書日期: 年 月 日 指導教師簽名:
計劃完成日期: 年 月 日 基層教學單位責任人簽章:
主管院長簽章:
目錄
概述 …………………………………………………………………4
1. 需求分析…………………………………………………………4
1.1用戶需求……………………………………………………………………4
1.2業務流程分析………………………………………………………………4
1.3信息需求分析………………………………………………………………5
1.4功能需求分析………………………………………………………………6
2. (資料庫)概念(模型)設計…………………………………7
3. (資料庫)邏輯(模型)設計…………………………………9
3.1 一般邏輯模型設計…………………………………………………………9
3.2 具體邏輯模型設計…………………………………………………………9
4. 資料庫物理設計與資料庫保護設計…………………………10
4.1設計索引……………………………………………………………………10
4.2 設計表間關系………………………………………………………………10
4.3完整性設計…………………………………………………………………10
5. 處理功能設計…………………………………………………11
6. 資料庫應用系統的實現………………………………………11
7. 資料庫應用系統運行…………………………………………11
7.1 寫出系統操作使用的簡要說明……………………………………………11
7.2 系統實施過程………………………………………………………………11
7.3系統使用結果………………………………………………………………22
7.4系統評價……………………………………………………………………31
企業報刊訂閱管理系統
概述
隨著社會不斷的發展,人們的生活水平越來越高,對知識的和對時事的渴求也越來越高,人們希望能夠方便快捷地訂閱各種報刊雜志。但是各種各樣的報刊名目和詳細信息以及訂閱,為相關企業的管理造成很大的麻煩。因此網上訂閱成為不可或缺的一部分。
本系統就是面向一個企業的報刊訂閱管理系統。此系統是一種比較智能化的管理系統,它面向所有企業部門的職工用戶,但具有比較高的安全性能。它能夠實現報刊訂閱的基本功能,包括新報刊信息的錄入、訂閱、查詢等操作以及後台資料庫的備份和恢復。用戶合法注冊後必須輸入有效密碼才能成功進入此系統,可以進行訂閱報刊,查詢信息,統計信息等操作。對於非法操作,系統有識別和防護措施。
1. 需求分析
1.1 用戶需求:
本系統就是面向一個企業的報刊訂閱管理系統。此系統是一種比較智能化的管理系統,它面向所有企業部門的職工用戶,但具有比較高的安全性能。它能夠實現報刊訂閱的基本功能,包括新報刊信息的錄入、訂閱、查詢等操作以及後台資料庫的備份和恢復。用戶合法注冊後必須輸入有效密碼才能成功進入此系統,可以進行訂閱報刊,查詢信息,統計信息等操作。對於非法操作,系統有識別和防護措施。
訂閱信息處理的特點是訂閱信息處理量比較大,所管理的信息信息種類繁多,而且訂閱單、編輯單的發生量特別大,關聯信息多,查詢和統計的方式各不相同。因此在管理上實現起來有一定因難。
本系統在設計過程中,為了克服這些困難,需要使程序代碼標准化,軟體統一化,確保軟體的可維護性和實用性;刪除不必要的管理冗餘,實現管理規范化、科學化;界面友好、簡單化,做到實用、方便,盡量滿足報刊訂閱中員工的需要。
1.2 業務流程分析:
本系統主要面向的用戶有系統管理員、讀者。下面分角色對該系統的不同操作范圍做說明。
本系統主要有以下功能模塊:
(1)登陸功能:登陸系統為身份驗證登錄。分為管理員登錄和一般用戶登錄。分別通過不同的用戶名和密碼進入報刊訂閱管理界面,新的用戶需要注冊。
(2)錄入新信息功能:對於管理員,包括新用戶信息和新報刊信息的錄入功能,信息一旦提交就存入到後台資料庫中;普通用戶自行注冊進行可以修改個人信息。
(3)訂閱功能:用戶可以訂閱報刊,系統自動計算所需金額,並顯示在界面上;管理員不可訂閱報刊,必須以用戶身份訂閱報刊。
(4)查詢功能:用戶可以查詢並顯示自己所訂閱的信息;管理員可以按人員、報刊、部門分類查詢。查詢出的信息顯示在界面上,並且可以預覽和列印出結果。
(5)統計功能:管理員可以按用戶、部門、報刊統計報刊的銷售情況,並對一些重要的訂閱信息進行統計;普通用戶可以統計出自己的訂閱情況,並且可以預覽和列印出結果。
(6)系統維護功能:數據的安全管理,主要是依靠管理員對資料庫里的信息進行備份和恢復,資料庫備份後,如果出了什麼意外可以恢復資料庫到當時備份的狀態,這提高了系統和數據的安全性,有利於系統的維護。
下圖為該系統的業務流程圖
1.3 信息需求分析
1.3.1 資料收集:業務流程中用到的相關單據主要是報刊信息還有訂單信息
報刊信息表:
報刊代號 46-250 報刊名稱 IT時代周刊
出版報社 科技出版社
出版周期 半月刊
每月定價 10.00 元/月
分類編號 1001
報刊介紹 《IT時代周刊》是一本深刻解讀信息時代商業變革的雜志。除深度報道信息產業的重大新聞外,還報道金融、汽車、股市、零售等傳統行業利用IT提升商業與管理的新聞。《IT時代周刊》以調查見深度;以商業故事見功力。是CEO/CIO/CFO以及政府官員、商業領袖首選刊物。
訂單信息表:
訂單編號 報刊代號 用戶編號 訂閱日期 訂閱月數 份數 操作
3003 46-205 3206 2008-7-1 訂一月 1 取消訂閱
3004 26-306 3108 2008-7-8 訂半年 2 取消訂閱
3005 72-310 3100 2008-7-9 訂一年 1 取消訂閱
3006 45-214 2541 2008-7-10 訂一季 1 取消訂閱
1.3.2 事項分析:根據以上資料中標題、表頭等中各欄目名,可以得出相關事項,作為數據項;分析這些數據項,找出組合項、導出項、非結構化數據項,確定基本項。檢查是否有要補充的基本數據項,是否有要改進的地方,補充改進之,得出所有基本項。
1.4 功能需求分析:
本系統的主要結構功能圖如下:
2. (資料庫)概念(模型)設計
基本項構思ERD的四條基本原則:
①原則1 (確定實體):能獨立存在的事物,例如人、物、事、地、團體、機構、活動、事項等等,在其有多個由基本項描述的特性需要關注時,就應把它作為實體。
②原則2 (確定聯系):兩個或多個實體間的關聯與結合,如主管,從屬,組成,佔有,作用,配合,協同等等,當需要予以關注時,應作為聯系。實體間的聯系可分為一對一、一對多、多對多等三類,在確定聯系時還要確定其類型。
③原則3 (確定屬性):實體的屬性是實體的本質特徵。實體應有標識屬性(能把不同個體區分開來的屬性組),並指定其中一個作為主標識。聯系的屬性是聯系的結果或狀態。
④原則4(一事一地):信息分析中得到的基本項要在且僅在實體聯系圖中的一個地方作為屬性出現。
經過上述系統功能分析和需求總結,設計如下面所示的數據項和數據結構。
管理員表(Adminuser):用於存放管理員的數據記錄,包括數據項:管理員名、密碼。
部門表(Department):用來存放部門的相關記錄,包括數據項:部門號,部門名。
用戶表(Users):用於存放注冊用戶的記錄,包括數據項:用戶賬號、密碼、真實姓名、身份證號、聯系電話,聯系地址,部門號(和部門表有關)等。
報刊類別表(NewspaperClass):用於存放初始的報刊類別記錄,包括數據項:分類編號、分類名稱。
報刊信息表(Newspaper):用於存放報刊記錄,包括數據項:報刊代號、報刊名稱、出版報社、出版周期、季度報價、內容介紹、分類編號(和報刊類別表有關)等。
訂單表(Order):用於存放用戶下達的訂閱報刊的基本信息,包括數據項:訂單編號、用戶編號(用戶表的主碼)、報刊代號(報刊信息表的主碼)、訂閱份數、訂閱月數等。
根據上面的設計規劃出來的實體有部門實體、管理員實體、用戶實體、報刊類別實體、報刊信息實體和訂單實體。
部門實體的E-R圖如下圖所示: 管理員實體的E-R圖如下圖所示:
用戶實體的E-R圖如下圖所示: 報刊信息實體的E-R圖如下圖所示:
訂單實體的E-R圖如下圖所示: 報刊類別實體的E-R圖如下圖所示:
所有實體之間的的關系E-R圖如下圖所示:
3. (資料庫)邏輯(模型)設計
3.1 一般邏輯模型設計:
關系模型的邏輯結構是一組關系模式的集合。將E-R圖轉換為關系模型就是要將實體型、實體的屬性和實體型之間的聯系轉換為關系模式。
由ERD導出一般關系模型的四條原則;
①一個1:1聯系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合並。如果軟換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,每個實體的碼均是該關系的候選碼。如果與某一端實體對應的關系模式何明,則需要在該關系模式的屬性中加入另一個關系模式的碼和聯系本身的屬性。
②一個1:n聯系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合並。如果轉換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼。
③一個m:n聯系轉換為一個關系模式。與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,各實體的碼組成關系的碼或關系碼的一部分。
④3個或3個以上實體間的一個多元聯系可以轉換為一個關系模式。與該多元聯系項鏈呢的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,各實體的碼組成關系的碼或關系碼的一部分。
根據以上原則將E-R圖轉換成的關系模式如下:
部門(部門號,部門名稱)
用戶(用戶賬號,密碼,用戶真實姓名,聯系電話,聯系地址,部門號)
管理員(管理員名,密碼)
報刊類別(分類編號,分類名稱)
報刊(報刊代號,報刊名稱,出版報社,出版周期,每月訂價,內容介紹,分類編號)
訂單(用戶編號,報刊代號,訂閱份數,訂閱月數,訂閱總額)
3.2 具體邏輯模型設計:
在SQL Server2000資料庫中,首先創建newspaper資料庫,然後根據資料庫的邏輯結構分析創建表4-1━4-6的6張數據表。在前台訪問資料庫階段設置了用戶和密碼,用戶為sa,密碼為空。
表4-2 department部門表結構
欄位名稱 欄位類型 允許空 說明
depNumber(主碼) Char(10) 否 部門號
depName Char(50) 是 部門名稱
表4-3 users用戶表結構
欄位名稱 欄位類型 允許空 說明
userNo(主碼) Char(10) 否 用戶帳號
userName Char(20) 是 真實姓名
passWord Char(10) 否 用戶密碼
address Char(150) 是 用戶聯系地址
phone Char(20) 是 用戶聯系電話
depNumber Char(10) 否 用戶所屬部門號
表4-3 newspaperClass報刊分類表結構
欄位名稱 欄位類型 允許空 說明
classid(主碼) Int(4) 否 報刊分類編號
className Char(30) 是 報刊分類名稱
表4-4 newspaper報刊表結構
欄位名稱 欄位類型 允許空 說明
newsNo(主碼) Char(10) 否 報刊代號
newsName Char(40) 否 報刊名稱
classid Int(4) 否 報刊分類編號
publish Char(150) 是 出版報社
pubPeriod Char(30) 是 出版周期
content Char(4000) 是 內容介紹
price Float(8) 否 每月報價
表-6 book訂單表結構
欄位名稱 欄位類型 允許空 說明
userNo(主碼) Char(10) 否 用戶帳號
newsNo(主碼) Char(10) 否 報刊代號
orderAmount Int(4) 否 訂閱份數
orderMonth Int(4) 否 訂閱月數
totalPrice Float(8) 是 訂閱總額
表4-1 adminuser管理員表結構
欄位名稱 欄位類型 允許空 說明
adminUser(主碼) Char(20) 否 管理員用戶名
adminPass Char(10) 否 管理員密碼
4. 資料庫物理設計與資料庫保護設計
4.1設計索引:我們可以在最經常查詢的列上建立索引以提高查詢效率。
而在這個系統中,我們經常要按用戶賬號,按報刊代號,按部門查詢,所以,我們可以為這三個表建立索引,建立所以的SQL語句如下,這幾個都是字元型
Create unique index userNum on users(userNo)
Create unique index departNum on department(depNumber)
Create unique index newsNum on newspaper(newsNO)
4.2 設計表間關系:
4.3完整性設計列出主要欄位完整性的欄位名、完整性約束條件;列出記錄完整性約束及其約束條件;列出參照完整性表。
主要欄位的完整性欄位名和參照完整性表可以參照上圖各個表之間的關系來看。
比如建立報刊表newspaper時,要求報刊代號在100~99999之間,報刊名稱和每月定價不能取空值,報刊類別是報刊類別表的主鍵,則
Create table user
(userNo char(10) constraint C1 check(newsNo between 100 and 99999),
newsName char(40) constraint C2 not null,
classid int(4) constraint C3 not null,
publish char(150),pubPeriod char(30),content char(4000),
price float(8) not null,
constraint C4 foreign key(classid) references newspaperclass(classid) )
4.4在有多個用戶操作時,考慮用戶授權與安全性控制。
因為這個報刊訂閱系統由多個用戶使用,分為管理員和用戶,他們擁有不同的許可權和安全性控制。所以在許可權設置方面,採用管理員和用戶分別使用用戶名和密碼進入他們能使用許可權范圍里的界面。管理員登陸系統後,可以添加、修改用戶和報刊的信息,可以對訂單進行查詢和統計,並且可以把查詢統計的結果進行預覽和列印出來,還要對資料庫系統進行維護,適時備份資料庫,一旦資料庫遇到問題,可以恢復到最近備份的狀態,減少不必要的損失。
用戶登錄,用戶使用該系統前需要進行注冊,他應該是該企業某個部門下面的員工,所以他需要輸入他的部門號等信息,注冊成功後,登錄到系統,可以修改自己的信息還有訂閱報刊,但由於許可權的限制,他只能查看和統計自己的訂單信息。
5. 處理功能設計
5.1 主控模塊設計:
使用本系統,首先它會自動彈出「歡迎使用本系統」的歡迎界面,然後跳轉到用戶身份驗證界面,選擇管理員的身份進入,有錄入(錄入報刊信息、錄入用戶信息),查詢,統計(統計用戶、統計、報刊訂單),系統維護(備份資料庫、恢復資料庫),注銷,退出等菜單可使用,沒注冊的用戶可進入注冊界面進行注冊,然後返回登錄界面登錄,進入後有歡迎界面,有訂閱、查詢、統計、修改、注銷、退出等菜單可使用。
6. 資料庫應用系統的實現
6.1 資料庫及其表結構的建立:按照上面的邏輯分析見表
6.2數據輸入:在建好的各個表中輸入數據,要符合數據的約束條件
7. 資料庫應用系統運行
7.1 寫出系統操作使用的簡要說明
本系統的運行需要安裝PowerBuilder9.0和SQL Server2000軟體。操作該系統,首先把備份的資料庫還原出來,導入SQL Server中,然後打開該系統,連接上還原出來的資料庫,再運行,就可以了。
7.2 系統實施過程
(1)打開PowerBuilder,新建一個工作區,命名為newspaper
(2)新建一個Application,取名newspaper,然後點擊工具欄上的DB Profile,新建一個MSS Microsoft SQL Server,填入Profile Name,伺服器名,用戶名,密碼,資料庫,如下圖,然後輸入連接資料庫的主要代碼:
open(w_welcome)
// Profile newspaper
SQLCA.DBMS = "MSS Microsoft SQL Server"
SQLCA.Database = "newspaper"
SQLCA.ServerName = "CHINA-41CD782EF"
SQLCA.LogId = "sa"
SQLCA.LogPass=""
SQLCA.AutoCommit = False
SQLCA.DBParm = ""
connect;
if sqlca.sqlcode<>0 then
messagebox("錯誤","資料庫連接錯誤,程序將關閉!",stopsign!)
return
end if
close(w_welcome)
open(w_login)
(3)製作登錄頁面w_login,在「確定」按鈕輸入如下:
「注冊」按鈕代碼:open(w_register) //打開用戶注冊頁面
「退出」按鈕代碼:close(w_login) //退出本系統
(4)製作注冊窗口w_register,在「注冊」按鈕的代碼如下:
「取消」按鈕代碼:close(w_register)
open(w_login)
(5)製作管理員主菜單w_adminview,建管理員主界面w_adminview,將該菜單放到窗口中
(6)製作用戶主菜單w_userview,建用戶主界面w_userview,將菜單放到窗口中
(7)製作管理員主菜單里的錄入報刊信息窗口w_inmagazine,錄入用戶信息窗口w_inuser,
製作數據窗口dw_magagrid,dw_magafree,dw_userfree,dw_usergrid,在數據窗口調整好外觀,添加控制項,並設定相應的動作,分別放到這兩個窗口中
這兩個窗口功能相識,在窗口中輸入:
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_2.settransobject(sqlca)
dw_2.retrieve()
(8)製作管理員主菜單中的查詢訂閱信息窗口w_searchorder,製作數據窗口dw_booksearch,將其放入窗體中,在窗口中輸入代碼:
dw_1.settransobject(sqlca)
dw_1.retrieve()
sle_1.setfocus()
在「查詢」按鈕中輸入代碼:
「預覽」按鈕的代碼:
「關閉」按鈕代碼:close(w_searchorder)
數據窗口欄位如下:
(9)製作管理員主菜單中的統計用戶訂單窗口w_statuser,統計部門訂單窗口w_statdept,統計報刊訂單窗口w_statnews:製作統計數據窗口dw_statnews,dw_statuser,dw_statdept將dw_statnews,dw_statuser,dw_statdept分別放入w_statnews, w_statuser,w_statdept中;以下僅列出按出按部門統計的代碼和界面 (按用戶、報刊統計類似,略);
按部門統計代碼:
窗口代碼:
按部門統計數據窗口:
dw_1.settransobject(sqlca)
dw_1.retrieve()
預覽鍵代碼:(與上頁預覽代碼相同)
退出:close(parent)
(10)管理員主菜單中的更改登錄在w_adminview中的代碼
(11)管理員主菜單中的退出系統在w_adminview中的代碼
(12)管理員主菜單中的資料庫備份窗口w_backup,「開始備份」按鈕的代碼如下
在「>>」按鈕帶輸入代碼:
(13)管理員主菜單中的資料庫恢復窗口w_restore,「開始恢復」按鈕的代碼如下
在「>>」按鈕帶輸入代碼:
在「開始恢復」按鈕輸入代碼:
(14)用戶主菜單的訂閱報刊窗口w_userorder
該系統中定義了一個全局變數gs_userid,其它窗口界面都可以使用該變數,並顯示用戶名,用戶登錄後,它會顯示「~~~~,歡迎使用本系統!」的歡迎界面。
窗口代碼:
dw_1.settransobject(sqlca)
dw_1.retrieve()
sle_1.setfocus()
sle_2.text=gs_userid
「清空」按鈕代碼:
sle_1.text=""
sle_3.text=""
sle_5.text=""
「退出」按鈕代碼:
close(w_userorder)
「訂閱」按鈕代碼:
(14)用戶主菜單的查詢訂單窗口w_usersearch,將訂單查找dw_booksearch放到窗口裡,在窗口中過過濾器篩選中用戶自己的訂單信息,一打開就可以看到自己的訂單信息,可列印和預覽結果
窗口代碼:
「預覽」和「退出」按鈕同上
(15)用戶主菜單的查詢訂單窗口w_userstatis,將用戶統計dw_statuser放到窗口裡,在窗口中過過濾器篩選中用戶自己的訂單信息,一打開就可以看到自己的訂單信息,可列印和預覽結果,窗口代碼如下:
用戶統計dw_statuser數據窗口如下:
「預覽」「退出」按鈕略
(16)用戶主菜單中的修改用戶信息窗口w_usermodify,打開會先顯示出你的信息,而用戶名這一欄是輸入不了的,也就是不能修改用戶名,窗口代碼如下:
「保存」按鈕代碼如下:
(17)用戶主菜單中的更改登錄和退出系統的代碼和管理員的一樣,這里就省略了。
7.3系統使用結果
打開本系統,首先彈出歡迎界面,通常一閃而過,然後到了登錄界面,點擊「注冊」
按確定後,彈出「恭喜,您已注冊成功!」的對話框。如果這時刷新服務管理器,打開SQL Server企業管理器,打開該資料庫的用戶表,就可看到剛才注冊的用戶已經在表中了
然後返回到登陸頁面,輸入剛才注冊到的用戶名和密碼maishning,123456
登錄後,彈出一個窗口,有供用戶使用的菜單,界面顯示「~~~~,歡迎使用本系統」
選擇「訂閱」菜單,在這個訂閱界面,用戶可以瀏覽到所有的報刊信息,要訂閱報刊時,用戶不需輸入用戶名與密碼,只需輸入您要訂閱的報刊代號(該報刊代號必須是報刊表中存在的),訂閱份數(必須是小於8的整數才有效),然後選擇需要訂閱的月數(一月、一季、半年或一年)然後點擊「訂閱」按鈕
訂閱成功後,系統彈出「恭喜!你已成功訂閱該報刊,總金額是~~~~」確定後會顯示出您所訂閱的總額是多少元,按「清空」按鈕後可以訂閱其它報刊(同樣的報刊不可重復訂閱)
再訂閱其它報刊,然後按「退出」按鈕,來到用戶主菜單然後選擇「查詢」菜單,這個數據窗口經過過濾,一打開就直接顯示該用戶過訂閱的訂單,可以進行預覽和列印。
由於許可權的限制,「統計」菜單中的也是只能統計自己訂單信息的數據
在「退訂」報刊菜單中,可以查看自己的訂單,單擊「退訂」然後「保存」即可完成退訂
在「修改」信息菜單中,用戶名也是不可輸入的文本框,即不可修改用戶名,其它信息可以修改,保存後它會自動添加到資料庫中
選擇菜單上的「注銷」,可以用不同的身份進入系統,確定後回到登錄界面
以管理員的身份登錄,用戶名111,密碼111,按登錄按鍵,可看到管理員菜單
選擇菜單欄中的錄入->錄入報刊信息,管理員可以大致瀏覽所有報刊信息,在上面的數據窗口可以查看上一頁和下一頁的具體內容,並且可以對其進行添加,刪除、修改、保存等操作。
錄入用戶信息頁面,基本相似
選擇菜單欄中的「查詢」->「訂單信息」,管理員擁有的許可權可以看到所有的訂單信息
管理員也可以根據需要分別按部門、按用戶、按報刊查詢,比如,要查詢msishning用戶,在文本框中輸入關鍵字,選擇單選按鈕中的「按部門號」,點擊「查詢」,結果如下
可對全部訂單或查詢出來的訂單進行預覽和列印,方便使用
菜單欄中的「統計」菜單有三個子菜單,管理員可以分別統計用戶訂單信息、部門訂單信息和報刊訂單信息, 直接選擇就可看到統計結果,比如選擇「統計用戶訂單信息」
可將統計出來的結果進行預覽和列印,方便使用,其它兩個統計功能相似,略
主菜單中的系統維護->資料庫備份,選擇備份的位置,然後「開始備份」
主菜單中的系統維護->資料庫恢復,選擇之前備份的文件,輸入路徑和資料庫名,然後「開始恢復」
7.4系統評價:
Ⅶ 資料庫課程的內容有那些
本課程主要介紹數據結構原理,內容有:1. 緒論;2. 三種主要數據模型;3. 關系資料庫標准語言、關系系統及其查詢優化;4. 關系數據理論;5. 資料庫設計;6. 資料庫維護;7. 資料庫管理系統;8. 分布式資料庫系統;9. 計算機網路的安全等。
資料庫課程設計是在學生系統的學習了資料庫原理課程後,按照關系型資料庫的基本原理,綜合運用所學的知識,以小組為單位,設計開發一個小型的資料庫管理系統。通過對一個實際問題的分析、設計與實現,將原理與應用相結合,使學生學會如何把書本上學到的知識用於解決實際問題,培養學生的動手能力;另一方面,使學生能深入理解和靈活掌握教學內容。
總體設計要求:
四到五人為一個小組,小組成員既要有相互合作的精神,又要分工明確。每個學生都必須充分了解整個設計的全過程。
從開始的系統需求分析到最後的軟體測試,都要有詳細的計劃,設計文檔應按照軟體工程的要求書寫。
系統中的數據表設計應合理、高效,盡量減少數據冗餘。
軟體界面要友好、安全性高。
軟體要易於維護、方便升級。
編程語言可由小組根據自己的情況選擇,但一般情況下應該是小組的每個成員都對該語言較熟悉。避免把學習語言的時間放在設計期間。
參考使用的語言有:VF、VB、Delphi 、PB、VC、SQL_Server等。
學生學籍管理系統
一、設計目的
學生根據所學的資料庫原理與程序設計的知識,能夠針對一個小型的資料庫管理系統,進行系統的需求分析,系統設計,資料庫設計,編碼,測試等,完成題目要求的功能,從而達到掌握開發一個小型資料庫的目的。
二、設計內容
1.主要的數據表
學生基本情況數據表,學生成績數據表,課程表,代碼表等。
2.主要功能模塊
1)實現學生基本情況的錄入、修改、刪除等基本操作。
2)對學生基本信息提供靈活的查詢方式。
3)完成一個班級的學期選課功能。
4)實現學生成績的錄入、修改、刪除等基本操作。
5)能方便的對學生的個學期成績進行查詢。
6)具有成績統計、排名等功能。
7)具有留級、休學等特殊情況的處理功能。
8)能輸出常用的各種報表。
9)具有數據備份和數據恢復功能。
三、設計要求
學生成績表的設計,要考慮到不同年級的教學計劃的變化情況。
對於新生班級,應該首先進行基本情況錄入、選課、然後才能進行成績錄入。
圖書管理系統
一、設計目的
學生根據所學的資料庫原理與程序設計的知識,能夠針對一個小型的資料庫管理系統,進行系統的需求分析,系統設計,資料庫設計,編碼,測試等,完成題目要求的功能,從而達到掌握開發一個小型資料庫的目的。
二、設計內容
1.要的數據表
圖書基本信息表,借書卡信息表,借閱信息表,圖書分類信息表,代碼表等。
2.功能模塊
1)圖書基本情況的錄入、修改、刪除等基本操作。
2)辦理借書卡模塊。
3)實現借書功能。
4)實現還書功能。
5)能方便的對圖書進行查詢。
6)對超期的情況能自動給出提示信息。
7)具有數據備份和數據恢復功能。
三、設計要求
圖書編號可參考國家統一的圖書編碼方法,再完成基本功能模塊的情況下,盡量使系統能具有通用性。
銀行儲蓄系統
一、設計目的
學生根據所學的資料庫原理與程序設計的知識,能夠針對一個小型的資料庫管理系統,進行系統的需求分析,系統設計,資料庫設計,編碼,測試等,完成題目要求的功能,從而達到掌握開發一個小型資料庫的目的。
二、設計內容
1.主要的數據表
定期存款單,活期存款帳,存款類別代碼表等。
2.功能模塊
1)實現儲戶開戶登記。
2)辦理定期存款帳。
3)辦理定期取款手續。
4)辦理活期存款帳
5)辦理活期取款手續。
6)實現利息計算。
7)輸出明細表。
8)具有數據備份和數據恢復功能。
三、設計要求
要進行實際調研,系統功能在實現時參照實際的儲蓄系統的功能。同時要考慮銀行系統數據的安全與保密工作。數據要有加密功能。
設備管理系統
一、設計目的
學生根據所學的資料庫原理與程序設計的知識,能夠針對一個小型的資料庫管理系統,進行系統的需求分析,系統設計,資料庫設計,編碼,測試等,完成題目要求的功能,從而達到掌握開發一個小型資料庫的目的。
二、設計內容
1.主要數據表
設備明細帳表,設備使用單位代碼表,國家標准設備分類表等。
2.功能模塊
1)實現設備的錄入、刪除、修改等基本操作。
2)實現國家標准設備代碼的維護。
3)能夠對設備進行方便的檢索。
4)實現設備折舊計算。
5)能夠輸出設備分類明細表。
6)具有數據備份和數據恢復功能。
三、設計要求
具體設備編碼參考國家統一編碼方法,功能實現也要考慮通用性。
醫院葯品進銷存系統
Ⅷ 資料庫程序設計主要是學什麼
資料庫是軟體學科的專業課程之一,軟體專業需要學的有:
操作系統、數據結構、軟體工程、資料庫原理等。
其中資料庫原理是最核心的課程之一。從應用角度上講,軟體=程序+數據,資料庫是軟體的一部分,軟體運行時需要的數據組織在一起,使用專門的資料庫管理系統進行管理。
大型軟體的開發一般分為軟體(程序)設計、資料庫設計。資料庫設計主要完成數據建模、數據結構定義、查詢優化等。
Ⅸ 急!求個資料庫課程的設計!!
《資料庫原理及應用》課程設計
資料庫原理課程設計任務書
一、目的
1. 掌握計算機管理信息系統設計的一般方法,主要包括系統分析、系統設計的組織和實施。
2. 關系型資料庫管理系統的編程技術,並能獨立完成一般小系統的程序設計、調試運行等工作。
3. 培養把所學知識運用到具體對象,並能求出解決方案的能力。
二、任務(任選其一)
A.運用關系型資料庫管理系統,實現本院圖書館管理信息系統。具體要求如下:
—圖書、資料的登記、注銷和查詢。
—借書證管理,包括申請、注銷借書證,查詢借書證持有人等。
—借還圖書、資料的登記、超期處理,超期拒借等。
—圖書、資料查詢,借、還圖書和資料情況查詢。
—圖書、資料借閱情況的統計分析,拒此作為圖書館圖書、資料訂夠的依據之一。(本項不作為基本要求)
B. 運用關系型資料庫管理系統,實現服務電話管理系統
向客戶現場派技術人員的服務公司可以用服務電話管理系統跟蹤客戶、員工、工作訂單、發票、付款等等。
要求:
資料庫要存儲以下信息:
—客戶信息
—客戶工需單信息
—完成工需單所需人工
—完成工需單所需部件
—部件信息
—付款信息
—雇員信息
完成的功能:
—輸入/查看 客戶工需單信息
—輸入/查看部件、雇員等其它信息
—付款
—列印發票等
三、結果形式
1. 設計報告:含E-R圖、數據字典、關系模式、關系實例、查詢描述、關系代數、SQL實現的查詢語言及查詢結果。
2. 上機實現。
四、考核
1. 課程設計態度(20分)。
2. 遞交的書面材料(40分)。
3. 上機運行情況(40分)
目錄
1.問題描述 2
1.1背景 2
1.2數據需求 2
1.3事物需求 3
1.4關系模式 3
2.方案圖表設計 3
2.1 E-R圖 3
2.2數據流程圖 8
2.3數據字典 9
2.4關系圖: 11
3.資料庫源代碼 12
3.1資料庫建立 12
3.2數據初始化 14
4.結果數據處理 17
4.1單表查詢 17
4.2超期處理 19
4.3還書操作 20
4.4借書操作 22
4.5書籍狀態 24
4.6讀者狀態 24
5.結束語 26
5.1課程設計心得 26
1.問題描述
1.1背景
隨著圖書館規模的不斷擴大,圖書數量也相應的增加,有關圖書的各種信息量也成倍增加,面對著龐大的信息量,傳統的人工方式管理會導致圖書館管理上的混亂,人力與物力過多浪費,圖書館管理費用的增加,從而使圖書館的負擔過重,影響整個圖書館的運作和控制管理,因此,必須制定一套合理、有效,規范和實用的圖書管理系統,對圖書資料進行集中統一的管理。
另一方面,IT產業和Internet獲得了飛速發展,計算機應用已滲透到了各個領域,引起信息管理的革命,實現了信息的自動化處理,提高了處理的及時性和正確性。
提高圖書管理工作效率,作到信息的規范管理,科學統計和快速查詢,讓圖書館更好的為學校,社會服務。
1.2數據需求
圖書館管理信息系統需要完成功能主要有:
1. 讀者基本信息的輸入,包括借書證編號、讀者姓名、讀者性別。
2.讀者基本信息的查詢、修改,包括讀者借書證編號、讀者姓名、讀者性別等。
3.書籍類別標準的制定、類別信息的輸入,包括類別編號、類別名稱。
4.書籍類別信息的查詢、修改,包括類別編號、類別名稱。
5.書籍庫存信息的輸入,包括書籍編號、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、登記日期。
6.書籍庫存信息的查詢,修改,包括書籍編號、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期登記日期等。
7.借書信息的輸入,包括讀者借書證編號、書籍編號、借書日期。
8.借書信息的查詢、修改,包括借書證編號、讀者編號、讀者姓名、書籍編號、書籍名稱、借書日期等。
9.還書信息的輸入,包括借書證編號、書籍編號、還書日期。
10.還書信息的查詢和修改,包括還書讀者借書證編號、讀者姓名、書籍編號、書籍名稱、借書日期、還書日期等。
11.超期還書罰款輸入,還書超出期限包括超出期限還書的讀者借書證號,書籍編號,罰款金額。
12.超期還書罰款查詢,刪除,包括讀者借書證編號、讀者姓名、書籍編號、書籍名稱,罰款金額等
1.3事物需求
(1)在讀者信息管理部分,要求:
a.可以查詢讀者信息。
b.可以對讀者信息進行添加及刪除的操作。
(2 )在書籍信息管理部分,要求:
a.可以瀏覽書籍信息,要求:
b.可以對書籍信息進行維護,包括添加及刪除的操作。
(3)在借閱信息管理部分,要求:。
a.可以瀏覽借閱信息。
b.可以對借閱信息進行維護操作。
(4)在歸還信息管理部分,要求:
a.可以瀏覽歸還信息
b.對歸還信息可修改維護操作
(5)在管理者信息管理部分,要求:
a.顯示當前資料庫中管理者情況。
b.對管理者信息維護操作。
(6)在罰款信息管理部分,要求:
a.可以瀏覽罰款信息
b.對罰款信息可以更新
1.4關系模式
(一) 書籍類別(種類編號,種類名稱)
(二) 讀者(借書證編號,讀者姓名,讀者性別,讀者種類,登記時期)
(三) 書籍(書籍編號,書籍名稱,書籍類別,書記作者,出版社名稱,出版日期,登記日期)
(四) 借閱(借書證編號,書籍編號,讀者借書時間)
(五) 還書(借書證編號,書籍編號,讀者還書時間)
(六) 罰款(借書證編號,讀者姓名,借書證編號,書籍編號,讀者借書時間)
以上通過關系代數方法的進行運算得到所需要的結果,在實驗結果中可以看到。
2.方案圖表設計
2.1 E-R圖
根據1)所要實現的功能設計,可能建立它們之間的關系,進而實現邏輯結構功能。
圖書管理信息系統可以劃分的實體有:書籍類別信息實體、讀者信息實體、書籍信息實體、借閱記錄信息實體,歸還記錄信息實體。用E-R圖一一描述這些實體。
2.1.1類別實體E-R圖:
圖2-1類別實體E-R圖
2.1.2讀者信息實體E-R圖:
圖2-2 讀者信息實體E-R圖
2.1.3信息實體E-R圖:
圖2-3信息實體E-R圖
2.1.4.記錄信息實體E-R圖:
圖2-4 記錄信息實體E-R圖
2.1.5記錄信息實體E-R圖:
圖2-5記錄信息實體E-R圖
2.1.6罰款信息實體E-R圖:
圖2-6罰款信息實體E-R圖
2.1.6總的信息實體E-R圖:
圖2-7總的信息實體E-R圖
2.2數據流程圖
D5
歸還信息錄入 基本信息錄入
D2
D1
基本信息錄入 基本信息錄入
D3
D4
借閱信息錄入
讀者信息返回 書籍信息返回
圖2-7系統的數據流程圖
2.3數據字典
表2-1 book_sytle 書籍類別信息表
表中列名 數據類型 可否為空 說明
bookstyleno varchar not null(主鍵) 種類編號
bookstyle Varchar not null 種類名稱
表2-2 system_readers讀者信息表格
表中列名 數據類型 可否為空 說明
readerid varchar not null(主鍵) 讀者借書證號
readername varchar not null 讀者姓名
readersex varchar not null 讀者性別
readertype varchar null 讀者種類
regdate datetime null 登記日期
表2-3 system_book書籍信息表
表中列名 數據類型 可否為空 說明
bookid Varchar Not null(主鍵) 書籍編號
bookname Varchar Not null 書籍名稱
bookstyle Varchar Not null 書籍類別
bookauthor Varchar Not null 書籍作者
bookpub Varchar Null 出版社名稱
bookpubdate Datetime Null 出版日期
bookindate Datetime Null 登記日期
isborrowed Varchar Not Null 是否被借出
表2-4 borrow_record 借閱記錄信息表
表中列名 數據類型 可否為空 說明
readerid Varchar Not null(外主鍵) 讀者借閱證編號
bookid Varchar Not null(外主鍵) 書籍編號
borrowdate Varchar Not null 讀者借書時間
表2-5 return_record 借閱記錄信息表
表中列名 數據類型 可否為空 說明
readername Varchar Not null(外主鍵) 讀者借閱證編號
readerid Varchar Not null(外主鍵) 書籍編號
returndate datetime Not null 讀者還書時間
表2-6 reader_fee 罰款記錄信息表
readerid varchar Not null 讀者借書證編號
readername varchar Not null 讀者姓名
bookid varchar Not null(外主鍵) 書籍編號
bookname varchar Not null 書籍名稱
bookfee varchar Not Null 罰款金額
borrowdate datetime Not Null 借閱時間
2.4關系圖:
圖2-8資料庫存表關系圖
3.資料庫源代碼
3.1資料庫建立
3.1.1創建資料庫
USE master
GO
CREATE DATABASE librarysystem
ON
( NAME = librarysystem,
FILENAME = 'd:\librarysystem.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = 'library',
FILENAME = 'd:\librarysystem.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
GO
3.1.2書本類別表建立
create table book_style
(
bookstyleno varchar(30) primary key,
bookstyle varchar(30)
)
3.1.3創建書庫表
create table system_books
(
bookid varchar(20) primary key,
bookname varchar(30) Not null,
bookstyleno varchar(30) Not null,
bookauthor varchar(30),
bookpub varchar(30) ,
bookpubdate datetime,
bookindate datetime ,
isborrowed varchar (2) ,
foreign key (bookstyleno) references book_style (bookstyleno),
)
3.1.4借書證表建立
create table system_readers
( readerid varchar(9)primary key,
readername varchar(9)not null ,
readersex varchar(2) not null,
readertype varchar(10),
regdate datetime
)
3.1.5借書記錄表建立
create table borrow_record
( bookid varchar(20) primary key,
readerid varchar(9),
borrowdate datetime,
foreign key (bookid) references system_books(bookid),
foreign key (readerid) references system_readers(readerid),
)
3.1.6還書記錄表建立
create table return_record
( bookid varchar(20) primary key,
readerid varchar(9),
returndate datetime,
foreign key (bookid) references system_books(bookid),
foreign key (readerid) references system_readers(readerid)
)
3.1.7罰款單表建立*/
create table reader_fee
( readerid varchar(9)not null,
readername varchar(9)not null ,
bookid varchar(20) primary key,
bookname varchar(30) Not null,
bookfee varchar(30) ,
borrowdate datetime,
foreign key (bookid) references system_books(bookid),
foreign key (readerid) references system_readers(readerid)
)
3.2數據初始化
3.2.1將書籍類別加入表book_style中
insert into book_style(bookstyleno,bookstyle)values('1','人文藝術類')
insert into book_style(bookstyleno,bookstyle)values('2','自然科學類')
insert into book_style(bookstyleno,bookstyle)values('3','社會科學類')
insert into book_style(bookstyleno,bookstyle)values('4','圖片藝術類')
insert into book_style(bookstyleno,bookstyle)values('5','政治經濟類')
insert into book_style(bookstyleno,bookstyle)values('6','工程技術類')
insert into book_style(bookstyleno,bookstyle)values('7','語言技能類')
3.2.2將已有的圖書加入system_books表中(定義相同的作者出版社的書本編號不一樣)
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )
values('00125415152','計算機組成原理','6','王愛英','清華大學出版社','2001-01-03','2003-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )
values('00125415153','計算機組成原理','6','王愛英','清華大學出版社','2001-01-03','2003-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('00456456','資料庫原理','6','薩師煊','高等教育出版社','2007-07-02','2007-09-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )
values('12215121','C程序設計','6','譚浩強','清華大學出版社','2002-04-02','2004-03-14','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('9787308020558','計算機體系結構','6','石教英','浙江大學出版社','2004-10-03','2006-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('45456141414','數據結構(C語言版)','6','吳偉民,嚴蔚敏','清華大學出版社','2002-06-28','2004-01-21','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('5455515','中華歷史5000年','1','吳強','北京大學出版社','2005-04-03','2006-05-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('015115','古代埃及','3','趙文華','北京大學出版社','2001-02-02','2002-09-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('1514514','日本文化','1','吳小鵬','北京大學出版社','2002-04-02','2004-03-14','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('15154656','微觀經濟學','5','李小剛','北京大學出版社','2000-10-03','2001-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('5658','影視文學','4','蘇慶東','北京大學出版社','1999-02-28','2000-01-21','1');
insert into
system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('565800020','探索宇宙奧秘','2','蘇慶東','北京大學出版社','1999-02-28','2000-01-21','1');
3.2.3將已有圖書證的讀者加入system_readers表中*/
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620207','陳遠鵬','男','學生','2005-9-23 14:23:56')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620206','陳特','男','學生','2005-09-30 13:24:54.623')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620204','趙銘靜','女','學生','2005-09-27 11:24:54.123')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620202','潘虹','女','學生','2005-09-30 13:24:54.473')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('008415','蔣偉','男','教師','2004-04-30 09:24:54.478')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('001456','李葉風','女','教師','2004-04-30 09:24:54.478')
3.2.4添加已借書讀者的記錄,同時將在已借出的借閱標記置0*/
insert into borrow_record(bookid,readerid,borrowdate)
values('00125415152','X05620202','2007-09-27 11:24:54.123')
update system_books
set isborrowed=0
where bookid='00125415152'
insert into borrow_record(bookid,readerid,borrowdate)
values('00125415153','X05620206','2007-12-27 08:26:51.452')
update system_books
set isborrowed=0
where bookid='00125415153' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('5455515','X05620207','2007-12-27 08:26:51.452')
update system_books
set isborrowed=0
where bookid='5455515' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('015115','X05620204','2007-10-21 12:11:51.452')
update system_books
set isborrowed=0
where bookid='015115' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('15154656','001456','2007-12-28 14:11:51.312')
update system_books
set isborrowed=0
where bookid='15154656' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('565800020','008415','2007-08-28 15:11:31.512')
update system_books
set isborrowed=0
where bookid='565800020' and isborrowed='1'
4.結果數據處理
4.1單表查詢
4.1.1表book_style中查詢演示:
圖4-1 表book_style中內容
4.1.2表system_books中查詢演示:
圖4-2 表system_books中內容
4.1.3將已有圖書證的讀者加入system_readers表中結果查詢:
圖4-3 表system_readers中內容
4.1.4借書紀錄表borrow_record結果查詢:
圖4-4 表borrow_record中內容
4.2超期處理
4.2.1現在對已有借書證的讀者進行查詢借書是否超期(這里歸定30天):
說明:當前的getdate()以日期為2008年1月6日計算
圖4-4 選出借出超過30天的讀者
4.2.2同時也可以用語句超過天數的讀者進行罰款,加入到罰款單裡面,一天以0.3元扣除計算:
SQL語言:
insert into reader_fee(readerid,readername,bookid,bookname,bookfee,borrowdate)
select system_readers.readerid 讀者借書證編號 ,readername 讀者姓名,
system_books.bookid 書籍編號,bookname 書名,
0.3*(Datediff(day,convert(smalldatetime,borrowdate),getdate())-30) 超過時間天數,
borrowdate 借書時間
from borrow_record ,system_readers ,system_books
where system_readers.readerid=borrow_record.readerid
and system_books.bookid=borrow_record.bookid
and Datediff(day,convert(smalldatetime,borrowdate),getdate())>=30
(所影響的行數為 3 行)
select readerid 書讀者借書證編號,readername 讀者姓名,
bookid 書籍編號,bookfee 超期罰款
from reader_fee
形成各本書對應的罰款金額,按0.3元每天算
圖4-5查看罰款單
4.3還書操作
4.3.1現在對某一讀者進行還書操作:
1.首先還書要在還書紀錄中添加一條還書紀錄
2.其次刪除相應書本的借閱紀錄
3.最後在書庫中標記該本書為1,表示歸還了未借,可供其他讀者借閱
說明:學號為X05620207 姓名為陳遠鵬 借閱的565800020書籍編號進行歸還。
SQL語言:
insert into return_record(bookid,readerid,returndate)
select bookid,readerid,getdate()
from borrow_record
where bookid='565800020'
(所影響的行數為 1 行)
delete
from borrow_record
where bookid='565800020'
(所影響的行數為 1 行)
update system_books
set isborrowed=1
where bookid='565800020'
(所影響的行數為 1 行)
三個表的結果如圖:
圖4-6 增加了565800020紀錄
圖4-7 565800020這本書在借書紀錄里沒有了
圖4-8 標記設為了『1』
說明:這本書重新回到未被借出標記為1(注,相同的書其編號是不同的)
其結果為還書成功,相應的各表都有變化,對於罰款單通過借閱記錄表borrow_record中更新。
4.4借書操作
4.4.1查詢未被借出的書本:
圖4-9
4.4.2查詢已被借出的書本:
圖4-10
4.4.3申請借書證:
SQL語言:
Insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620211','小華','男','學生',getdate())
圖4-11
說明:查詢相應的紀錄增加了小華這樣一個讀者的借書證紀錄:
4.4.4注銷借書證:
說明:
1.在注銷之前執行所有的還書過程,就是上面寫到的所述SQL語句,然後執行
delete from system_readers where readerid=' X05620211',
2.小華借書證紀錄就被刪除了,同時要刪除和小華歸還紀錄的內容
delete from return_record where readerid=' X05620211',
4.4.5查詢所有書所對應的類別:
圖4-12
4.5書籍狀態
4.5.1查詢所有工技術類的書:
圖4-13
4.5.2查詢清華大學出版社出版的書:
圖4-14
4.6讀者狀態
4.6.1查詢什麼人借了什麼書:
SQL語言:
select readername 讀者姓名,bookname 書籍名稱
from borrow_record,system_books,system_readers
where system_readers.readerid=borrow_record.readerid
and system_books.bookid=borrow_record.bookid
圖4-15
4.6.2指定潘虹借了什麼書:
SQL語言:
select readername 讀者姓名,bookname 書籍名稱
from borrow_record,system_books,system_readers
where system_readers.readerid=borrow_record.readerid
and system_books.bookid=borrow_record.bookid
and readername='潘虹'
圖4-16
5.結束語
5.1課程設計心得
通過此次資料庫的課程設計,真正達到了學與用的結合,增強了對資料庫方面應用的理解,對自己今後參與開發資料庫系統積累了不少經驗,在實驗過程中,從建立數據開始,對靈據庫設計理念及思想上有更高的認識,從需求分析,到概念設計和邏輯設計,E-R圖的表示,數據字典的創建,懂得了不少有關資料庫開發過程中的知識,在實驗中建表,及其關系模式,關系代數的建立及理解,將SQL語的查詢語句用得淋漓盡致,增強了自己在資料庫中應用SQL語言的靈活性,其中包括,插入、刪除、修改、查詢,牽涉表和表之間的聯系,主建與外主鍵的定義,約束項的設置,使邏輯更嚴密,在學習過程中,我也能過上網查了不少資料,也看了一些別人設計的圖書館管理信息系統的設計報告,學以致用,自我創新,獨立完成了這份自己的報告,從中在學到用,從用又到學,不斷修改,系統更新。雖然不能達到完善系統,但也做到了盡善盡美,加強理論學習對完善系統會有很多幫助,不管怎麼說,對這次做的課程設計自己覺得還算滿意。
Ⅹ Access 資料庫與程序設計的中國鐵道出版社出版圖書
書名:Access資料庫程序設計(第三版)
套系名稱:高職高專計算機系列規劃教材
書號:978-7-113-13893-6
版次:3-5
開本:16開
頁碼:364頁
作者:張成叔
出版時間:2012-01-01
定價:39 元
適用專業:計算機相關專業
出版社:中國鐵道出版社 本書是根據《高等職業教育「資料庫應用」課程教學大綱》、《全國計算機等級考試(NCRE)二級Access資料庫程序設計考試大綱》和《全國計算機等級考試(NCRE)二級公共基礎知識考試大綱》的要求,在張成叔主編的《Access資料庫程序設計》(第二版)(中國鐵道出版社,2010年版)的基礎上,對第一版和第二版的內容再次優化整合而成。
本書分為「理論、實訓、公共基礎」3部分,以「學生成績管理系統」和「圖書管理系統」的設計、開發為具體項目,引導讀者邊學習、邊實踐,掌握Access資料庫及其應用系統的設計與開發。本書理念先進、結構完整、深入淺出、可讀性好、可操作性強。
本書適合作為高職高專院校學生學習「資料庫應用」課程及資料庫相關課程的教材,也可作為廣大參加全國計算機等級考試(NCRE)二級Access資料庫程序設計的讀者的參考書。 理 論 部 分
第1章 Access基礎1
1.1 資料庫基礎知識1
1.1.1 計算機數據管理的發展1
1.1.2 資料庫系統2
1.1.3 數據模型4
1.2 關系資料庫5
1.2.1 關系數據模型5
1.2.2 關系運算7
1.3 啟動和退出Access7
1.4 Access簡介8
1.4.1 Access發展概述8
1.4.2 Access的系統結構9
1.4.3 Access的用戶界面10
小結11
習題一11
第2章 資料庫14
2.1 設計資料庫14
2.1.1 設計原則14
2.1.2 設計步驟14
2.2 創建資料庫16
2.2.1 建立一個空資料庫17
2.2.2 利用向導創建資料庫18
2.3 資料庫的基本操作19
2.3.1 資料庫的打開19
2.3.2 資料庫的關閉19
2.3.3 資料庫的備份20
2.3.4 資料庫的壓縮和修復20
小結20
習題二20
第3章 表22
3.1 Access數據類型22
3.1.1 基本概念22
3.1.2 數據類型23
3.2 創建表26
3.2.1 建立表結構26
3.2.2 向表中輸入數據28
3.2.3 設置欄位屬性29
3.2.4 建立表之間的關系34
3.3 維護表36
3.3.1 打開和關閉表36
3.3.2 修改表的結構36
3.3.3 編輯表的內容38
3.3.4 調整表的外觀39
3.4 操作表42
3.4.1 查找數據42
3.4.2 替換數據43
3.4.3 排序記錄43
3.4.4 篩選記錄44
3.5 導入/導出表46
3.5.1 數據的導入46
3.5.2 數據的導出47
小結48
習題三48
第4章 查詢52
4.1 認識查詢52
4.1.1 查詢的功能52
4.1.2 查詢的類型53
4.1.3 查詢的條件53
4.2 創建選擇查詢57
4.2.1 簡單查詢向導57
4.2.2 在設計視圖中創建條件
查詢58
4.2.3 在設計視圖中創建總計
查詢61
4.3 創建參數查詢62
4.3.1 單參數查詢63
4.3.2 多參數查詢65
4.4 創建交叉表查詢66
4.4.1 認識交叉表查詢66
4.4.2 創建交叉表查詢66
4.5 創建操作查詢68
4.5.1 認識操作查詢68
4.5.2 生成表查詢68
4.5.3 追加查詢69
4.5.4 更新查詢70
4.5.5 刪除查詢71
4.6 SQL查詢72
4.6.1 使用SQL修改查詢中的
准則72
4.6.2 SQL基礎知識73
4.6.3 創建SQL查詢76
小結78
習題四78
第5章 窗體84
5.1 窗體基礎知識84
5.1.1 窗體的概念84
5.1.2 窗體的視圖84
5.1.3 窗體的組成85
5.1.4 窗體的類型85
5.2 創建窗體87
5.2.1 自動創建窗體87
5.2.2 使用「窗體向導」88
5.2.3 使用「數據透視表向導」90
5.2.4 使用圖表向導91
5.3 自定義窗體92
5.3.1 工具欄92
5.3.2 工具箱93
5.3.3 窗體中的控制項94
5.3.4 控制項的用法96
5.3.5 窗體和控制項的屬性103
5.3.6 窗體和控制項的事件106
5.4 美化窗體106
5.4.1 使用自動套用格式107
5.4.2 添加當前日期和時間107
5.4.3 對齊窗體中的控制項107
小結108
習題五108
第6章 報表111
6.1 報表基礎知識111
6.1.1 報表的定義和功能111
6.1.2 報表的視圖111
6.1.3 報表的組成112
6.1.4 報表的分類113
6.2 報表的自動創建和向導創建114
6.2.1 利用「自動報表」創建
報表114
6.2.2 利用「報表向導」創建
報表115
6.2.3 利用「圖表向導」創建
報表116
6.2.4 利用「標簽向導」創建
報表117
6.3 報表設計視圖的使用118
6.3.1 報表的設計視圖118
6.3.2 報表的格式設定119
6.3.3 報表中的控制項使用120
6.3.4 創建基於參數查詢的
報表123
6.3.5 創建子報表123
6.3.6 報表的排序和分組125
6.4 預覽和列印報表126
6.4.1 預覽報表126
6.4.2 列印報表127
小結127
習題六128
第7章 數據訪問頁130
7.1 數據訪問頁基礎知識130
7.1.1 數據訪問頁的基本概念130
7.1.2 數據訪問頁面視圖130
7.1.3 數據訪問頁數據源
類型131
7.2 創建數據訪問頁132
7.2.1 自動創建數據訪問頁132
7.2.2 用向導創建數據訪問頁133
7.2.3 用設計視圖創建或修改
數據訪問頁134
7.2.4 利用現有Web頁創建
數據訪問頁135
7.3 編輯數據訪問頁135
7.3.1 為數據訪問頁添加控制項136
7.3.2 美化和完善數據訪問頁137
7.3.3 在數據訪問頁上添加
超鏈接138
7.4 在IE中查看數據訪問頁138
小結138
習題七139
第8章 宏140
8.1 宏的概念140
8.1.1 宏的基本概念140
8.1.2 宏與Visual Basic140
8.1.3 宏向Visual Basic程序代碼
轉換141
8.2 宏的操作141
8.2.1 創建宏141
8.2.2 宏的運行146
8.2.3 宏的調試146
8.2.4 常用宏操作147
小結148
習題八148
第9章 模塊151
9.1 模塊基本概念151
9.1.1 模塊的類型151
9.1.2 模塊的組成152
9.1.3 面向對象程序設計的基本
概念152
9.2 VBA開發環境155
9.2.1 進入VBA編程環境155
9.2.2 VBE窗口156
9.2.3 編寫VBA代碼157
9.3 常量、變數、運算符和表達式158
9.3.1 數據類型和資料庫對象158
9.3.2 常量與變數160
9.3.3 數組162
9.3.4 運算符與表達式163
9.4 常用標准函數165
9.4.1 數學函數166
9.4.2 字元串函數166
9.4.3 類型轉換函數167
9.4.4 日期/時間函數167
9.5 語句和控制結構168
9.5.1 語句概述168
9.5.2 條件結構169
9.5.3 循環結構172
9.6 調用過程及參數傳遞176
9.6.1 過程定義和調用176
9.6.2 參數傳遞178
9.7 常用操作方法179
9.7.1 打開和關閉窗體179
9.7.2 打開和關閉報表180
9.7.3 輸入框181
9.7.4 消息框181
9.7.5 計時事件Timer182
9.7.6 VBA編程驗證數據183
9.8 VBA程序的錯誤處理和調試183
9.8.1 錯誤處理183
9.8.2 調試184
9.9 VBA資料庫編程187
9.9.1 資料庫引擎及其介面187
9.9.2 VBA訪問的資料庫
類型188
9.9.3 資料庫訪問對象
(DAO)188
9.9.4 ActiveX數據對象
(ADO)190
9.9.5 資料庫編程分析197
小結200
習題九201
實 訓 部 分
實訓1 創建資料庫213
實訓1.1 啟動資料庫並使用幫助
系統213
實訓1.2 創建資料庫214
實訓1.3 資料庫的基本操作215
思考及課後練習216
實訓2 表Ⅰ——建立表結構和輸入
數據217
實訓2.1 建立表結構217
實訓2.2 向表中輸入數據218
實訓2.3 設置欄位屬性220
實訓2.4 建立表之間的關系221
思考及課後練習222
實訓3 表Ⅱ——維護、操作、
導入/導出表223
實訓3.1 打開和關閉表223
實訓3.2 修改表的結構223
實訓3.3 編輯表的內容224
實訓3.4 調整表的外觀225
實訓3.5 查找數據226
實訓3.6 替換數據226
實訓3.7 排序記錄226
實訓3.8 篩選記錄227
實訓3.9 導入/導出表229
思考及課後練習229
實訓4 查詢Ⅰ——選擇查詢和參數
查詢230
實訓4.1 使用向導創建選擇查詢230
實訓4.2 使用設計視圖創建選擇
查詢231
實訓4.3 在設計視圖中創建總計
查詢232
實訓4.4 創建單參數查詢232
實訓4.5 創建多參數查詢233
思考及課後練習234
實訓5 查詢Ⅱ——交叉表查詢和操作
查詢235
實訓5.1 創建交叉表查詢235
實訓5.2 創建操作查詢236
思考及課後練習239
實訓6 查詢Ⅲ——SQL查詢240
實訓6.1 數據定義語句240
實訓6.2 數據查詢語句241
實訓6.3 創建聯合查詢和子查詢242
思考及課後練習243
實訓7 窗體Ⅰ——創建窗體245
實訓7.1 利用「自動創建窗體」
創建窗體245
實訓7.2 利用向導創建窗體246
實訓7.3 利用「圖表向導」創建
窗體247
思考及課後練習248
實訓8 窗體Ⅱ——自定義窗體、美化
窗體249
實訓8.1 控制項的使用249
實訓8.2 控制項的布局調整253
思考及課後練習254
實訓9 報表255
實訓9.1 利用向導創建報表255
實訓9.2 創建主/子報表257
思考及課後練習259
實訓10 數據訪問頁260
實訓10.1 創建數據訪問頁260
實訓10.2 編輯數據訪問頁262
思考及課後練習263
實訓11 宏264
實訓11.1 創建和運行宏264
實訓11.2 為命令按鈕創建宏266
思考及課後練習267
實訓12 模塊Ⅰ——條件結構268
實訓12.1 If語句及IIf函數的
使用268
實訓12.2 Switch函數及Select語句
的使用270
思考及課後練習271
實訓13 模塊Ⅱ——循環結構272
實訓13.1 循環結構實訓272
實訓13.2 過程的創建與調用273
思考及課後練習274
實訓14 模塊Ⅲ——對象操作275
實訓14.1 使用和修改對象屬性275
實訓14.2 DoCmd對象的使用276
實訓14.3 設計計時器277
思考及課後練習278
公共基礎部分
第1章 數據結構與演算法基礎279
1.1 演算法的基本概念279
1.1.1 演算法的定義279
1.1.2 演算法的時間復雜度和空間
復雜度280
1.1.3 經典例題解析280
1.2 數據結構的基本概念281
1.2.1 數據結構的定義281
1.2.2 線性結構與非線性結構283
1.2.3 經典例題解析283
1.3 線性表及其順序存儲結構284
1.3.1 線性表的定義284
1.3.2 線性表的順序存儲
結構284
1.3.3 順序表的插入與刪除
運算285
1.3.4 經典例題解析285
1.4 棧和隊列286
1.4.1 棧286
1.4.2 隊列286
1.4.3 經典例題解析287
1.5 線性鏈表288
1.5.1 線性單鏈表的結構及其
基本運算288
1.5.2 線性鏈表的基本運算289
1.5.3 線性雙向鏈表的結構及
其基本運算289
1.5.4 經典例題解析290
1.6 樹和二叉樹290
1.6.1 樹的定義290
1.6.2 二叉樹291
1.6.3 二叉樹的遍歷292
1.6.4 經典例題解析293
1.7 查找技術294
1.7.1 順序查找與二分查找
演算法294
1.7.2 經典例題解析295
1.8 排序技術295
1.8.1 插入排序295
1.8.2 交換排序296
1.8.3 選擇排序297
1.8.4 各種排序演算法比較297
1.8.5 經典例題解析298
小結298
習題一299
第2章 程序設計基礎301
2.1 程序設計方法與風格301
2.1.1 程序設計與編程風格301
2.1.2 經典例題解析301
2.2 結構化程序設計302
2.2.1 結構化程序的基本結構
和特點302
2.2.2 結構化程序的設計原則
和方法303
2.2.3 經典例題解析303
2.3 面向對象的程序設計方法303
2.3.1 面向對象的方法303
2.3.2 面向對象的基本概念304
2.3.3 經典例題解析305
小結306
習題二306
第3章 軟體工程基礎308
3.1 軟體工程基本概念308
3.1.1 軟體的定義與軟體的
特點308
3.1.2 軟體危機與軟體工程309
3.1.3 軟體工程過程309
3.1.4 軟體生命周期309
3.1.5 軟體工程的目標與
原則310
3.1.6 軟體開發工具與軟體開發環境311
3.1.7 經典例題解析311
3.2 結構化分析方法312
3.2.1 可行性研究312
3.2.2 需求分析和需求分析
方法313
3.2.3 結構化分析方法及其常用
工具313
3.2.4 結構化方法開發過程314
3.2.5 軟體需求規格說明書315
3.2.6 經典例題解析315
3.3 結構化設計方法316
3.3.1 軟體設計的基本概念316
3.3.2 概要設計317
3.3.3 面向數據流的設計方法317
3.3.4 詳細設計318
3.3.5 經典例題解析319
3.4 軟體測試320
3.4.1 軟體測試的目的和原則320
3.4.2 軟體測試的技術與方法320
3.4.3 軟體測試的實施321
3.4.4 經典例題解析322
3.5 程序的調試323
3.5.1 程序調試的基本概念323
3.5.2 程序的靜態調試與動態
調試324
3.5.3 常見的軟體動態調試的
方法324
3.5.4 軟體的維護324
3.5.5 經典例題解析325
小結326
習題三326
第4章 資料庫設計基礎329
4.1 資料庫的基本概念329
4.1.1 信息、數據、資料庫329
4.1.2 資料庫管理系統330
4.1.3 資料庫系統331
4.1.4 經典例題解析332
4.2 數據模型333
4.2.1 數據模型概述333
4.2.2 實體間的聯系334
4.2.3 實體-聯系模型334
4.2.4 基本數據類型335
4.2.5 經典例題解析335
4.3 關系代數運算336
4.3.1 關系代數336
4.3.2 關系模型的基本運算338
4.3.3 經典例題解析338
4.4 資料庫設計方法和步驟339
4.4.1 資料庫設計概述339
4.4.2 資料庫設計的需求
分析339
4.4.3 資料庫的概念設計339
4.4.4 資料庫的邏輯設計340
4.4.5 資料庫的物理設計340
4.4.6 資料庫的實施與維護340
4.4.7 經典例題解析341
小結341
習題四341
附錄A 全國計算機等級考試簡介346
參考文獻350