汽車租賃管理系統(tǒng)原理課程設(shè)計最終版_第1頁
汽車租賃管理系統(tǒng)原理課程設(shè)計最終版_第2頁
汽車租賃管理系統(tǒng)原理課程設(shè)計最終版_第3頁
汽車租賃管理系統(tǒng)原理課程設(shè)計最終版_第4頁
汽車租賃管理系統(tǒng)原理課程設(shè)計最終版_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

精品文檔 長 沙 學(xué) 院 課程設(shè)計說明書 題目汽車租賃管理系統(tǒng) 系 部 數(shù)學(xué)與計算機(jī)科學(xué) 專業(yè) 班級 軟件 03 班 姓名 學(xué)號 指導(dǎo)教師黃彩霞 劉欣 起止日期 2016 5 15 2016 5 27 精品文檔 課程設(shè)計任務(wù)書 課程名稱 課程名稱 數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計 設(shè)計題目 設(shè)計題目 汽車租賃管理系統(tǒng) 已知技術(shù)參數(shù)和設(shè)計要求 已知技術(shù)參數(shù)和設(shè)計要求 題目 汽車租賃管理系統(tǒng) 1 某汽車租賃公司汽車租賃管理系統(tǒng)需要如下信息 工作人員信息包括 工號 姓名 性別 聯(lián)系電話等 客戶信息包括 身份證號 姓名 性別 所在單位 聯(lián)系電話等 車輛信息包括 車牌號 品牌 顏色 座位數(shù) 日租價格 日租超公里價格 月租價格 租賃狀態(tài) 購入日期等 車輛類別信息包括 分類號 庫存數(shù) 其業(yè)務(wù)規(guī)則描述如下 一個工作人員可以對很多輛車輛進(jìn)行管理 一輛車也可以被多個工作人員管理 一輛車 只能屬于一種車輛類別 而一種車輛類別可以包含多輛車 一個客戶可以租多輛不同的 車 2 系統(tǒng)功能的基本要求 可以實現(xiàn)對車輛 租賃客戶的查詢 可以查詢汽車 客戶租賃歷史記錄 可以按類別統(tǒng) 計汽車的租賃金額和剩余的庫存數(shù) 可以統(tǒng)計某一年齡客戶群體對某類汽車的租賃喜好 能模擬客戶對汽車的租借 歸還業(yè)務(wù) 各階段具體要求 各階段具體要求 1 需求分析階段 定義數(shù)據(jù)項的含義和取值 定義目標(biāo)系統(tǒng)的數(shù)據(jù)流 2 概念結(jié)構(gòu)設(shè)計階段 畫出實體模型 E R 圖 3 邏輯結(jié)構(gòu)設(shè)計階段 將實體模型轉(zhuǎn)化為關(guān)系模型 給出每個關(guān)系的主關(guān)鍵字和函數(shù)依賴集 分析你所設(shè)計的關(guān)系數(shù)據(jù)庫模式是否屬于 3NF 精品文檔 4 物理設(shè)計階段 確定所有字段的名稱 類型 寬度 小數(shù)位數(shù)及完整性約束 確定數(shù)據(jù)庫及表的名稱及其組成 確定索引文件和索引關(guān)鍵字 5 數(shù)據(jù)庫安全及維護(hù)設(shè)計階段 設(shè)計一個適合的數(shù)據(jù)庫安全策略 用戶身份認(rèn)證 訪問權(quán)限 視圖 為了實現(xiàn)復(fù)雜的數(shù)據(jù)完整性約束 設(shè)計適當(dāng)?shù)挠|發(fā)器 設(shè)計一個適合的數(shù)據(jù)庫備份策略 6 實施階段 要求所有操作必須在查詢分析器中用 SQL 語句或系統(tǒng)存儲過程完成 設(shè)計工作量 設(shè)計工作量 1 軟件設(shè)計 完成問題陳述中所提到的所有需求功能 2 論文 要求撰寫不少于 3000 個文字的電子文檔 詳細(xì)說明各階段具體要求 工作計劃 工作計劃 安排兩周時間進(jìn)行課程設(shè)計 軟件開發(fā)步驟如下 第一周完成 1 4 第二周完成 5 8 論文同步進(jìn)行 1 選定題目 2 需求分析 3 概念結(jié)構(gòu)設(shè)計 4 邏輯結(jié)構(gòu)設(shè)計 5 物理設(shè)計 6 數(shù)據(jù)庫安全及維護(hù)設(shè)計 7 數(shù)據(jù)庫上機(jī)實現(xiàn) 8 答辯 注意事項注意事項 提交電子文檔提交電子文檔 長沙學(xué)院課程設(shè)計任務(wù)書 每學(xué)生 1 份 長沙學(xué)院課程設(shè)計論文 每學(xué)生 1 份 長沙學(xué)院課程設(shè)計鑒定表 每學(xué)生 1 份 指導(dǎo)教師簽名 日期 教研室主任簽名 日期 系主任簽名 日期 精品文檔 長沙學(xué)院課程設(shè)計鑒定表 姓名學(xué)號專業(yè)軟件工程班級 03 設(shè)計題目汽車租賃管理系統(tǒng)指導(dǎo)教師劉欣 黃彩霞 指導(dǎo)教師意見 評定等級 教師簽名 日期 答辯小組意見 評定等級 答辯小組長簽名 日期 教研室意見 教研室主任簽名 日期 系 部 意見 系主任簽名 日期 精品文檔 說明 課程設(shè)計成績分 優(yōu)秀 良好 及格 不及格 四類 目 錄 一 引言一 引言 6 6 1 1編寫目的 6 1 2參考資料 6 二 二 需求規(guī)約需求規(guī)約 7 7 2 1 業(yè)務(wù)描述 7 2 2 需求分析 7 三 三 數(shù)據(jù)庫環(huán)境說明數(shù)據(jù)庫環(huán)境說明 8 8 四 四 數(shù)據(jù)庫的命名規(guī)則數(shù)據(jù)庫的命名規(guī)則 8 8 4 1 數(shù)據(jù)庫對象命名規(guī)則 6 4 2 數(shù)據(jù)項編碼規(guī)則 6 五 五 邏輯設(shè)計邏輯設(shè)計 9 9 六 六 物理設(shè)計物理設(shè)計 1 11 1 6 1表匯總 11 6 1 1表 CAR 車輛信息表 12 6 1 2表 CARCLASS 汽車分類表表 12 6 1 3表 CUSTOMER 客戶信息表 13 6 1 4表 WORKER1 工作人員表 13 6 1 5表 RENT 租賃表 14 6 1 6表 MANAGE 管理表 15 6 2視圖的設(shè)計 15 6 3存儲過程的設(shè)計 17 6 4觸發(fā)器的設(shè)計 20 6 4JAVA 設(shè)計 24 七 七 安全性設(shè)計安全性設(shè)計 2626 7 1防止用戶直接操作數(shù)據(jù)庫的方法 26 7 2用戶帳號密碼的加密方法 26 7 3角色與權(quán)限 26 八 八 數(shù)據(jù)庫管理與維護(hù)說明數(shù)據(jù)庫管理與維護(hù)說明 2727 8 1說明 27 8 2課程設(shè)計總結(jié) 28 九 九 附錄附錄 源代碼源代碼 29 29 9 1數(shù)據(jù)庫源代碼 29 精品文檔 9 2連接數(shù)據(jù)庫代碼 40 一 引言一 引言 1 11 1編寫目的編寫目的 本文檔是汽車租賃管理系統(tǒng)的組成部分 編寫數(shù)據(jù)庫設(shè)計文檔的目的是 明確數(shù)據(jù) 庫的表名 字段名等數(shù)據(jù)信息 用來指導(dǎo)后期的數(shù)據(jù)庫腳本的開發(fā) 本文檔的讀者對象 是需求人員 系統(tǒng)設(shè)計人員 開發(fā)人員和測試人員 為了加快汽車租賃管理自動化的步伐 提高汽車租賃的管理業(yè)務(wù)處理效率 建立汽 車租賃管理系統(tǒng) 并且盡可能地減少汽車租賃管理的重復(fù)性和低效性 已變得十分必要 該課程設(shè)計以某汽車租賃應(yīng)用背景 通過研究當(dāng)前汽車租賃系統(tǒng)的管理現(xiàn)狀 存在 問題以及 現(xiàn)實需求 設(shè)計一個針對汽車租賃管理工作的管理信息系統(tǒng) 該系統(tǒng)能 夠提供較為完備的 功能 對于提高工作效率 加快汽車租賃管理的自動化具有較為 重要的意義 汽車租賃管理系統(tǒng)是汽車租賃公司提供的一個簡單易用的系統(tǒng) 隨著科 技的發(fā)展 設(shè)備和管理的現(xiàn)代化 在實際生活中如何提高工作效率成為一個很重要的 問題 所以建立這種管理系統(tǒng)是非常好的解決方法 1 21 2參考資料參考資料 資料名稱作者文件編號 版本 數(shù)據(jù)庫系統(tǒng)概論 王珊 薩師煊2006 年 5 月第 4 版 MySQL 入門經(jīng)典 王雨竹 高飛2013 年 4 月 精品文檔 Java 基礎(chǔ)教程 吳仁群2009 年 4 月 二 二 需求規(guī)約需求規(guī)約 2 12 1 業(yè)務(wù)描述業(yè)務(wù)描述 2 1 12 1 1 創(chuàng)建背景創(chuàng)建背景 該數(shù)據(jù)庫建立于 MySQL 環(huán)境為 windows7 系統(tǒng)名稱 汽車租賃管理系統(tǒng) 系統(tǒng)的開發(fā)者 小組成員 系統(tǒng)的用戶 租車客戶以及租賃公司的工作人員 2 1 22 1 2 業(yè)務(wù)流程及工作內(nèi)容業(yè)務(wù)流程及工作內(nèi)容 了解到題目需求后 畫好 ER 圖 寫出其關(guān)系模式 并用 MySQL 建立數(shù)據(jù)庫 新建表 定義好表名 建立視圖 存儲過程以及觸發(fā)器 系統(tǒng)功能的基本要求是可以實現(xiàn)對車輛 租賃客戶的查詢 可以查詢汽車 客戶租賃歷史記錄 可以按類別統(tǒng)計汽車的租賃金額 和剩余的庫存數(shù) 可以統(tǒng)計某一年齡客戶群體對某類汽車的租賃喜好 能模擬客戶對汽 車的租借 歸還業(yè)務(wù) 2 22 2 需求分析需求分析 2 2 12 2 1 功能需求功能需求 1 1 車輛管理 車輛管理 主要是表示管理員可以對租賃公司現(xiàn)有的汽車的具體信息進(jìn)行管理 修改汽車基本 信息 包括車牌號 汽車顏色 購入日期 類別及租賃狀態(tài)等 也可以添加新購進(jìn)來的 汽車基本信息 以便更快的投入租賃市場 方便客戶了解最新車輛信息以及做出更好的 租賃選擇 2 2 業(yè)務(wù)管理業(yè)務(wù)管理 主要提供對汽車的日常業(yè)務(wù)進(jìn)行管理 如查詢指定汽車的租賃狀態(tài) 被租賃的車的 車牌號 所生成的訂單號 所租車的種類 租車時間 歸還時間及租賃金額 查詢租車 客戶的基本信息 以便于管理員更好的管理車輛系統(tǒng) 保障系統(tǒng)安全性 1 1 統(tǒng)計統(tǒng)計 精品文檔 主要是實現(xiàn)統(tǒng)計某一年齡客戶群體對某類汽車的租賃喜好 可以通過客戶的年齡算 出所租車輛的種類一共有多少輛 可以按類別統(tǒng)計汽車的租賃金額和剩余的庫存數(shù) 以 便管理員更好地了解市場行情 從而盡可能獲得更大收益 三 數(shù)據(jù)庫環(huán)境說明三 數(shù)據(jù)庫環(huán)境說明 3 13 1 數(shù)據(jù)庫環(huán)境數(shù)據(jù)庫環(huán)境 數(shù)據(jù)庫 實例 數(shù)據(jù)庫 系統(tǒng) 數(shù)據(jù)庫部 署環(huán)境 數(shù)據(jù)庫設(shè)計工 具 數(shù)據(jù)庫存放位置說明 汽車租 賃 MySQL 版本 4 0 Windows7Navicat for MySQL D ProgramFiles MySQL 實例用途說明 四 數(shù)據(jù)庫的命名規(guī)則四 數(shù)據(jù)庫的命名規(guī)則 4 14 1 數(shù)據(jù)庫對象命名規(guī)則數(shù)據(jù)庫對象命名規(guī)則 數(shù)據(jù)庫對象命名規(guī)則備注 表table 功能描述字符串例如 Car 表 視圖View 功能描述字符串例如 V1 視圖 存儲過程Proc 功能描述字符串例如 P1 存儲過程 觸發(fā)器Trigger 功能描述字符串例如 T1 觸發(fā)器 4 24 2 數(shù)據(jù)項編碼規(guī)則數(shù)據(jù)項編碼規(guī)則 數(shù)據(jù)項命名規(guī)則數(shù)據(jù)類型長度備注 租賃狀態(tài) 兩位二進(jìn)制碼bit2例如 00 車牌號湘 L 三位整數(shù) SBvarchar10例如 湘 L520SB 客戶賬號431023 三位整數(shù)varchar10例如 431023001 訂單號四位整數(shù)varchar10例如 1401 精品文檔 租賃日期年 月 日 時間datetime10例如 2016 05 20 04 精品文檔 五 邏輯設(shè)計五 邏輯設(shè)計 5 15 1 系統(tǒng)系統(tǒng) E RE R 圖設(shè)計圖設(shè)計 圖 1 E R 圖 精品文檔 圖 2 MySQL 中 E R 圖 5 25 2 創(chuàng)建關(guān)系模式創(chuàng)建關(guān)系模式 1 工作人員 工號 密碼 姓名 性別 聯(lián)系電話 2 客戶信息 身份證號 密碼 姓名 性別 所在單位 聯(lián)系電話 3 車輛信息 車牌號 品牌 座位數(shù) 顏色 租賃狀態(tài) 購入日期 分類號 4 車輛類別 分類號 庫存數(shù) 日租價格 日租超公里價格 月租價格 月租超公里價 格 品牌 5 管理 工號 車牌號 備注 工號和車牌號共同作為管理表的主鍵 同時也是外鍵 6 租賃 訂單號 身份證號 車牌號 租賃日期 歸還日期 租賃總金額 備注 主鍵是加下劃線 外鍵是加波浪線 完全依賴完全依賴 工號 姓名 工號 密碼 工號 性別 工號 聯(lián)系電話 客戶身份證號 客戶姓名 客戶身份證號 密碼 客戶身份證號 客戶性別 客戶身份證號 客戶所在單位 客戶身份證號 客戶聯(lián)系電話 車牌號 品牌 車牌號 座位數(shù) 車牌號 顏色 車牌號 購入日期 車牌 號 分類號 分類號 庫存數(shù) 分類號 日租價格 分類號 日租超公里價格 分類號 月租價格 分類號 月租超公里價格 分類號 品牌 訂單號 客戶身份證號 訂單號 車牌號 訂單號 租賃日期 訂單號 歸 還 日期 訂單號 租賃金額 部分依賴 部分依賴 工號 車牌號 分別決定 姓名 密碼 性別 聯(lián)系電話 品牌 座 位數(shù) 顏色 租賃狀態(tài) 購入日期 分類號 精品文檔 傳遞依賴 傳遞依賴 訂單號 分別決定 客戶的姓名 密碼 性別 所在單位 聯(lián)系電話 品 牌 分類號 座位數(shù) 顏色 租賃狀態(tài) 購入日期 六 物理設(shè)計六 物理設(shè)計 6 16 1 表匯總表匯總 表名功能說明 car 存儲車輛的信息 carclass 存儲車輛類別的信息 worker1 存儲工作人員的信息 rent 存儲租賃的信息 customer 存儲客戶的信息 manage 存儲工作人員與車輛的聯(lián)系 6 1 16 1 1 表表 car car 車輛信息表車輛信息表 表名 car 數(shù)據(jù)庫用戶 Test 主鍵 CarNo 索引字段 CarClassNo 序號字段名稱數(shù)據(jù)類型允許為 空 Y N 唯一 Y N 區(qū)別度默認(rèn)值約束條件 說 明 1CarNovarchar 10 NY 高無主鍵 2CarClassNovarchar 10 NN 高無外鍵 3CarStatebit 2 NN 低 00 租賃狀態(tài) 4CardatedateNN 低無購入日期 5CarColorvarchar 10 NN 低無汽車顏色 精品文檔 sql 腳本 DROP TABLE IF EXISTS car CREATE TABLE car CarNo varchar 10 NOT NULL CarColor varchar 10 NOT NULL CarDate date NOT NULL CarSta bit 10 NOT NULL CarClassNo varchar 10 NOT NULL PRIMARY KEY CarNo KEY CarClassNo CarClassNo CONSTRAINT CarClassNo FOREIGN KEY CarClassNo REFERENCES carclass CarClassNo 6 1 26 1 2 表表 carclass carclass 車輛類別表車輛類別表 表名 carclass 數(shù)據(jù)庫用戶 Test 主鍵 CarClassNo 序 號 字段名稱數(shù)據(jù)類型允許為 空 Y N 唯一 Y N 區(qū)別 度 默認(rèn) 值 約束條件 說明 1CarClassNovarchar 10 NY 高無主鍵 2CarClassCntvarchar 10 NN 低無庫存數(shù) 3CarClassSeatbit 2 NN 低無座位數(shù) 4CarClassDayPrice2dateNN 低無日租價格 5CarClassDayPrice1varchar 10 NN 低無日租超公里價格 6CarClassMonthPricevarchar 10 NN 低無月租價格 7CarClassBrandvarchar 10 NN 低無車輛品牌 sql 腳本 DROP TABLE IF EXISTS carclass CREATE TABLE carclass CarClassNo varchar 10 NOT NULL CarClassCnt varchar 10 NOT NULL CarClassDayPrice1 varchar 10 NOT NULL CarClassDayPrice2 varchar 10 NOT NULL CarClassMonthPrice varchar 10 NOT NULL CarClassBrand varchar 10 NOT NULL CarClassseat varchar 10 NOT NULL PRIMARY KEY CarClassNo 精品文檔 6 1 36 1 3 表表 customer customer 客戶信息表客戶信息表 表名 customer 數(shù)據(jù)庫用戶 Test 主鍵 CusNo 序號字段名稱數(shù)據(jù)類型允許為 空 Y N 唯一 Y N 區(qū)別度默認(rèn)值約束條件 說 明 1CusNovarchar 10 NY 高無主鍵 2CusPasswordvarchar 10 NN 高無登錄密碼 3CusNamevarchar 10 NN 低無客戶姓名 4CusSexvarchar 10 NN 低無客戶性別 5CusAgevarchar 10 NN 低無客戶年齡 6CusPhonevarchar 10 NN 低無客戶電話 7CusCompanyvarchar 10 NN 低無公司 sql 腳本 DROP TABLE IF EXISTS customer CREATE TABLE customer CusNo varchar 10 NOT NULL CusName varchar 10 NOT NULL CusSex varchar 2 NOT NULL CusAge varchar 4 NOT NULL CusPhone varchar 20 NOT NULL CusCompany varchar 20 NOT NULL CusPassword varchar 10 NOT NULL PRIMARY KEY CusNo 6 1 46 1 4 表表 worker1 worker1 工作人員信息表工作人員信息表 表名 worker1 數(shù)據(jù)庫用戶 Test 主鍵 WorkNo 序號字段名稱數(shù)據(jù)類型允許為 空 Y N 唯一 Y N 區(qū)別度默認(rèn)值約束條件 說 明 1WorkNovarchar 10 NY 高無主鍵 2WorkPassw ord varchar 10 NN 低無密碼 3WorkNamevarchar 10 NN 低無姓名 精品文檔 4WorkSexvarchar 10 NN 低無性別 5WorkPhonevarchar 10 NN 低無電話 sql 腳本 DROP TABLE IF EXISTS worker1 CREATE TABLE worker1 WorkNo varchar 10 NOT NULL DEFAULT WorkPassword varchar 10 DEFAULT NULL WorkName varchar 10 DEFAULT NULL WorkSex varchar 10 DEFAULT NULL WorkPhone varchar 10 DEFAULT NULL PRIMARY KEY WorkNo 6 1 56 1 5 表表 rent rent 租賃表租賃表 表名 rent 數(shù)據(jù)庫用戶 Test 主鍵 RecordNo 索引CarNo CusNo 序號字段名稱數(shù)據(jù)類型允許為 空 Y N 唯一 Y N 區(qū)別 度 默認(rèn) 值 約束條件 說明 1RecordNovarchar 10 NY 高無主鍵 2CarNovarchar 10 NN 高無外鍵 3CusNovarchar 10 NN 低無外鍵 4RecordCostvarchar 10 NN 低無總金額 5RecordRentDatevarchar 10 NN 低無租賃時間 6RecordReturnDat e varchar 10 NN 低無歸還時間 精品文檔 sql 腳本 DROP TABLE IF EXISTS rent CREATE TABLE rent RecordNo varchar 10 NOT NULL RecordRentDate datetime NOT NULL RecordReturnDate datetime NOT NULL CusNo varchar 10 NOT NULL CarNo varchar 10 NOT NULL RecordCost varchar 10 DEFAULT NULL PRIMARY KEY RecordNo KEY CusNo CusNo KEY CarNo CarNo CONSTRAINT CarNo FOREIGN KEY CarNo REFERENCES car CarNo CONSTRAINT CusNo FOREIGN KEY CusNo REFERENCES customer CusNo 6 1 66 1 6 表表 manage manage 管理表管理表 表名 Wmanage 數(shù)據(jù)庫用戶 Test 主鍵CarNo WorkNo 索引 CarNo 序號字段名稱數(shù)據(jù)類型允許為 空 Y N 唯一 Y N 區(qū)別度默認(rèn)值約束條件 說 明 1WorkNovarchar 10 NY 高無主鍵 2CarNovarchar 10 NN 高無主鍵 精品文檔 sql 腳本 DROP TABLE IF EXISTS manege CREATE TABLE manege WorkNo varchar 10 NOT NULL DEFAULT CarNo varchar 10 NOT NULL DEFAULT PRIMARY KEY WorkNo CarNo KEY CarNo CarNo CONSTRAINT manege ibfk 1 FOREIGN KEY CarNo REFERENCES car CarNo CONSTRAINT WorkNo FOREIGN KEY WorkNo REFERENCES worker1 WorkNo 6 26 2 視圖的設(shè)計視圖的設(shè)計 6 2 16 2 1 視圖視圖 V1 V1 按車輛的類別統(tǒng)計汽車的租賃金額和數(shù)庫存數(shù)按車輛的類別統(tǒng)計汽車的租賃金額和數(shù)庫存數(shù) 關(guān)鍵代碼 DROP VIEW IF EXISTS v1 CREATE ALGORITHM UNDEFINED DEFINER root localhost SQL SECURITY DEFINER VIEW v1 AS select carclass CarClassNo AS CarClassNo carclass CarClassCnt AS CarClassCnt from carclass group by carclass CarClassNo 圖 3 按類別統(tǒng)計汽車的租賃金額和剩余的庫存 6 2 26 2 2 視圖視圖 V2 V2 通過訂單號了解到所租車輛的類別號及類別名通過訂單號了解到所租車輛的類別號及類別名 關(guān)鍵代碼 DROP VIEW IF EXISTS v2 CREATE ALGORITHM UNDEFINED DEFINER root localhost SQL SECURITY DEFINER VIEW v2 AS select rent RecordNo AS RecordNo car CarClassNo AS CarClassNo carclass CarClassBrand AS CarClassBrand from rent join car join carclass where rent CarNo car CarNo and 精品文檔 car CarClassNo carclass CarClassNo group by car CarClassNo 圖 4 訂單號求所租車輛的類別號及類別名 6 2 36 2 3 視圖視圖 V3 V3 統(tǒng)計某一年齡階段對汽車類別的喜好 并統(tǒng)計相應(yīng)人數(shù)統(tǒng)計某一年齡階段對汽車類別的喜好 并統(tǒng)計相應(yīng)人數(shù) 關(guān)鍵代碼 DROP VIEW IF EXISTS v3 CREATE ALGORITHM UNDEFINED DEFINER root localhost SQL SECURITY DEFINER VIEW v3 AS select customer CusAge AS CusAge carclass CarClassBrand AS CarClassBrand count customer CusAge AS Count customer CusAge from carclass join customer join rent join car where customer CusNo rent CusNo and rent CarNo car CarNo and car CarClassNo carclass CarClassNo group by carclass CarClassBrand 圖 4 統(tǒng)計某一年齡階段對汽車類別的喜好及相應(yīng)人數(shù) 6 2 36 2 3 視圖視圖 V4 V4 查詢所輸入的車牌號的車現(xiàn)在所處查詢所輸入的車牌號的車現(xiàn)在所處 狀態(tài)狀態(tài) 關(guān)鍵代碼 DROP VIEW IF EXISTS v4 CREATE ALGORITHM UNDEFINED DEFINER root localhost SQL SECURITY DEFINER VIEW v4 AS select car CarState AS CarState car CarNo AS CarNo carclass CarClassBrand AS CarClassBrand from car join carclass where car CarClassNo carclass CarClassNo 精品文檔 圖 5 查詢所輸入車牌號的現(xiàn)在狀態(tài) 6 36 3 存儲過程存儲過程 6 3 16 3 1 存儲過程存儲過程 P1 P1 功能 查詢每輛車的狀態(tài)和庫存數(shù) 執(zhí)行存儲過程 關(guān)鍵代碼 DROP PROCEDURE IF EXISTS P1 CREATE DEFINER root localhost PROCEDURE P1 begin select CarNo CarState CarClassBrand CarClassCnt from car carclass where car CarClassNo carclass CarClassNo end 圖 6 執(zhí)行結(jié)果 精品文檔 6 3 26 3 2 存儲過程存儲過程 P2 P2 功能 查詢所輸入客戶賬號的租賃歷史記錄 執(zhí)行存儲過程 關(guān)鍵代碼 參數(shù) CusNo varchar 10 DROP PROCEDURE IF EXISTS P2 CREATE PROCEDURE P2 CusNo varchar 10 Begin select rent RecordNo rent RecordRentDate rent RecordReturnDate rent RecordCost car C arNo carclass CarClassBrand from rent car carclass where CusNo CusNo and rent CarNo car CarNo and car CarClassNo carclass CarClassNo end 圖 7 輸入客戶賬號執(zhí)行結(jié)果 6 3 36 3 3 存儲過程存儲過程 P3 P3 功能 查詢所輸入車牌號的被租賃歷史記錄 執(zhí)行存儲過程 關(guān)鍵代碼 參數(shù) CarNo varchar 10 DROP PROCEDURE IF EXISTS P3 CREATE PROCEDURE P3 IN CarNo varchar 10 begin select RecordNo RecordRentDate RecordReturnDate RecordCost CusNo from rent where CarNo newCarNo end 精品文檔 圖 8 輸入車牌號執(zhí)行結(jié)果 6 3 46 3 4 存儲過程存儲過程 P4 P4 功能 通過輸入訂單號查詢訂單信息 執(zhí)行存儲過程 關(guān)鍵代碼 參數(shù) newRecordNo varchar 10 DROP PROCEDURE IF EXISTS P5 begin select RecordRentDate RecordReturnDate CusNo CarNo RecordCost from rent where RecordNo newRecordNo end 圖 9 執(zhí)行結(jié)果 6 46 4 觸發(fā)器觸發(fā)器 6 4 16 4 1 觸發(fā)器觸發(fā)器 T1 T1 功能 當(dāng)租賃公司新購入一輛汽車時 輸入新的車牌號及信息 此車輛所對應(yīng)車輛類別的 庫存數(shù)自動增加 購入多輛時增加相應(yīng)數(shù)量的庫存 關(guān)鍵代碼 DROP TRIGGER IF EXISTS T1 CREATE TRIGGER T1 AFTER INSERT ON car FOR EACH ROW begin declare c int set c select CarClassCnt from carclass 精品文檔 where CarClassNo new CarClassNo update carclass set CarClassCnt c 1 where CarClassNo new CarClassNo end DELIMITER 圖 10 新增一輛車庫存數(shù)加一 6 4 26 4 2 觸發(fā)器觸發(fā)器 T2 T2 功能 當(dāng)租賃公司報廢一輛汽車時 刪除車牌號及信息 此車輛所對應(yīng)車輛類別的庫存數(shù) 自動減少 刪除多輛時減少相應(yīng)數(shù)量的庫存 關(guān)鍵代碼 DROP TRIGGER IF EXISTS T2 CREATE TRIGGER T2 AFTER DELETE ON car FOR EACH ROW begin declare c int set c select CarClassCnt from carclass where CarClassNo old CarClassNo update carclass set CarClassCnt c 1 where CarClassNo old CarClassNo end 精品文檔 圖 11 刪除一個車輛記錄 庫存數(shù)自動減一 6 4 36 4 3 觸發(fā)器觸發(fā)器 T3 T3 功能 當(dāng)產(chǎn)生一個新的訂單時 訂單中所預(yù)訂車輛所對應(yīng)車輛類別的庫存數(shù)自動減少 產(chǎn) 生多個訂單號時也減少相應(yīng)數(shù)量的庫存 關(guān)鍵代碼 DROP TRIGGER IF EXISTS T3 DELIMITER CREATE TRIGGER T3 AFTER INSERT ON rent FOR EACH ROW update carclass set CarClassCnt CarClassCnt 1 where CarClassNo in select CarClassNo from car where CarNo in select CarNo from rent where CarNo new CarNo DELIMITER 圖 11 增加訂單對應(yīng)類別庫存數(shù)減少 精品文檔 6 4 46 4 4 觸發(fā)器觸發(fā)器 T4 T4 功能 當(dāng)產(chǎn)取消一個訂單時 訂單中所預(yù)訂車輛所對應(yīng)車輛類別的庫存數(shù)自動增加 取消 多個訂單號時也增加相應(yīng)數(shù)量的庫存 關(guān)鍵代碼 DROP TRIGGER IF EXISTS T4 DELIMITER CREATE TRIGGER T4 AFTER INSERT ON rent FOR EACH ROW update carclass set CarClassCnt CarClassCnt 1 where CarClassNo in select CarClassNo from car where CarNo in select CarNo from rent where CarNo old CarNo DELIMITER 圖 12 取消一個訂單對應(yīng)類別庫存數(shù)增加 6 4 56 4 5 觸發(fā)器觸發(fā)器 T5 T5 功能 當(dāng)產(chǎn)生一個新的訂單時 訂單中所預(yù)訂車輛的租賃狀態(tài)由空閑狀態(tài) 00 變?yōu)轭A(yù)訂 狀態(tài) 01 關(guān)鍵代碼 DELIMITER DROP TRIGGER IF EXISTS T5 DELIMITER CREATE TRIGGER T5 AFTER UPDATE ON rent FOR EACH ROW update car 精品文檔 set CarState CarState 1 where CarNo in select CarNo from rent where CarNo new CarNo DELIMITER 圖 13 新增訂單對應(yīng)車輛的租賃狀態(tài)改變 精品文檔 6 56 5 JavaJava 模塊設(shè)計模塊設(shè)計 6 5 16 5 1 連接數(shù)據(jù)庫連接數(shù)據(jù)庫 圖 14 連接 car 表執(zhí)行結(jié)果 6 5 26 5 2 JavaJava 界面設(shè)計界面設(shè)計 精品文檔 圖 15 主界面 圖 16 管理員登錄界面 圖 17 管理員登錄成功界面 圖 18 客戶登錄界面 精品文檔 圖 19 客戶登錄成功界面 7 安全性設(shè)計安全性設(shè)計 數(shù)據(jù)庫只被少數(shù)授權(quán)用戶訪問 必須提供用戶名和正確的密碼 存儲數(shù)據(jù)庫的服務(wù)器也只能 讓系統(tǒng)管理員 或少數(shù)高級管理人員登錄 數(shù)據(jù)庫的安全策略 遵從 MYSQL 的安全策略事 7 17 1 防止用戶直接操作數(shù)據(jù)庫防止用戶直接操作數(shù)據(jù)庫 7 7 2 2定定義義視視圖圖 授授予予不不同同角角色色不不同同的的權(quán)權(quán)限限 7 37 3 角色與權(quán)限角色與權(quán)限 角色可以訪問的表與列操作權(quán) z 限 可訪問所有表完全控制權(quán)限 可訪問所有表完全控制權(quán)限例如 管理員 可訪問所有表完全控制權(quán)限 只可訪問 Car 表完全控制權(quán)限 只可訪問 Carclass 表完全控制權(quán)限角色 B 只可訪問 Rent 表完全控制權(quán)限 精品文檔 八 數(shù)據(jù)庫管理與維護(hù)說明八 數(shù)據(jù)庫管理與維護(hù)說明 一 完善管理制度 強(qiáng)化監(jiān)管力度 數(shù)據(jù)庫系統(tǒng)的安全與企業(yè)自身內(nèi)部的安全 機(jī)制 內(nèi)外網(wǎng)絡(luò)環(huán)境 從業(yè)人員素質(zhì)等密切相關(guān) 因此 企業(yè)應(yīng)該完善網(wǎng)絡(luò)系統(tǒng)安全 規(guī)章制度 防范因制度缺陷帶來的風(fēng)險 企業(yè)應(yīng)該規(guī)范操作流程和故障處理流程 減 少人為失誤與故障 提高故障處理速度 縮短故障處理時間 企業(yè)應(yīng)該通過建立科學(xué) 合理的責(zé)任追究機(jī)制 防止出現(xiàn)由于工作態(tài)度 工作作風(fēng)等各種人為因素導(dǎo)致的數(shù)據(jù) 庫安全事故 二 采取措施 確保數(shù)據(jù)庫數(shù)據(jù)的安全 保證數(shù)據(jù)庫數(shù)據(jù)的安全是數(shù)據(jù)庫日常 管理與維護(hù)工作的首要任務(wù) 企業(yè)需要采取的安全措施主要有 確保網(wǎng)絡(luò)及操作系統(tǒng) 安全 網(wǎng)絡(luò)系統(tǒng)是數(shù)據(jù)庫應(yīng)用的外部環(huán)境和基礎(chǔ) 網(wǎng)絡(luò)系統(tǒng)安全是數(shù)據(jù)庫安全的第一 道屏障 從技術(shù)角度講 網(wǎng)絡(luò)系統(tǒng)層次的安全防范技術(shù)有很多種 大致可以分為防火 墻 數(shù)字簽名與認(rèn)證 入侵檢測等 操作系統(tǒng)是數(shù)據(jù)庫系統(tǒng)的運(yùn)行平臺 能夠為數(shù)據(jù) 庫系統(tǒng)提供一定程度的安全保護(hù) 操作系統(tǒng)的安全控制方法主要是采用隔離控制 訪 問控制 信息加密和審計跟蹤 主要安全技術(shù)有操作系統(tǒng)安全策略 安全管理策略等 加強(qiáng)用戶身份驗證 用戶身份驗證是數(shù)據(jù)庫系統(tǒng)的重要防線 利用窗體身份驗證 數(shù)據(jù)庫程序的漏洞 進(jìn)而獲取存儲在數(shù)據(jù)庫中的用戶身份驗證密碼 這是目前對網(wǎng)絡(luò) 數(shù)據(jù)庫攻擊最常見的方式 對此 企業(yè)信息部門通常使用帶有 salt 值的單向密碼哈希 值 以避免用戶密碼在數(shù)據(jù)庫中以明文形式存儲 減輕字典攻擊帶來的威脅 對重要數(shù)據(jù)加密 數(shù)據(jù)加密交換又稱密碼學(xué) 是計算機(jī)系統(tǒng)對信息進(jìn)行保護(hù)的一 種最可靠的辦法 它利用密碼技術(shù)對信息進(jìn)行交換 實現(xiàn)信息隱蔽 從而有效保護(hù)信 息的安全不受侵犯 數(shù)據(jù)庫加密要求加解密的粒度是每個記錄的字段數(shù)據(jù) 采用庫外 口加密的方式 對密鑰的管理較為簡單 只需借用文件加密的密鑰管理方法 將加密 后的數(shù)據(jù)塊納入數(shù)據(jù)庫 在算法或數(shù)據(jù)庫系統(tǒng)中做些必要的改動就行 這樣有利于公 共數(shù)據(jù)字典的使用和維護(hù)系統(tǒng)的完整性 做好數(shù)據(jù)庫備份與恢復(fù) 數(shù)據(jù)備份是備份數(shù)據(jù)庫某個時刻的數(shù)據(jù)狀態(tài) 當(dāng)系統(tǒng)出 現(xiàn)意外時用來恢復(fù)系統(tǒng) 依靠網(wǎng)絡(luò)辦公的企業(yè) 其信息系統(tǒng)很可能隨時被破壞而丟失 精品文檔 數(shù)據(jù) 因此 數(shù)據(jù)庫管理系統(tǒng)必須具備把數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀 態(tài)的功能 這就是數(shù)據(jù)庫的恢復(fù)技術(shù) 三 開展數(shù)據(jù)庫健康檢查 為及時發(fā)現(xiàn)數(shù)據(jù)庫系統(tǒng)存在的問題 在日常管理與 維護(hù)中 數(shù)據(jù)管理員要對數(shù)據(jù)庫開展健康檢查 當(dāng)前 煙草行業(yè)內(nèi)大部分企業(yè)使用的 數(shù)據(jù)庫是 IBM DB2 對該數(shù)據(jù)庫進(jìn)行檢查時 檢查內(nèi)容主要包括以下七個方面 1 系統(tǒng)環(huán)境 操作系統(tǒng)版本 文件系統(tǒng)容量 內(nèi)存交換區(qū)使用率 系統(tǒng)性能 2 數(shù)據(jù)庫環(huán)境 數(shù)據(jù)庫和補(bǔ)丁版本 是否有僵尸數(shù)據(jù)庫進(jìn)程 數(shù)據(jù)庫節(jié)點(diǎn)數(shù) 是 否有其他數(shù)據(jù)庫產(chǎn)品及版本 3 日志記錄 db2diag log 報錯 db2inst1 nfy 報錯 是否有需要處理的 DUM 4 數(shù)據(jù)庫健康狀況 表空間利用率和狀態(tài) 表空間容器利用率和狀態(tài) 排序 溢出 是否需要收集統(tǒng)計信息 是否需要數(shù)據(jù)重組 活動日志和日志所在文件系統(tǒng)利 用率 死鎖發(fā)生率 鎖升級發(fā)生率 鎖等待的百分比 編目 Cache 命中率 包 Cache 命中率 監(jiān)視堆利用率 數(shù)據(jù)庫堆利用率 數(shù)據(jù)庫緩沖池命中率 5 數(shù)據(jù)庫維護(hù)內(nèi)容 最近一次統(tǒng)計信息收集時間 最近一次表數(shù)據(jù)重組時間 最 近一次綁定包時間 最近一次數(shù)據(jù)庫備份時間 6 權(quán)限管理 public 組的權(quán)限是否取消 7 數(shù)據(jù)庫基本信息記錄 數(shù)據(jù)庫內(nèi)存使用 環(huán)境變量 數(shù)據(jù)庫管理的意義重 大 關(guān)系到企業(yè)信息系統(tǒng)的正常運(yùn)作 仍至整個企業(yè)的生死存亡 要做好數(shù)據(jù)庫的日 常管理與維護(hù) 不僅要求數(shù)據(jù)庫管理員熟練掌握專業(yè)技術(shù) 還要有足夠的細(xì)心和高度 的責(zé)任心 8 18 1 課程設(shè)計總結(jié) 課程設(shè)計總結(jié) 本次課程設(shè)計不僅僅是對所學(xué)知識的總結(jié) 還是一種學(xué)習(xí)思想的升華 正所謂實踐 出真知 然而 當(dāng)我沿著步驟一步步進(jìn)行下去的時候 才意識到自己知識的淺薄和視野 的狹窄 通過這段時間的學(xué)習(xí) 讓我及組員深切體會到了一個完整的管理系統(tǒng)編寫的復(fù)雜程 度和困難程度 對軟件開發(fā)的流程也有了一個更清晰的了解 從一開始的可行性分析 系統(tǒng)需求分析 再到數(shù)據(jù)庫設(shè)計 功能模塊的設(shè)計和界面的設(shè)計 到最后的系統(tǒng)運(yùn)行與 精品文檔 測試 這個過程中 每一個步驟都很重要 缺一不可 當(dāng)然 由于自身技術(shù)能力不足 缺乏實際開發(fā)經(jīng)驗 再加上時間有限 本系統(tǒng)還有許多有待完善的部分 希望我能今后通過不斷地學(xué)習(xí)和實踐來提升自己的各方面能力 學(xué)會讓所學(xué)理論知 識與實際操作的融會貫通 為以后工作及生活中的系統(tǒng)軟件設(shè)計打下良好的基礎(chǔ) 九 附錄九 附錄 源代碼源代碼 9 19 1 數(shù)據(jù)庫源代碼數(shù)據(jù)庫源代碼 Navicat MySQL Data Transfer Source Server localhost Source Server Version 50523 Source Host localhost 3306 Source Database test Target Server Type MYSQL Target Server Version 50523 File Encoding 65001 Date 2016 05 27 23 32 49 SET FOREIGN KEY CHECKS 0 Table structure for car DROP TABLE IF EXISTS car 精品文檔 CREATE TABLE car CarNo varchar 10 NOT NULL DEFAULT CarColor varchar 10 DEFAULT NULL CarDate date DEFAULT NULL CarClassNo varchar 10 DEFAULT NULL CarState bit 2 DEFAULT NULL PRIMARY KEY CarNo KEY CarClassNo CarClassNo CONSTRAINT CarClassNo FOREIGN KEY CarClassNo REFERENCES carclass CarClassNo ENGINE InnoDB DEFAULT CHARSET utf8 Records of car INSERT INTO car VALUES 湘 L123SB 白色 2016 05 05 002 INSERT INTO car VALUES 湘 L124SB 紅色 2016 05 20 003 INSERT INTO car VALUES 湘 L125SB 灰色 2016 05 06 004 INSERT INTO car VALUES 湘 L126SB 銀色 2016 05 13 001 INSERT INTO car VALUES 湘 L138SB 玫瑰紅 2015 01 01 001 INSERT INTO car VALUES 湘 L250SB 熒光綠 2014 12 25 003 INSERT INTO car VALUES 湘 L520SB 寶藍(lán)色 2015 01 11 002 INSERT INTO car VALUES 湘 L546SB 綠 2016 05 01 001 INSERT INTO car VALUES 湘 L565SB 白 2016 05 05 004 Table structure for carclass DROP TABLE IF EXISTS carclass CREATE TABLE carclass 精品文檔 CarClassNo varchar 10 NOT NULL CarClassCnt varchar 10 NOT NULL CarClassDayPrice1 varchar 10 NOT NULL CarClassDayPrice2 varchar 10 NOT NULL CarClassMonthPrice varchar 10 NOT NULL CarClassBrand varchar 10 DEFAULT NULL CarClassseat varchar 10 DEFAULT NULL PRIMARY KEY CarClassNo ENGINE InnoDB DEFAULT CHARSET utf8 Records of carclass INSERT INTO carclass VALUES 001 1998 100000 200000 6000000 幻影 X5 2 INSERT INTO carclass VALUES 002 01 150000 250000 5000000 寶馬 R8 2 INSERT INTO carclass VALUES 003 01 200000 300000 6500000 蘭博基尼 2 INSERT INTO carclass VALUES 004 01 90000 230000 4500000 瑪 莎拉蒂 4 Table structure for customer DROP TABLE IF EXISTS customer CREATE TABLE customer CusNo varchar 10 NOT NULL CusName varchar 10 NOT NULL CusSex varchar 2 NOT NULL 精品文檔 CusAge varchar 4 NOT NULL CusPhone varchar 20 NOT NULL CusCompany varchar 20 NOT NULL CusPassword varchar 10 NOT NULL PRIMARY KEY CusNo ENGINE InnoDB DEFAULT CHARSET utf8 Records of customer INSERT INTO customer VALUES 431023001 文兄 女 20 183245 長 沙學(xué)院集團(tuán) 111111 INSERT INTO customer VALUES 431023002 徐福記 男 40 183255 長沙學(xué)院集團(tuán) 222222 INSERT INTO customer VALUES 431023003 王老吉 男 60 183265 長沙學(xué)院集團(tuán) 333333 INSERT INTO customer VALUES 431023004 劉明 女 20 183653 騰 訊 444444 INSERT INTO customer VALUES 431023005 張益達(dá) 男 24 183544 阿里巴巴 555555 INSERT INTO customer VALUES 431023006 黃飛鴻 女 30 183666 百度公司 666666 INSERT INTO customer VALUES 431023007 張小賤 男 45 183123 紅杉集團(tuán) 777777 INSERT INTO customer VALUES 431023008 王振 男 52 183125 方 正公司 888888 INSERT INTO customer VALUES 431023009 王哲 女 62 182153 阿 里巴巴 999999 INSERT INTO customer VALUES 431023010 何麗華 女 25 183425 騰訊 101010 精品文檔 Table structure for manege DROP TABLE IF EXISTS manege CREATE TABLE manege WorkNo varchar 10 NOT NULL DEFAULT CarNo varchar 10 NOT NULL DEFAULT PRIMARY KEY WorkNo CarNo KEY C

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論