版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 一、 引言3</b></p><p><b> 1.1課題來源3</b></p><p> 1.2課題研究主要內(nèi)容4</p><p><b> 1.3主要工作4</b>
2、;</p><p><b> 二、 需求分析5</b></p><p> 2.1、數(shù)據(jù)流圖5</p><p> 2.2、數(shù)據(jù)字典6</p><p><b> 1)、數(shù)據(jù)項(xiàng)6</b></p><p> 2)、數(shù)據(jù)結(jié)構(gòu)描述7</p><p&
3、gt; 3)、數(shù)據(jù)流的描述8</p><p> 4)、主要數(shù)據(jù)存儲(chǔ)的定義8</p><p> 三、概念結(jié)構(gòu)設(shè)計(jì)9</p><p> 3.1數(shù)據(jù)實(shí)體描述及分ER圖9</p><p> 3.2整體ER圖11</p><p> 四、系統(tǒng)概要設(shè)計(jì)11</p><p> 4.1數(shù)
4、據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)11</p><p> 4.2數(shù)據(jù)庫(kù)物理設(shè)計(jì)13</p><p> 4.3系統(tǒng)總體框架13</p><p> 五、系統(tǒng)詳細(xì)設(shè)計(jì)14</p><p> 5.1數(shù)據(jù)庫(kù)實(shí)施14</p><p> 1)、建立數(shù)據(jù)庫(kù)14</p><p> 2)、建數(shù)據(jù)庫(kù)中的基本表
5、15</p><p> 3)、數(shù)據(jù)裝載17</p><p> 4)、創(chuàng)建視圖18</p><p> 5)、存儲(chǔ)過程設(shè)計(jì)19</p><p> 6)、促發(fā)器設(shè)計(jì)19</p><p> 7)、創(chuàng)建索引20</p><p> 5.2數(shù)據(jù)庫(kù)的數(shù)據(jù)完整性設(shè)計(jì)20</p>
6、<p> 5.3數(shù)據(jù)的安全設(shè)計(jì)20</p><p> 5.4系統(tǒng)功能模塊的設(shè)計(jì)與實(shí)現(xiàn)21</p><p> 5.5系統(tǒng)功能測(cè)試22</p><p> 5.6數(shù)據(jù)庫(kù)性能檢測(cè)與備份設(shè)計(jì)29</p><p> 5.7系統(tǒng)安裝使用說明31</p><p> 六、回顧與展望32</p&
7、gt;<p><b> 參考文獻(xiàn)33</b></p><p><b> 一、 引言</b></p><p><b> 1.1課題來源</b></p><p> 隨著經(jīng)濟(jì)的發(fā)展,企業(yè)正向著大型化、規(guī)?;l(fā)展,而對(duì)于大中型企業(yè),員工、職稱等跟工資管理有關(guān)的信息隨之急劇增加。在這種情
8、況下單靠人工來處理員工的工資不但顯得力不從心,而且極容易出錯(cuò)。如何設(shè)計(jì)一個(gè)小型企業(yè)工資信息的數(shù)據(jù)庫(kù)管理系統(tǒng),由計(jì)算機(jī)代替人工執(zhí)行一系列諸如增加新員工,刪除舊員工,工資查詢,統(tǒng)計(jì)等操作。這樣就使辦公人員可以輕松快捷地完成工資信息管理的任務(wù)。 </p><p> 對(duì)于企、事業(yè)單位的工資發(fā)放來說,不需要太大型的數(shù)據(jù)庫(kù)系統(tǒng)。只需要一個(gè)操作方便,功能實(shí)用,能同時(shí)滿足財(cái)務(wù)部門、單位其他相關(guān)部門及代發(fā)單位三方對(duì)數(shù)據(jù)的管理及需
9、求的系統(tǒng)。企業(yè)的目標(biāo)就是在于利用編程軟件開發(fā)一個(gè)功能實(shí)用,用戶操作方便,簡(jiǎn)單明了的工資信息管理程序。 </p><p> 實(shí)現(xiàn)工資的集中管理??晒┴?cái)務(wù)人員對(duì)本單位的人員以及工資進(jìn)行增加、刪除、修改、查詢,對(duì)工資發(fā)放中的應(yīng)發(fā)工資合計(jì)等項(xiàng)目由系統(tǒng)自動(dòng)進(jìn)行計(jì)算;同時(shí)系統(tǒng)還可對(duì)員工及工資信息管理情況進(jìn)行多角度查詢。 </p><p> 基于以上原因,企業(yè)工資信息管理系統(tǒng)使用電腦安全保存、快速計(jì)
10、算、全面統(tǒng)計(jì),實(shí)現(xiàn)工資信息管理的系統(tǒng)化、規(guī)范化、自動(dòng)化。以Delphi7.0和SQL SERVER 2008為語言編寫管理信息系統(tǒng)的過程。該程序通過Delphi的ADO數(shù)據(jù)對(duì)象來實(shí)現(xiàn)Delphi前臺(tái)與后臺(tái)SQL SERVER數(shù)據(jù)庫(kù)的連接,并具有典型的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的特征,完成了系統(tǒng)結(jié)構(gòu)與現(xiàn)實(shí)生活的緊密結(jié)合。</p><p> 1.2課題研究主要內(nèi)容</p><p> 工資信息管理系統(tǒng)是
11、為了更好的實(shí)現(xiàn)工資各種信息的管理以及各種信息的安全性管理。本系統(tǒng)主要對(duì)查看員工的各種工資信息需求所設(shè)計(jì)的,可以很好的管理數(shù)據(jù)。</p><p><b> 1.3主要工作</b></p><p> 經(jīng)過調(diào)研及分析,工資信息管理系統(tǒng)主要完成以下功能:</p><p> (1) 管理員身份的確認(rèn):只有用戶名和用戶密碼都相符的管理員方可進(jìn)入本系統(tǒng)
12、,為了防止不合法用戶對(duì)數(shù)據(jù)的察看和修改,管理員可以設(shè)定用戶名、密碼和其權(quán)限,還可以對(duì)紀(jì)錄進(jìn)行增加、刪除、修改等操作。當(dāng)管理員要進(jìn)入系統(tǒng)時(shí)必須先輸入用戶名和密碼,按“確認(rèn)”按鈕后,系統(tǒng)辨別管理員身份,對(duì)合法管理員賦予權(quán)限。</p><p> ?。?) 員工基礎(chǔ)信息模塊:?jiǎn)T工的基本信息。</p><p> ?。?) 工資信息模塊:?jiǎn)T工每個(gè)月度的基本工資、職務(wù)工資、住房補(bǔ)助、生活補(bǔ)助、加班工資等
13、</p><p> ?。?) 部門信息模塊:各部門編號(hào)、名稱。</p><p> ?。?) 員工信息管理模塊:管理員對(duì)所需要的資料的查詢即對(duì)員工基本信息的增加、刪除、修改、查詢操作。</p><p> (6) 員工工資管理模塊:管理員對(duì)所需要的資料的查詢即對(duì)員工工資信息的增加、刪除、修改、查詢操作。</p><p><b> 二
14、、 需求分析</b></p><p><b> 2.1、數(shù)據(jù)流圖</b></p><p><b> 2.2、數(shù)據(jù)字典</b></p><p><b> 1)、數(shù)據(jù)項(xiàng)</b></p><p> 2)、 數(shù)據(jù)結(jié)構(gòu)描述</p><p>&l
15、t;b> 名稱:?jiǎn)T工</b></p><p> 含義說明:?jiǎn)T工基礎(chǔ)信息</p><p> 組成結(jié)構(gòu):?jiǎn)T工編號(hào)+員工姓名+部門編號(hào)+性別+年齡+文化程度</p><p><b> 名稱:工資</b></p><p><b> 含義說明:工資信息</b></p>
16、<p> 組成結(jié)構(gòu):?jiǎn)T工編號(hào)+基本工資+職務(wù)工資+加班天數(shù)+加班工資+事假天數(shù)+扣款+住房補(bǔ)助+生活補(bǔ)助+實(shí)發(fā)工資+時(shí)間</p><p><b> 名稱:部門</b></p><p><b> 含義說明:部門信息</b></p><p> 組成結(jié)構(gòu):部門編號(hào)+部門名稱</p><p&
17、gt;<b> 名稱:基本工資</b></p><p> 含義說明:基本工資信息</p><p> 組成結(jié)構(gòu):?jiǎn)T工編號(hào)+基本工資+職務(wù)工資</p><p><b> 名稱:浮動(dòng)工資</b></p><p> 含義說明:浮動(dòng)工資信息</p><p> 組成結(jié)構(gòu):?jiǎn)T工
18、編號(hào)+住房補(bǔ)助+生活補(bǔ)助</p><p><b> 3)、數(shù)據(jù)流的描述</b></p><p> 數(shù)據(jù)流名稱:?jiǎn)T工信息添加 簡(jiǎn)述:新員工信息錄入</p><p> 數(shù)據(jù)流來源:公司管理者</p><p> 數(shù)據(jù)流去向:?jiǎn)T工信息</p><p> 數(shù)據(jù)流組成:?jiǎn)T工編號(hào)+員工姓
19、名+部門編號(hào)+性別+年齡+文化程度</p><p> 數(shù)據(jù)流名稱:?jiǎn)T工信息修改 簡(jiǎn)述:?jiǎn)T工信息錯(cuò)誤或者員工調(diào)動(dòng)</p><p> 數(shù)據(jù)流來源:?jiǎn)T工信息</p><p> 數(shù)據(jù)流去向:?jiǎn)T工信息</p><p> 數(shù)據(jù)流組成:?jiǎn)T工編號(hào)+員工姓名+部門編號(hào)+性別+年齡+文化程度</p><p> 數(shù)據(jù)流名稱:
20、員工信息刪除 簡(jiǎn)述:?jiǎn)T工離職</p><p> 數(shù)據(jù)流來源:?jiǎn)T工信息</p><p> 數(shù)據(jù)流去向:?jiǎn)T工信息</p><p> 數(shù)據(jù)流組成:?jiǎn)T工編號(hào)+員工姓名+部門編號(hào)+性別+年齡+文化程度</p><p> 數(shù)據(jù)流名稱:工資添加 簡(jiǎn)述:新員工工資添加</p><p> 數(shù)據(jù)流來源:公司管理
21、者</p><p> 數(shù)據(jù)流去向:工資信息</p><p> 數(shù)據(jù)流組成:?jiǎn)T工編號(hào)+基本工資+職務(wù)工資+加班天數(shù)+加班工資+事假天數(shù)+扣款+住房補(bǔ)助+生活補(bǔ)助+實(shí)發(fā)工資+時(shí)間</p><p> 數(shù)據(jù)流名稱:工資修改 簡(jiǎn)述:公司對(duì)工資修改</p><p> 數(shù)據(jù)流來源:公司管理者</p><p>
22、 數(shù)據(jù)流去向:工資信息</p><p> 數(shù)據(jù)流組成:?jiǎn)T工編號(hào)+基本工資+職務(wù)工資+加班天數(shù)+加班工資+事假天數(shù)+扣款+住房補(bǔ)助+生活補(bǔ)助+實(shí)發(fā)工資+時(shí)間</p><p> 4)、主要數(shù)據(jù)存儲(chǔ)的定義</p><p><b> 存儲(chǔ)名稱:?jiǎn)T工記錄</b></p><p><b> 輸入:?jiǎn)T工基本信息<
23、;/b></p><p><b> 輸出:?jiǎn)T工所有信息</b></p><p> 數(shù)據(jù)結(jié)構(gòu):?jiǎn)T工編號(hào)+員工姓名+部門編號(hào)+性別+年齡+文化程度</p><p><b> 存儲(chǔ)名稱:部門記錄</b></p><p><b> 輸入:部門基本信息</b></p&
24、gt;<p><b> 輸出:部門所有信息</b></p><p> 數(shù)據(jù)結(jié)構(gòu):部門編號(hào)+部門名稱</p><p><b> 存儲(chǔ)名稱:工資記錄</b></p><p><b> 輸入:?jiǎn)T工工資信息</b></p><p> 輸出:?jiǎn)T工所有工資信息<
25、;/p><p> 數(shù)據(jù)結(jié)構(gòu):?jiǎn)T工編號(hào)+基本工資+職務(wù)工資+加班天數(shù)+加班工資+事假天數(shù)+扣款+住房補(bǔ)助+生活補(bǔ)助+實(shí)發(fā)工資+時(shí)間</p><p> 存儲(chǔ)名稱:浮動(dòng)工資記錄</p><p> 輸入:?jiǎn)T工浮動(dòng)工資信息</p><p> 輸出:?jiǎn)T工所有浮動(dòng)工資信息</p><p> 數(shù)據(jù)結(jié)構(gòu):?jiǎn)T工編號(hào)+住房補(bǔ)助+生活補(bǔ)
26、助</p><p> 存儲(chǔ)名稱:基本工資記錄</p><p> 輸入:?jiǎn)T工基本工資信息</p><p> 輸出:?jiǎn)T工所有基本工資信息</p><p> 數(shù)據(jù)結(jié)構(gòu):?jiǎn)T工編號(hào)+基本工資+職務(wù)工資</p><p><b> 三、概念結(jié)構(gòu)設(shè)計(jì)</b></p><p>
27、3.1數(shù)據(jù)實(shí)體描述及分ER圖</p><p> 圖3.1操作用戶信息E-R圖</p><p> 圖3.2員工基礎(chǔ)信息E-R圖</p><p> 圖3.3部門基礎(chǔ)信息E-R圖</p><p> 圖3.4員工基本工資E-R圖</p><p> 圖3.5 員工浮動(dòng)工資E-R圖</p><p>
28、; 圖3.6 工資發(fā)放明細(xì)E-R圖</p><p><b> 3.2整體ER圖</b></p><p> 圖3.7工資信息管理系統(tǒng)總E-R圖</p><p><b> 四、系統(tǒng)概要設(shè)計(jì)</b></p><p> 4.1數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 關(guān)系模式
29、:?jiǎn)T工基礎(chǔ)信息(員工編號(hào)、姓名、部門編號(hào)、性別、文化程度、年齡)</p><p> 部門信息(部門編號(hào)、部門名稱)</p><p> 員工基本工資信息(員工編號(hào)、基本工資、職務(wù)工資)</p><p> 員工浮動(dòng)工資信息(員工編號(hào)、住房補(bǔ)助、生活補(bǔ)助)</p><p> 工資發(fā)放明細(xì)(員工編號(hào)、基本工資、職務(wù)工資、加班天數(shù)、加班工資、事
30、假天數(shù)、扣款、住房補(bǔ)助、生活補(bǔ)助、實(shí)發(fā)工資、時(shí)間)</p><p> 操作用戶信息(用戶編號(hào)、用戶名、密碼)</p><p> 表5.1員工基礎(chǔ)信息表</p><p> 表5.2部門基礎(chǔ)信息表</p><p> 表5.3員工基本工資信息表</p><p> 表5.4員工浮動(dòng)工資項(xiàng)目表</p>&
31、lt;p> 表5.5工資發(fā)放明細(xì)表</p><p><b> 表5.6操作用戶表</b></p><p> 4.2數(shù)據(jù)庫(kù)物理設(shè)計(jì)</p><p> 數(shù)據(jù)庫(kù)物理設(shè)計(jì)階段的任務(wù)是根據(jù)具體計(jì)算機(jī)系統(tǒng)(DBMS和硬件等)的特點(diǎn),為給定的數(shù)據(jù)庫(kù)系統(tǒng)確定合理的存儲(chǔ)結(jié)構(gòu)和存取方法。所謂的“合理”主要有兩個(gè)含義:一個(gè)是要使設(shè)計(jì)出的物理數(shù)據(jù)庫(kù)占用較
32、少的存儲(chǔ)空間,另一個(gè)對(duì)數(shù)據(jù)庫(kù)的操作具有盡可能高的速度。主要體現(xiàn)在后者。 </p><p> (1)建立索引:對(duì)工資發(fā)放明細(xì)表,在屬性列 員工編號(hào)(EID) 實(shí)發(fā)金額(shifa)建立非聚簇索引</p><p> (2)存儲(chǔ)結(jié)構(gòu) 確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲(chǔ)結(jié)構(gòu),包括確定關(guān)系、索引、日志、備份等的存儲(chǔ)安排及存儲(chǔ)結(jié)構(gòu),以及確定系統(tǒng)存儲(chǔ)參數(shù)的配置。 將日志文件和數(shù)據(jù)庫(kù)對(duì)
33、象(表、索引等)分別放在不同的磁盤,可以改進(jìn)系統(tǒng)的性能,提高系統(tǒng)的安全性。所以,系統(tǒng)應(yīng)將日志文件和數(shù)據(jù)文件存放在不同磁盤上。</p><p> 本系統(tǒng)的數(shù)據(jù)庫(kù)建立不是很大,所以數(shù)據(jù)存儲(chǔ)采用的是一個(gè)磁盤的一個(gè)分區(qū)。</p><p><b> 4.3系統(tǒng)總體框架</b></p><p><b> 五、系統(tǒng)詳細(xì)設(shè)計(jì)</b>
34、</p><p><b> 5.1數(shù)據(jù)庫(kù)實(shí)施</b></p><p><b> 1)、建立數(shù)據(jù)庫(kù)</b></p><p> 2)、建數(shù)據(jù)庫(kù)中的基本表</p><p><b> a.部門基礎(chǔ)信息表</b></p><p><b> b.
35、員工基礎(chǔ)信息表</b></p><p> c.員工基本工資信息</p><p> d.員工浮動(dòng)工資項(xiàng)目表</p><p><b> e.工資發(fā)放明細(xì)表</b></p><p><b> 3)、數(shù)據(jù)裝載</b></p><p> 用同樣的方法裝載數(shù)據(jù),在此
36、不一一列出。最后裝載好的各個(gè)表信息如下:</p><p><b> 部門基礎(chǔ)信息</b></p><p><b> 員工基礎(chǔ)信息</b></p><p><b> c.員工基本工資表</b></p><p> d.員工浮動(dòng)工資項(xiàng)目表</p><p&g
37、t;<b> e.工資發(fā)放明細(xì)表</b></p><p><b> 4)、創(chuàng)建視圖</b></p><p> 建立一個(gè)視圖,反映員工的基本工資、職務(wù)工資、住房補(bǔ)助、生活補(bǔ)助情況。視圖命名為“工資_fafang”。</p><p><b> 5)、存儲(chǔ)過程設(shè)計(jì)</b></p>&l
38、t;p> I.定義一個(gè)名為“工資明細(xì)”的存儲(chǔ)過程,指定員工工資基本和浮動(dòng)情況,并將結(jié)果插入工資發(fā)放明細(xì)表中</p><p><b> 6)、促發(fā)器設(shè)計(jì)</b></p><p> a.工資發(fā)放明細(xì)表插入新數(shù)據(jù)時(shí),定義一個(gè)觸發(fā)器自動(dòng)求出實(shí)發(fā)金額的大小</p><p> 定義這個(gè)觸發(fā)器名稱為“工資_shifa”。</p>
39、<p> b.定義一個(gè)觸發(fā)器,在對(duì)上述的存儲(chǔ)過程執(zhí)行后,向工資發(fā)放明細(xì)表更新員工的事假和加班情況,命名為“工資明細(xì)_更新”</p><p><b> 7)、創(chuàng)建索引</b></p><p> 其索引項(xiàng)為工號(hào)、實(shí)發(fā)工資。</p><p> 5.2數(shù)據(jù)庫(kù)的數(shù)據(jù)完整性設(shè)計(jì)</p><p> a.實(shí)體完整性:
40、通過設(shè)置主鍵都已經(jīng)實(shí)現(xiàn)。部門信息表主鍵為“DID”;員工基礎(chǔ)信息表、員工基本工資表、員工浮動(dòng)工資項(xiàng)目表、工資發(fā)放明細(xì)表主鍵都為“EID”;</p><p> b.參照完整性:在員工基礎(chǔ)信息表中部門編號(hào)在本表中不為主碼,但在部門信息表中做主碼,所以為員工基礎(chǔ)信息表的外碼。員工信息表中的DID對(duì)應(yīng)部門信息中的DID,員工基本工資表、員工浮動(dòng)工資項(xiàng)目表中的EID對(duì)應(yīng)員工信息表中的EID。保證了參照完整性。</p
41、><p> c.在該系統(tǒng)中,設(shè)置了員工的年齡Age在18到60歲之間;性別只能為“男”或“女”;以及部門名稱Dname的唯一性約束和員工基礎(chǔ)信息表中Ename不為空的約束。</p><p> 當(dāng)違反數(shù)據(jù)庫(kù)的完整性約束時(shí),可以通過執(zhí)行建立的存儲(chǔ)過程,而觸發(fā)器是一種特殊類型的存儲(chǔ)過程,在制定表中的數(shù)據(jù)被修改,它會(huì)被觸發(fā)并自動(dòng)執(zhí)行,有效的實(shí)施數(shù)據(jù)完整性。</p><p>
42、 5.3數(shù)據(jù)的安全設(shè)計(jì)</p><p> 1)、創(chuàng)建一個(gè)登陸用戶,用戶名名為“SJK”,密碼為“3110006010”, 默認(rèn)連接到的數(shù)據(jù)庫(kù):“工資信息管理系統(tǒng)”。</p><p> 2)、創(chuàng)建一個(gè)用戶“CNA”</p><p> 3)、創(chuàng)建一個(gè)名為“R1”的角色。</p><p> 4)、為角色賦予對(duì)工資發(fā)放明細(xì)表的Select權(quán)
43、限</p><p> 5)、將角色R1授予用戶“CNA”,使其擁有R1所包含的全部權(quán)限</p><p> 5.4系統(tǒng)功能模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 系統(tǒng)功能模塊圖</b></p><p><b> 5.5系統(tǒng)功能測(cè)試</b></p><p><b
44、> 1)、登陸界面</b></p><p> 此功能模塊,包括兩種身份人員登陸“管理員”和“一般員工”,不同身份的人登陸后會(huì)進(jìn)入不同的界面,執(zhí)行自己擁有的權(quán)限。</p><p> 該模塊主要代碼:procedure TForm1.Button1Click(Sender: TObject);</p><p><b> begin&l
45、t;/b></p><p><b> with</b></p><p> adoquery1 do</p><p><b> begin</b></p><p><b> close;</b></p><p> SQL.Clear;<
46、;/p><p> Sql.Add ('select * from 操作用戶表 where (zhanghao=:a) and (pword=:b) and(shenfen=:c) ');</p><p> parameters.ParamByName('a').Value:=Trim(edit1.Text);</p><p> pa
47、rameters.ParamByName('b').Value:=Trim(edit2.Text);</p><p> parameters.ParamByName('c').Value:=Trim(ComboBox1.Text);</p><p><b> open;</b></p><p><b&g
48、t; end;</b></p><p> if adoquery1.RecordCount<=0 then</p><p><b> begin</b></p><p> application.MessageBox('!您輸入的賬號(hào)或密碼或身份不匹配!,請(qǐng)重新輸入','提示',0+64
49、);</p><p><b> Exit;</b></p><p><b> end</b></p><p> else begin</p><p> if(Trim(ComboBox1.Text)='管理員') then</p><p> app
50、lication.MessageBox('管理員,你好,歡迎登陸!','提示',0+64);</p><p> if(Trim(ComboBox1.Text)='員工') then</p><p> application.MessageBox('親愛的員工!歡迎登陸工資信息管理系統(tǒng)。','提示',0+6
51、4);</p><p> procedure TForm1.Button2Click(Sender: TObject);</p><p><b> begin</b></p><p> application.Terminate;</p><p><b> end;</b></p>
52、;<p> 2)、模塊選擇跳轉(zhuǎn)界面</p><p> 該功能是一個(gè)跳轉(zhuǎn)模塊,方便快捷找到需要相關(guān)操作的模塊。</p><p> 該功能詳細(xì)代碼:procedure TForm2.Button1Click(Sender: TObject);</p><p><b> begin</b></p><p>
53、; Form3.visible:=true;</p><p> Form2.visible:=false;</p><p><b> end;</b></p><p> 每個(gè)跳轉(zhuǎn)按鈕都是相關(guān)的模塊跳轉(zhuǎn)指令。</p><p> 3)、部門信息、基本工資和浮動(dòng)工資模塊</p><p> 這
54、三個(gè)模塊功能主要有相關(guān)數(shù)據(jù)的插入、刪除、修改、查詢。</p><p> 以下列出部門模塊(其他模塊代碼類似)功能主要代碼:</p><p> procedure TForm3.Button1Click(Sender: TObject);</p><p><b> begin</b></p><p> with A
55、DOQuery1 do</p><p><b> begin</b></p><p><b> Close;</b></p><p> SQL.Clear;</p><p> SQL.Add('insert 部門基礎(chǔ)信息表 values(:a,:b)');</p>
56、<p> Parameters.ParamByName('a').Value := Edit1.Text;</p><p> Parameters.ParamByName('b').Value := Edit2.Text;</p><p><b> ExecSQL;</b></p><p>&
57、lt;b> Close;</b></p><p> SQL.Clear;</p><p> SQL.add('select * from 部門基礎(chǔ)信息表');</p><p><b> Open;</b></p><p><b> end;</b><
58、;/p><p> Application.MessageBox('添加成功,點(diǎn)擊確定查看','提示',0+64);</p><p> end;//*這是插入數(shù)據(jù)對(duì)應(yīng)的代碼</p><p> procedure TForm3.Button2Click(Sender: TObject);</p><p><
59、b> begin</b></p><p><b> with</b></p><p> adoquery1 do</p><p><b> begin</b></p><p><b> Close;</b></p><p>
60、 SQL.Clear;</p><p> if(trim(Edit1.Text)<>'') then i:=1;</p><p> if (trim(Edit2.Text)<>'') then i:=2;</p><p><b> case i of</b></p>
61、<p><b> 1: begin</b></p><p> SQL.Text:='Delete from 部門基礎(chǔ)信息表 where DID=:a';</p><p> Parameters.ParamByName('a').Value:=trim(Edit1.Text);</p><p>&l
62、t;b> ExecSQL;</b></p><p> application.MessageBox('刪除成功,點(diǎn)擊確定查看','提示',0+64);</p><p><b> Close;</b></p><p> SQL.Clear;</p><p> SQ
63、L.add('select * from 部門基礎(chǔ)信息表');</p><p><b> Open;</b></p><p><b> end;</b></p><p><b> 2:begin</b></p><p> SQL.Text:='
64、Delete from 部門基礎(chǔ)信息表 where Dname=:a';</p><p> Parameters.ParamByName('a').Value:=trim(Edit2.Text);</p><p><b> ExecSQL;</b></p><p> application.MessageBox(&
65、#39;刪除成功,點(diǎn)擊確定查看','提示',0+64);</p><p><b> Close;</b></p><p> SQL.Clear;</p><p> SQL.add('select * from 部門基礎(chǔ)信息表');</p><p><b> Op
66、en;</b></p><p><b> end;</b></p><p><b> end;</b></p><p><b> end;</b></p><p> end;//*這是刪除模塊的代碼(注:修改及查詢模塊代碼和刪除大致相同,只是修改對(duì)應(yīng)的條件判
67、斷和SQL語句即可,在此不一一列出)。</p><p> 4)、員工基礎(chǔ)信息模塊</p><p> 該模塊除了和以上模塊有相似的插入、刪除、更新、查詢的基本功能外,還集合了模糊查詢、嵌套查詢、自身連接、分組查詢。</p><p> 查詢主要代碼:procedure TForm4.N1Click(Sender: TObject);</p><
68、p><b> begin</b></p><p> x:=inputBox('請(qǐng)輸入關(guān)鍵字','如:張','張');</p><p><b> with</b></p><p> adoquery1 do</p><p><b>
69、; begin</b></p><p><b> Close;</b></p><p> SQL.Clear;</p><p> SQL.add('select * from 員工基礎(chǔ)信息表 where Ename like '''+'%'+x+'%'
70、;+'''');</p><p><b> open;</b></p><p><b> end;</b></p><p> end;//*只要變動(dòng)相應(yīng)的SQL語句以及一些條件即可</p><p> 5)、工資發(fā)放明細(xì)模塊</p><p&g
71、t; 該模塊首先通過執(zhí)行事先定義好的存儲(chǔ)過程“工資_明細(xì)”將相關(guān)的數(shù)據(jù)導(dǎo)入到“工資發(fā)放明細(xì)表中”,避免的大量的查詢插入。而后再通過錄入員工的加班及事假情況,而這次錄入相當(dāng)于更新了該表中的數(shù)據(jù),進(jìn)而促發(fā)了“工資明細(xì)_更新”觸發(fā)器,進(jìn)而自動(dòng)將員工的所有工資信息進(jìn)行計(jì)算,然后將計(jì)算的結(jié)果插入到該表對(duì)應(yīng)的“shifa”即“實(shí)發(fā)金額”列,方便快捷。同時(shí)該模塊還有一定的統(tǒng)計(jì)功能,求和、求最大(小)、求平均、升降序排列等。</p>&
72、lt;p> 執(zhí)行存儲(chǔ)模塊主要代碼:procedure TForm7.Button2Click(Sender: TObject);</p><p><b> begin</b></p><p> with ADOQuery1</p><p><b> do</b></p><p><
73、;b> begin</b></p><p><b> Close;</b></p><p> SQL.Clear;</p><p> SQL.Add('exec 工資_明細(xì)');</p><p><b> ExecSQL;</b></p>&
74、lt;p> showmessage('已成功執(zhí)行存儲(chǔ)過程,相關(guān)數(shù)據(jù)已導(dǎo)入成功。') ;</p><p><b> Close;</b></p><p> SQL.Clear;</p><p> SQL.add('select * from 工資發(fā)放明細(xì)表');</p><p&g
75、t;<b> Open;</b></p><p><b> end;</b></p><p><b> end;</b></p><p> 求和等一些統(tǒng)計(jì)功能的主要代碼:</p><p> procedure TForm7.N2Click(Sender: TObjec
76、t);</p><p><b> begin</b></p><p><b> with</b></p><p> adoquery1 do</p><p><b> begin</b></p><p><b> Close;<
77、/b></p><p> SQL.Clear;</p><p> SQL.add('select Sum(shifa) 實(shí)發(fā)金額總和 from 工資發(fā)放明細(xì)表');</p><p><b> open;</b></p><p><b> end;</b></p
78、><p><b> end;</b></p><p> 6)、一般員工身份進(jìn)入查詢信息模塊</p><p> 每個(gè)員工只可以查看自己的一切信息。</p><p> 主要代碼:procedure TForm8.Button1Click(Sender: TObject);</p><p><
79、b> begin</b></p><p><b> with</b></p><p> adoquery1 do</p><p><b> begin</b></p><p><b> Close;</b></p><p>
80、 SQL.Clear;</p><p> SQL.add('select t.Dname,q.* from 部門基礎(chǔ)信息表 t,員工基礎(chǔ)信息表 q where t.DID=q.DID and q.EID='''+Form1.Edit1.Text+'''');</p><p><b> Open;</b&
81、gt;</p><p><b> end;</b></p><p><b> end;</b></p><p><b> 7)密碼修改模塊</b></p><p> 主要代碼:和向數(shù)據(jù)庫(kù)表中更新操作類似,只是要從登陸頁(yè)面獲取員工或管理員的信息,以下附上條件判斷部分:&l
82、t;/p><p> if(Edit1.Text<>Form1.Edit2.Text) then</p><p><b> begin</b></p><p> application.MessageBox('!當(dāng)前密碼輸入錯(cuò)誤,請(qǐng)重新輸入!','提示',0+64);</p><p
83、> Edit1.clear;</p><p><b> end;</b></p><p> if (Edit1.Text=Form1.Edit2.Text) and (Edit2.Text<>Edit3.Text) then</p><p> application.MessageBox('!兩次新密碼輸入不
84、同,請(qǐng)重新輸入!','提示',0+64);</p><p> if (Edit1.Text=Form1.Edit2.Text) and (Edit2.Text=Edit3.Text) and(length(Edit2.Text)<3) then</p><p> application.MessageBox('!密碼不得少于3位,請(qǐng)重新輸入!
85、9;,'提示',0+64);</p><p> if (Edit1.Text=Form1.Edit2.Text) and (Edit2.Text=Edit3.Text) and(length(Edit2.Text)>=3) then</p><p><b> begin</b></p><p> SQL.Text:=
86、'Update 操作用戶表 set pword='''+trim(Edit2.Text)+''' where zhanghao='''+Form1.Edit1.Text+'''';</p><p><b> ExecSQL;</b></p><p>
87、 application.MessageBox('!修改成功,請(qǐng)重新登錄!','提示',0+64);</p><p> 5.6數(shù)據(jù)庫(kù)性能檢測(cè)與備份設(shè)計(jì)</p><p><b> 1)、性能測(cè)試測(cè)試</b></p><p> 輸入的賬號(hào)、密碼和身份都匹配,則顯示登陸成功,點(diǎn)擊確定跳轉(zhuǎn)到選擇模塊。</p&
88、gt;<p> 選擇員工基礎(chǔ)信息,查詢編號(hào)為“1003”的員工信息,結(jié)果如下圖:</p><p> 模糊查詢,查詢姓“張”的員工信息,點(diǎn)擊模糊查詢,輸入“張”結(jié)果如下圖:</p><p> 查詢發(fā)放金額的平均值:</p><p> 2)、數(shù)據(jù)庫(kù)備份與恢復(fù)設(shè)計(jì)</p><p> 在“工資發(fā)放明細(xì)”模塊,添加一個(gè)ADOCo
89、mmand 、ADOCommand控件。</p><p><b> 備份設(shè)備:</b></p><p><b> 主要代碼如下:</b></p><p> procedure TForm7.Button5Click(Sender: TObject);</p><p><b> be
90、gin</b></p><p> adocommand1.Connection:=ADOConnection1;</p><p> adocommand1.CommandText:='BACKUP DATABASE 工資信息管理系統(tǒng) TO DISK='+''''+'F:\Study\BF\工資信息管理系統(tǒng)備份.bak&
91、#39;+''''+'WITH FORMAT';</p><p> adocommand1.CommandType:=cmdText;</p><p> adocommand1.Execute;</p><p> showmessage('數(shù)據(jù)庫(kù)備份完成!');</p><p&
92、gt;<b> end;</b></p><p><b> 恢復(fù)設(shè)備:</b></p><p> 主要代碼:procedure TForm7.Button6Click(Sender: TObject);</p><p><b> begin</b></p><p>
93、adoquery1.SQL.Clear;</p><p> adoquery1.SQL.Add('USE master');</p><p> adoquery1.SQL.Add('RESTORE DATABASE 工資信息管理系統(tǒng) from DISK='+''''+'F:\Study\BF\工資信息管理系統(tǒng)備份.
94、bak'+'''');</p><p> adoquery1.SQL.Add('USE 工資信息管理系統(tǒng)');</p><p> adoquery1.ExecSQL;</p><p> showmessage('數(shù)據(jù)庫(kù)恢復(fù)完成!');</p><p><b&g
95、t; end;</b></p><p> 5.7系統(tǒng)安裝使用說明</p><p> 在安裝有SQL server2008的電腦上,打開SQL server management stdio,將數(shù)據(jù)庫(kù)文件附加到SQL server </p><p> 下載安裝delphi 7,通過delphi ADO控件連接上附加的數(shù)據(jù)庫(kù),如圖:</p>
96、;<p> 點(diǎn)擊執(zhí)行文件projec1.EXE,輸入正確的身份驗(yàn)證即可。</p><p><b> 六、回顧與展望</b></p><p> 整個(gè)課程設(shè)計(jì)到現(xiàn)在已經(jīng)基本結(jié)束,在這次課程設(shè)計(jì)中自己遇到了很多問題與困難,通過自己一邊自學(xué)一邊摸索。運(yùn)用Delphi的友好的可視化編程環(huán)境為程序的編寫較為方便。自己從中學(xué)到了很多。</p>&l
97、t;p> 總結(jié)本系統(tǒng)的開發(fā)我做了如下工作,首先了解系統(tǒng)需要實(shí)現(xiàn)如下功能:具有良好的操作界面;模塊能夠自由增加、修改、刪除及查詢信息;建立數(shù)據(jù)庫(kù)備份機(jī)制,并提供數(shù)據(jù)災(zāi)難恢復(fù)功能;支持?jǐn)?shù)據(jù)的查詢機(jī)制;自動(dòng)計(jì)算員工工資;收集數(shù)據(jù),分析數(shù)據(jù),創(chuàng)建數(shù)據(jù)表。最后進(jìn)行系統(tǒng)整體設(shè)計(jì),完成各個(gè)前臺(tái)窗體設(shè)計(jì)和具體的代碼實(shí)現(xiàn)。在這次課程設(shè)計(jì)中,我查閱了大量的書籍,在網(wǎng)上也查了不少的資料,使我的編程水平有了很大的提高,我學(xué)到了許多以前在課堂上面學(xué)不到的
98、知識(shí),并且對(duì)系統(tǒng)的開發(fā)有了初步的了解。在使用Delphi提供的ADO數(shù)據(jù)庫(kù)操作組件實(shí)現(xiàn)了對(duì)數(shù)據(jù)的各項(xiàng)操作,也熟悉了delphi的開發(fā)開發(fā)應(yīng)用環(huán)境和軟件開發(fā)的一般流程。</p><p> 同時(shí)在設(shè)計(jì)過程中,我也發(fā)現(xiàn)了自己的不足,因?yàn)槭鞘状芜M(jìn)行這樣的課題開發(fā),在代碼的實(shí)現(xiàn)上略現(xiàn)笨拙,整個(gè)程序在架構(gòu)上也算不上完美,我相信通過今后的學(xué)習(xí)和實(shí)踐,自己在開發(fā)能力一定能夠得到大大的提高。 </p><p&
99、gt;<b> 參考文獻(xiàn)</b></p><p> 薩師煊,王珊 數(shù)據(jù)庫(kù)系統(tǒng)概論[M]. 高等教育出版社</p><p> 郝安林,康會(huì)光等 SQL server2008基礎(chǔ)教程與實(shí)驗(yàn)指導(dǎo) 清華大學(xué)出版社</p><p> 陳豫龍 Delphi數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)實(shí)例導(dǎo)航 人民郵電出版社</p><p&g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)--工資信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)系統(tǒng)原理課程設(shè)計(jì)---工資管理系統(tǒng)
- 工資信息管理系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---宿舍信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--教室信息管理系統(tǒng).
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- 住院管理系統(tǒng)-數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-員工信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--顧客信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--員工信息管理系統(tǒng)系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-客房信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--教師信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--顧客信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)----藥品信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)系統(tǒng)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論