目錄
摘要
第一章緒論
1.1 目的
1.2 背景
1.3 研究內容
第二章資料庫需求分析
2.1 通訊錄系統的功能
2.2 通訊錄系統的資料流
2.3 通訊錄系統資料流程圖
2.4 通訊錄的資料字典
第三章資料庫概念結構設計
3.1 物體
3.2 物體間包括
3.3 物體屬性圖
3.4 區域 E-R 圖
第四章資料庫邏輯設計
4.1 E-R 圖轉化而得到的關系模式
4.2 由關系模式轉換得到的函式依賴
4.3 關系模式優化
4.4 對優化后的關系模式的結構
第五章資料庫實施
5.1 資料庫創建代碼
5.2 資料庫表創建代碼
5.2.1 用戶表
5.2.2 聯系人表
5.2.3 分組表
5.3 視圖創建代碼
5.4 存盤程序代碼創建
第六章資料庫運行和維護
6.1 登陸模塊
6.2 聯系人界面
6.3 朋友分組界面及詳細查詢
6.4 同學分組界面及詳細查詢
6.5 同事分組界面及詳細查詢
6.6 查詢界面
6.7 增加界面
6.8 修改界面
6.9 洗掉界面
第七章總結
參考文獻
摘要
隨著社會的發展, 人際關系變得越來越重要,為了保持良好的人際關系,必須經常與親戚、朋友、同學、同事保持聯系,但是有時候存在著許多的限制條件,比如怎樣找到交流物件的各種資訊?可能你會想到現實生活中的手機等通訊工具,由于這些工具的單一性,不可能在第一時間找到自己想要的資訊資料,因此,為了能夠快速查找到聯系人的資訊,節省查找時間,開發通訊錄管理系統,
通訊錄管理系統是一個基于 SQL資料庫儲存和JAVA界面 模式的個人通訊錄管理系統,它是將自己的 聯系人的具體資訊集中管理,成為一個方便人們使用的小軟體,在開發程序中主要運用Java, SQL Server 技術,由于開發工具和資料庫之間的良好使用,可以為開發帶來方便,使之成為一個可施行的系統,從而達到開發的目的-----實作對通訊錄資訊的管理,
通過采用相關技術,以及老師的輔導和同學們的幫助,將系統設計的功能全部實作,功能包括:用戶的登錄, 添加聯系人資訊,修改聯系人資訊,洗掉聯系人資訊,查詢聯系人資訊,可以瀏覽全部通訊的聯系人,并且可以根據資料表的各欄位來查詢你所要找的聯系人等功能
關 鍵 詞: T-SQL
第一章 緒論
1.1目的
個人通訊錄是當前每個人不可缺少的資訊系統,目前以紙質通訊錄最為普遍, 手工的資訊管理存在許多弊端,資訊容易丟失、查找費時 、 存盤量有限等,隨著科技的發展與任命生活水平的提高,計算機進入了許多的家庭,作為計算機應用的 一部分,使用計算機對通訊錄進行管理, 著手工管理無法達到的有點,如:檢索循序、查找方便、可靠、性能高、存盤量大、保密性好等,這些有點能夠極大的提高通訊錄管的效率 , 因此,開發一套通訊錄資訊管理軟體很有必要,
1.2背景
隨著互聯網的爆炸發展,人們越來越習慣于利用電腦實作若需的服務,電腦已經影響到人們生活的各個方面,廣泛的人際關系成為一個人重要的資源,
另外,傳統的紙質通訊錄不能滿足一部分現在人的需要而電子通訊錄,由于其不受時間空間的限制同時又具有傳統通訊錄的大部分功能,能夠滿足各類用戶常規的需求,處理大量資訊和聯系方式,而且方便快捷,
1.3研究內容
該系統主要是:用戶登錄和聯系人,和分組部分,為了方便用戶查找自己想要的聯系人資訊,將聯系人按分組類別進行分組,可以按組別查找,也可以按照聯系人關鍵字查找
第二章 資料庫需求分析
2.1 通訊錄系統的功能
通訊錄管理系統功能有:用戶登錄、添加聯系人、修改聯系人、洗掉聯系人、分組資訊的查詢和分組資訊的洗掉,
用戶登錄:實作用戶登錄通訊錄系統,
顯示聯系人:顯示用戶對所有存在資料庫里的聯系人資料的顯示,
查找聯系人:實作用戶在資料庫空中查找自己需要的聯系人的資訊 ,
添加聯系人:實作用戶對新聯系人的添加 以及對聯系人進行分組,
修改聯系人:實作 用戶對已有聯系人的資訊進行修改,然后保存,
分組資訊查詢:方便用戶對聯系人的管理查詢,針對通訊錄中的人進行分組,
分組資訊資料的洗掉:實作用戶對將要洗掉聯系人對類別的分組資訊進行洗掉,
2.2通訊錄系統的資料流
圖1.1資料模塊圖
2.3 通訊錄系統資料流程圖
用戶登錄系統時,資料的流動 如圖:
圖1.2 頂層資料流程圖
通訊錄作業系統的資料流程 如圖1.3.0:
2. 4 通訊錄的資料字典
- 資料項
資料項名 含義 資料
型別 長度 資料項之間的關系
用戶名 用戶的唯一標識 C har 10 通訊錄登錄管理
密碼 對應用戶的標識 C har 10
編號 聯系人唯一的標識 C har 50
姓 - 名 聯系人姓名 C har 50 編號->姓名
性別 聯系人性別 C har 10 編號->性別
出生日期 聯系人出生日期 C har 20 編號->出生日期
電話號碼 聯系人電話號碼 C har 10 編號->電話號碼
E-mail 聯系人e-mail C har 50 編號-> e-mail
分組類別 聯系人的類別 C har 10 編號->分組類別
圖 1.3 0 層資料庫流程圖
2.資料結構
資料結構名 含義說明 組成
用戶表 用戶的登錄資訊 用戶名+密碼
聯系人表 聯系人各項詳細資訊 編號+姓名+性別+電話號碼+出生日期+ E-mail+分組類別
同學分組表 類別為同學聯系人資訊 編號+姓名
朋友分組表 類別為朋友聯系人資訊 編號+姓名
3.資料流
資料流名 說明 資料流來源 資料流去向 組成
登錄 用于登錄通訊錄系統 登錄資料流 通訊錄 用戶名 , 密碼
聯系人資訊 用于查詢、修改、增加、洗掉聯系人資訊 聯系人資料流 聯系人模塊 編號 , 姓名 , 性別 , 電話號碼 , 出生日期 , E- mail, 分組類別
同學分組資訊 用于顯示、查詢、洗掉 同學分組資料流 同學分組模塊、聯系人模 塊 姓名,編號
朋友分組資訊 用于顯示、查詢 朋友分組資料流 朋友分組模塊、聯系人模塊 姓名,編號
4.處理程序
處理程序名 說明 輸入資料流 輸出資料流 處理
登陸界面 用戶登陸的界面 輸入用戶名密碼 進入聯系人界面 登陸成功,進入管理系統;失敗,則顯示密碼錯誤,
聯系人資訊界面 查詢、插入、修改、增加聯系人時的界面 編號 , 姓名 , 性別 , 電話號碼 , 出生日期 , E- mail, 分組類別 進入聯系人界面 查看個聯系人詳細資訊
朋友分組界面 查詢分組類別為朋友的姓名 編號、姓名
分組類別 進入朋友界面 查看分組類別為朋友的姓名
同學分組界面 查詢分組類別為同學的姓名 編號、姓名
分組類別 進入同學界面 查看分組類別為 同學 的姓名
第三章 資料庫概念結構設計
3.1物體
由需求分析的結果可知,本系統設計的物體包括:
(1).用戶登陸資訊:用戶名,密碼,
(2).聯系人詳細星系 : 編號 , 姓名 , 性別 , 電話號碼 , 出生日期 , E- mail, 分組類別,
(3).同學分組資訊:編號,姓名,
(4).朋友分組資訊:編號, 姓名 ,
3.2物體間包括
(1). 每位用戶包括多個聯系人,每個聯系人對應多個用戶,
(2).每位聯系人對應一個分組,一個分組對應多個聯系人,
3.3 物體屬性圖
圖1.1 用戶物體圖
圖1.3 聯系 人物體圖
圖 1. 4 朋友分組物體圖
圖 1. 5 朋友 分組物體圖
3.4 區域E-R 圖
圖 1. 6 登陸 區域E-R圖
圖1. 7 總體 E-R圖
第四章 資料庫邏輯設計
4.1E-R圖轉化而得到的關系模式
(1 ).聯系人 資訊 (編號,姓名,性別,出生日期,電話號碼,E-mail,地址 ,分組類別 ),其主鍵為編號,
(2 ).朋友分組資訊(朋友編號,姓名),其外鍵為 朋友 編號,
(3 ).同學分組資訊(同學編號,姓名),其外鍵為 朋友 編號,
4.2 由關系模式轉換得到的函式依賴
聯系人資訊中,姓名、性別、出生日期、電話號碼、E-mail、地址分組類別都依賴編于編號,朋友分組資訊中姓名依賴于朋友編號,同學分組資訊中,姓名依賴于同學編號
4. 3 關系模式優化
其聯系人 資訊( 編號 ,姓名,性別,出生日期,電話號碼, E-mail,地址 )中都為簡單屬性,因此屬于第一范式,又不存在部分函式依賴為第二范式不存在傳遞依賴,所以,為第三范式,
朋友分組資訊( 朋友編號 ,姓名 ) 中都為簡單屬性,因此是第一范式,且不存在部分函式依賴為第二范式,又不存在傳遞依賴,所以,為第三范式,
同學,分組資訊( 同學編號 ,姓名)中都為簡單屬性,因此是第一凡是,且不存在部分函式依賴為第二范式,又不存在傳遞依賴,所以,為第三范式,
4.4 對優化后的關系模式的結構
表 XXX 聯系人表
資料名 型別 長度 是否為主鍵 能否為空 是否為外鍵 說明
用戶名 C har 30 是 否 否 用戶登錄系統唯一標識
密碼 C har 10 否 否 否 密碼
表 XXX 聯系人表
資料名 型別 長度 是否為主鍵 能否為空 是否為外鍵 說明
編號 C har 50 是 否 否 聯系人唯一標識,聯系人 編號
姓名 C har 50 否 否 否 聯系人姓名
性別 C har 10 否 否 否 聯系人性別
電話號碼 C har 10 否 否 否 聯系人電話
E-mail C har 50 否 是 否 聯系人郵件
地址 C har 50 否 否 否 聯系人住址
分組型別 C har 10 否 否 否 聯系人類別
表XXX 朋友分組表
資料名 型別 長度 是否為主鍵 是否為空 是否為外鍵 說明
朋友編號 C har 50 是 否 是 對聯系人表中的聯系人一一對應
姓名 C har 50 是 是 否 類別為朋友的聯系人的姓名
表XXX 同學分組表
資料名 型別 長度 是否為主鍵 是否為空 是否為外鍵 說明
同學編號 C har 50 是 否 是 與聯系人表中的聯系人一一對應
姓名 C har 50 是 是 否 類別為同學的聯系人的姓名
第五章資料庫實施
5.1資料庫創建代碼
```go
create database 通訊錄管理系統
on primary
(
name ='通訊錄管理系統',
Filename='d:\資料庫\通訊管理系統.mdf',
size=10mb,
maxsize=100mb,
filegrowth=20%
)
log on
(
name='通訊錄管理系統',
filename='d:\資料庫\通訊錄管理系統.ldf',
size=20mb,
maxsize=100mb,
filegrowth=20%
)
5.2 資料庫表 創建 代 碼
5.2.1用戶表
create table 用戶
(
用戶名 char(20) primary key,
密碼 char(40) not null,
)
5.2.2聯系人表
create table 聯系人
(
編號 char(10) primary key,
姓名 char(10),
性別 char(4) not null,
電話號碼 char(10) not null,
E_mail char(50),
地址 char(30),
分組型別 char(10),
)
5.2.3分組 表
create table 同學分組
(
同學編號 char(10)primary key FOREIGN KEY(同學編號)REFERENCES 聯系人(編號),
姓名 char(10),
)
go
create table 朋友分組
(
朋友編號 char(10)primary key FOREIGN KEY(朋友編號)REFERENCES 聯系人(編號),
姓名 char(10),
)
go
create table 同事分組
(
同事編號 char(10)primary key FOREIGN KEY(同事編號)REFERENCES 聯系人(編號),
姓名 char(10),
)
5.3視圖創建代碼
go
create view 朋友
as
select 朋友分組.朋友編號,朋友分組.姓名,電話號碼,性別,E_mail,分組型別
from 朋友分組,聯系人
where 朋友分組.朋友編號=聯系人.編號
go
create view 同學
as
select 同學分組.同學編號,同學分組.姓名,電話號碼,性別,E_mail,分組型別
from 聯系人,同學分組
where 同學分組.同學編號=聯系人.編號
go
create view 所有聯系人
as
select 聯系人.姓名,聯系人.電話號碼,聯系人.性別,聯系人.E_mail,分組型別
from 聯系人
go
5.4存盤程序代碼創建
create procedure _朋友
as
select 朋友分組.朋友編號,朋友分組.姓名,電話號碼,性別,E_mail,分組型別
from 聯系人,朋友分組
where 朋友分組.朋友編號=聯系人.編號
go
create procedure _同學
as
select 同學分組.同學編號,同學分組.姓名,電話號碼,性別,E_mail,分組型別
from 聯系人,同學分組
where 同學分組.同學編號=聯系人.編號
go
create procedure _所有聯系人
as
select *
from 聯系人
第六章資料庫運行和維護
6.1登陸模塊
進入此系統后會出現用戶登陸界面,用戶輸入用戶名和密碼即可進入此系統,若密碼錯誤則顯示錯誤提示
6.2聯系人界面
用戶在登錄系統后 成功進入下圖所示的表單,該表單會顯示所有聯系人
6.3朋友分組界面及詳細查詢
在聯系人界面會有分組資訊,點擊打開朋友分組資訊,會出現朋友分組里面的聯系人,選擇某個聯系人可以查看該聯系人的詳細資訊
6.4同學分組界面及詳細查詢
在聯系人界面會有分組資訊,點擊打開同學分組資訊,會出現同學分組里面的聯系人,選擇某個聯系人可以查看該聯系人的詳細資訊
6.5同事分組界面及詳細查詢
在聯系人界面會有分組資訊,點擊打開同事分組資訊,會出現同事分組里面的聯系人,選擇某個聯系人可以查看該聯系人的詳細資訊
6.6查詢界面
點擊查詢按鈕,輸入你要查詢聯系人的姓名,則會彈出該聯系人的資訊
6.7增加界面
在資訊欄目里輸入你要添加的聯系人的具體資訊,然后點擊增加按鈕,顯示添加聯系人成功
6.8修改界面
選中需要修改 的 聯系人,對其個 聯系 人資訊進行編輯修改 ,按下修改按鈕,顯示修改成功
6.9洗掉界面
選中你要洗掉的聯系人,點擊洗掉,則成功洗掉該聯系人
第七章 總結
為期2周的 課程設計終于結束了,從本次課程設計中我們小組識訓了不少,由于我們是初次接觸資料庫這門課程,所以本次的課程設計對于我們來說是一個不小的挑戰,所以我們選擇了難度相對較小的通訊錄管理系統這個課程來進行設計 ,編碼的時候,我們采用了Java面向物件編程語言來完成這個專案,通過類與物件來完成 老師要求我們實作的 功能,
在本次課程設計的程序中,我們發現了資料庫需求分析的重要性,資料庫的需求分析成功與否是我們這次課程設計成功與否的關鍵,我們小組成員在需求分析遇到了一些小問題,成員之間的意見各不相一,但是我們通過小組討論,網上查找資料以及向老師請教,我們終于達成了一致意見,結構設計對于本次課程設計也很重要, 一個好的結構設計決定著這個系統功能實作的方式,也是影響用戶和系統互動的方式,在所有的作業做完以后,接下來的就是測驗,測驗能給我們找到之前我們所為發現的錯誤,通過測驗,我們找到了一些錯誤,通過我們組員集體討論和查資料,我們很快就解決了這些錯誤,
雖然這次我們選擇的課程設計難度相對較小 ,但是我們通過我們自己的努力,一步一步的實作它,由于時間和我們的能力有限,我們并沒有完全做出這個系統所有的功能,總而言之,我們從中學到了很多東西,我認為這次課程設計對于我以后的作業有很大幫助,
參考文獻
【1】 王小玲,劉衛國.資料庫應用基礎教程【M】.北京:中國鐵道出版社.2008
【2】 施伯樂,丁寶康,汪衛.資料庫系統教程【M 】 .第3版.北京:高等教育出版社.2008
【3】 程云志,張帆,崔翔.資料庫原理與SQL Server2005應用教程 【M 】 .北京:機械工業出版社.2006
【4】 苗雪蘭,劉瑞新,宋會群.資料庫技術及應用【M】.北京:機械工業出版社.2006
【5】 李春葆,曾平.資料庫原理與應用:基于SQL Server 2000【M】.北京:清華大學出版社.2006
【6】 寧洪,趙文濤,賈麗麗.資料庫系統原理【M 】 .北京:北京郵電大學出版社.2005
【7】 何玉潔.資料庫基礎及應用技術【M 】 .第2版.北京:清華大學出版社.2004
【8】 Microsoft Corporation.SQL Server 2005檔案【9】.http://technet.microsoft.com/zhcn/library/ms203721(SQL.90).aspx
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/248971.html
標籤:其他
上一篇:mysql左連接內連接閑談
