

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 數(shù)據(jù)庫系統(tǒng)是計算機應(yīng)用領(lǐng)域中使用最廣泛的技術(shù)之一,它為我們提供了一種把與我們的工作和生活緊密相關(guān)的信息集合在一起的方法,還有在某個集中的地方存儲和維護這些信息的方法。數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)是Delphi程序設(shè)計的重要組成部分,在Delphi中創(chuàng)建數(shù)據(jù)庫程序,其過程和方法如同創(chuàng)建其他類型的Delphi應(yīng)用程序一樣簡單、快捷。而Mi
2、crosoft SQL Server 2000是一個面向二十一世紀(jì)的高性能的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),是微軟.NET戰(zhàn)略的重要一環(huán)。在此的 “人事管理系統(tǒng)” ,是基于C/S(客戶機/服務(wù)器)開發(fā)模式,用SQL Server 2000作為數(shù)據(jù)庫開發(fā)平臺,以Delphi為訪問程序開發(fā)工具,利用面向?qū)ο缶幊痰南冗M方法,開發(fā)的一個實用程序。</p><p> 企業(yè)人事管理系統(tǒng)主要用于員工個人資料的錄入、職務(wù)變動的記錄和管理
3、。使用人事管理系統(tǒng),便于公司領(lǐng)導(dǎo)掌握人員的動向,及時調(diào)整人才的分配,以獲取最大的經(jīng)濟效益。</p><p> 本文具體闡述了本應(yīng)用系統(tǒng)的開發(fā)工具、開發(fā)思想和開發(fā)方法。有不足之處,請多多見諒。</p><p> 【關(guān)鍵詞】 數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng) 人事管理系統(tǒng)</p><p> 【論文類型】 應(yīng)用研究</p><p> Pe
4、rsonnel Management System Edited In Delphi6</p><p> ABSTRACT Database system, which supplies not only a kind of way we organize the information that have something to do between our work and our daily lives
5、 but a certain way we store and maintain those information in one position, has been considered the one of the most widely used technologies in the field of computer application. The research to the database application
6、is an essential proportion of the Delphi program design, as the period of the initialing other type of Delphi program, it is a</p><p> The corporation personnel management system is mainly used for storing
7、employee‘s personal files, conversion and management for the change of the positions. It is so convenient for the boss to control the personnel case that he can make adjustment in time to max the profit. </p><
8、;p> The article talks about the tools, methods, and way of designing. There must be mistakes, thanks for reading.</p><p> 【Key words】 Database System Database management System</p><p> P
9、ersonnel Management System</p><p> 【Type of Thesis】 Applied Research</p><p><b> 摘 要1</b></p><p> 第1章 Delphi數(shù)據(jù)庫編程5</p><p> 1.1 Delphi的數(shù)據(jù)庫特性和功能簡介5<
10、;/p><p> 1.1.1 Delphi的數(shù)據(jù)庫特性6</p><p> 1.1.2 Delphi可以訪問的數(shù)據(jù)源(DataSource)7</p><p> 1.2 數(shù)據(jù)訪問部件7</p><p> 1.3 數(shù)據(jù)控制部件9</p><p> 1.4 數(shù)據(jù)庫訪問技術(shù)10</p>
11、<p> 第2章 人事管理系統(tǒng)的總體分析與設(shè)計12</p><p> 2.1 系統(tǒng)功能分析12</p><p> 2.2 系統(tǒng)功能模塊的設(shè)計12</p><p> 2.3 數(shù)據(jù)庫設(shè)計13</p><p> 2.3.1 數(shù)據(jù)庫需求分析13</p><p> 2.3.2 數(shù)據(jù)庫
12、概念結(jié)構(gòu)設(shè)計14</p><p> 2.3.3 數(shù)據(jù)庫邏輯設(shè)計14</p><p> 第3章 數(shù)據(jù)庫的建立16</p><p> 3.1 SQL Server 簡介16</p><p> 3.2 創(chuàng)建數(shù)據(jù)庫17</p><p> 3.3 SQL Server 2000 數(shù)據(jù)庫表的創(chuàng)建和管理
13、18</p><p> 3.4 連接ODBC數(shù)據(jù)源21</p><p> 第4章 系統(tǒng)各功能模塊設(shè)計24</p><p> 4.1 主窗口的創(chuàng)建24</p><p> 4.1.1 菜單的創(chuàng)建24</p><p> 4.1.2 設(shè)置菜單主要屬性24</p><p>
14、 4.1.3 給主窗口添加圖像25</p><p> 4.1.4 添加代碼26</p><p> 4.2 系統(tǒng)登錄窗口的創(chuàng)建27</p><p> 4.2.1. 系統(tǒng)登錄窗口的窗體設(shè)計27</p><p> 4.2.2 系統(tǒng)登錄窗口的代碼設(shè)計28</p><p> 4.3 增加新員工模塊
15、的實現(xiàn)29</p><p> 4.3.1 增加新員工模塊的窗體設(shè)計29</p><p> 4.3.2 增加新員工窗口的代碼設(shè)計31</p><p> 4.4 人事變動模塊的實現(xiàn)32</p><p> 4.4.1 人事變動窗口的窗體設(shè)計32</p><p> 4.4.2 人事變動窗口的代碼設(shè)
16、計34</p><p> 4.5 簡單查詢模塊的創(chuàng)建35</p><p> 4.5.1 簡單查詢模塊的窗體設(shè)計35</p><p> 4.5.2 簡單查詢窗口的代碼設(shè)計36</p><p> 4.6 模糊查詢模塊的創(chuàng)建37</p><p> 4.6.1 模糊查詢窗口的窗體設(shè)計37<
17、/p><p> 4.6.2 模糊查詢窗口的代碼設(shè)計38</p><p> 4.7 員工信息修改模塊的實現(xiàn)40</p><p> 4.7.1 員工信息修改窗口的窗體設(shè)計40</p><p> 4.7.2 員工信息修改的代碼設(shè)計42</p><p> 4.8 員工信息刪除模塊的實現(xiàn)43</p
18、><p> 4.9 關(guān)于窗口的創(chuàng)建43</p><p> 第5章 系統(tǒng)的調(diào)試和運行44</p><p><b> 結(jié)束語44</b></p><p> 第1章 Delphi數(shù)據(jù)庫編程</p><p> 1.1 Delphi的數(shù)據(jù)庫特性和功能簡介</p><p
19、> 計算機軟件的開發(fā)分為兩個不同的體系,其中一個體系是使用傳統(tǒng)的程序設(shè)計語言(如Pascal、Basic和C等)開發(fā)數(shù)據(jù)控制、數(shù)值運算等軟件,圍繞它們的重點是算術(shù)、數(shù)據(jù)結(jié)構(gòu)以及今年產(chǎn)生的面向?qū)ο蠹夹g(shù)。另一個體系則是通用的數(shù)據(jù)庫管理軟件領(lǐng)域(數(shù)據(jù)庫應(yīng)用程序的開發(fā))。這兩個體系的發(fā)展都極為迅猛,但是二者并沒出現(xiàn)混合滲透跡象。如果使用數(shù)據(jù)庫語言進行傳統(tǒng)的算術(shù)編程,雖然也能完成相應(yīng)的功能,但是其編程過程可能極為復(fù)雜。如果使用傳統(tǒng)的編程語
20、言進行數(shù)據(jù)庫編程,通過調(diào)用專用的數(shù)據(jù)庫應(yīng)用程序接口函數(shù)和過程,利用這些函數(shù)和過程提供的功能,可能也能做得比較完善,但者做起來大多是極其困難的。而Delphi結(jié)合了兩個體系的優(yōu)點,它結(jié)合了傳統(tǒng)的編程語言O(shè)bject Pascal和數(shù)據(jù)庫語言的強大功能,它即可以用于傳統(tǒng)的算術(shù)編程又可以用于數(shù)據(jù)庫編程,特別是Delphi具有強大的數(shù)據(jù)庫功能,利用Delphi的數(shù)據(jù)庫工具,用戶根本不需要編寫任何Object Pascal代碼便可以創(chuàng)建一個簡單的
21、數(shù)據(jù)庫應(yīng)用。</p><p> Delphi是Borland公司于1994年底發(fā)布的用于開發(fā)數(shù)據(jù)庫應(yīng)用程序的工具,它是面向?qū)ο蟮?,它是目前開發(fā)客戶/服務(wù)器數(shù)據(jù)庫應(yīng)用程序的強有力的工具。Delphi目前具有三個版本:標(biāo)準(zhǔn)版、專業(yè)版和企業(yè)版。標(biāo)準(zhǔn)版本包含一個Borland Database Engine的局部拷貝,它允許用戶創(chuàng)建能訪問dBASE、Paradox和Local InterBase服務(wù)器的數(shù)據(jù)庫應(yīng)用,它還
22、支持具有ODBC接口的數(shù)據(jù)庫。Delphi 的客戶/服務(wù)器版本包括Borland SQL Link,它能直接訪問ORACLE、SyBase和Microsoft SQL Server,Informix以及InterBase數(shù)據(jù)庫服務(wù)器。</p><p> Delphi可以訪問多種數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)庫,憑借窗體(Forms)和報表(Reports),BDE(Borland Database Engine)可以訪問
23、諸如Paradox、dBASE、本地InterBase服務(wù)器的數(shù)據(jù)庫,也可以訪問遠程數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)庫(如ORACLE、SyBase、Informix等可戶/服務(wù)器數(shù)據(jù)庫中的數(shù)據(jù)庫),或任何經(jīng)ODBC(Open Database Connecticity)可訪問的數(shù)據(jù)庫管理系統(tǒng)中的數(shù)據(jù)庫。為了訪問數(shù)據(jù)資源,程序員必須通過BDE(Borland Database Engine)或ADO(ActiveXData Objects)或Int
24、erBase Express來建立數(shù)據(jù)庫與Delphi數(shù)據(jù)庫數(shù)據(jù)訪問組件的連接。</p><p> Delphi的數(shù)據(jù)庫特性</p><p> 跟其他的應(yīng)用程序一樣,Delphi提供了許多部件以方便地創(chuàng)建數(shù)據(jù)庫應(yīng)用程序。數(shù)據(jù)庫對象的數(shù)據(jù)成員即可在設(shè)計階段設(shè)置,也可在運行階段通過程序代碼進行設(shè)置。Delphi的部件板上提供了兩頁數(shù)據(jù)庫應(yīng)用程序開發(fā)中所使用的部件:</p>&
25、lt;p> 數(shù)據(jù)訪問頁(Data Access Page)上的部件用于直接訪問數(shù)據(jù)庫中的數(shù)據(jù)庫表。</p><p> 數(shù)據(jù)控制頁(Data Control Page)上的部件用來與用戶交互,顯示、修改數(shù)據(jù)庫中的數(shù)據(jù)。</p><p> 數(shù)據(jù)庫應(yīng)用程序首先是利用Delphi提供的數(shù)據(jù)庫部件與BDE建立聯(lián)系,然后再通過BDE與數(shù)據(jù)庫聯(lián)系。</p><p>
26、 表1-1概括了Delphi的數(shù)據(jù)庫特性</p><p> 表1-1 Delphi的數(shù)據(jù)庫特性</p><p> 工具和部件 主要用途</p><p> Data Access Components 訪問數(shù)據(jù)庫、數(shù)據(jù)庫表、存貯過程等</p><p> Data Control Comp
27、onents 與用戶交互,提供顯示、修改數(shù)據(jù)庫中數(shù)據(jù)的界面</p><p> Database Desktop(DBD) 建立、索引、查詢數(shù)據(jù)庫表以及訪問、編輯來自各數(shù)據(jù)中的數(shù)據(jù)</p><p> ReportSmith 建立、瀏覽和打印數(shù)據(jù)庫表中的數(shù)據(jù)</p><p> Borland Databa
28、se Engine(BDE) 數(shù)據(jù)庫應(yīng)用通過BDE訪問dBASE Paradox數(shù)據(jù)庫中的數(shù)據(jù)和本地InterBase數(shù)據(jù)庫服務(wù)器中的數(shù)據(jù)</p><p> BDE Configuration Utility 建立和管理BDE與數(shù)據(jù)庫建立連接時所使用的數(shù)據(jù)庫別名</p><p> Local InterBase Server 是一個單用戶、多例程的本地S
29、QL數(shù)據(jù)庫服務(wù)器,可在單機環(huán)境下用來開發(fā)或測試客戶/服務(wù)器數(shù)據(jù)庫應(yīng)用程序,然后再將之?dāng)U展成一個訪問遠程數(shù)據(jù)庫服務(wù)器如ORACLE、SyBase、Informix等</p><p> InterBase SQL Link 連接Delphi數(shù)據(jù)庫應(yīng)用程序一本地InterBase服務(wù)器的驅(qū)動程序</p><p> Delphi上述這些特性使得創(chuàng)建數(shù)據(jù)庫應(yīng)用程序通過BDE
30、能夠很靈活地與dBASE、Paradox、Local InterBase數(shù)據(jù)庫服務(wù)器進行連接并可以方便地訪問其中的數(shù)據(jù)。用戶在創(chuàng)建一個簡單的數(shù)據(jù)庫應(yīng)用時通過使用Delphi提供的上述工具和部件甚至可以不許編寫任何程序。</p><p> BDE被自動地包含在Delphi中,因此,在創(chuàng)建數(shù)據(jù)庫應(yīng)用程序時,不必關(guān)系BDE的有關(guān)內(nèi)容。Delphi的安裝程序自動為Paradox、dBASE和本地InterBaseSer
31、ver安裝相應(yīng)的驅(qū)動程序,并建立了有關(guān)的配置,DBE Configuration Utility可以建立應(yīng)用程序與數(shù)據(jù)庫的連接信息,還可以為數(shù)據(jù)庫設(shè)置別名。</p><p> 1.1.2 Delphi可以訪問的數(shù)據(jù)源(DataSource)</p><p> Delphi數(shù)據(jù)庫應(yīng)用程序是通過BDE獲取它們所需的數(shù)據(jù)的,BDE與不同類型的數(shù)據(jù)源打交道,BDE可以使用的數(shù)據(jù)源見表1-2。
32、</p><p> 表1-2 Delphi可訪問的數(shù)據(jù)源</p><p> 數(shù)據(jù)源(DataSource) 文件擴展名 特性描述 </p><p> dBASE數(shù)據(jù)庫 .DBF 數(shù)據(jù)庫表是通過dBASE數(shù)據(jù)庫管理系統(tǒng)或DBD建立的,每個表是一個獨立的文件</p>
33、<p> Paradox數(shù)據(jù)庫 .DB 數(shù)據(jù)庫表是通過Paradox數(shù)據(jù)庫管理系統(tǒng)或DBD建立,每個表是一個獨立的文件</p><p> ASCII文件 .TXT 表是通過Database Desktop建立的,每個</p><p><b> 表是一個獨立的文件</b><
34、;/p><p> 本地InterBase服務(wù)器 .GDB 數(shù)據(jù)庫是通過InterBase數(shù)據(jù)庫管理系統(tǒng)建立的,多個表包含在一個數(shù)據(jù)庫文件中</p><p> SQL數(shù)據(jù)庫服務(wù)器: 依賴不同的數(shù) 數(shù)據(jù)庫是通過相應(yīng)的數(shù)據(jù)庫服務(wù)器提供的</p><p> ORACLE,Sybase, 據(jù)庫管理系統(tǒng) 專用或通過工具建立的,也可以通過D
35、BD</p><p> Informix Microsoft 來創(chuàng)建數(shù)據(jù)庫,并通過SQL Link訪問數(shù)</p><p> SQL Server InterBase 據(jù)庫</p><p> ODBC數(shù)據(jù)源 依賴于相應(yīng)的 主要是指那些具有ODBC接口的數(shù)據(jù)庫系</p
36、><p> 數(shù)據(jù)庫 統(tǒng)如MS Access,Btrieve等 </p><p> 1.2 數(shù)據(jù)訪問部件</p><p> 數(shù)據(jù)訪問組件頁上提供了一組數(shù)據(jù)訪問組件用來訪問數(shù)據(jù)庫中的數(shù)據(jù)。當(dāng)要創(chuàng)建一個數(shù)據(jù)庫應(yīng)用時,首先在窗口中選擇一個數(shù)據(jù)訪問組件,然后為數(shù)據(jù)訪問組件設(shè)置有關(guān)的屬性,說明要訪問的數(shù)據(jù)庫、數(shù)據(jù)表及表中的記錄等,數(shù)據(jù)訪問組
37、件為數(shù)據(jù)控制組件與數(shù)據(jù)源建立了一條通道。數(shù)據(jù)訪問組件在程序運行時是不可見的。圖1-1是Delphi6提供的通過BDE接口訪問數(shù)據(jù)庫的數(shù)據(jù)訪問組件。</p><p> 圖1-1 BDE頁上的數(shù)據(jù)訪問組件</p><p><b> Ttable部件</b></p><p> Ttable構(gòu)件是Delphi中最基本、最靈活的數(shù)據(jù)集構(gòu)件??梢允?/p>
38、用該構(gòu)件存取數(shù)據(jù)庫表的每一行、每一列。通過Ttable構(gòu)件,你可以按行按列查看和編輯數(shù)據(jù)庫表中的數(shù)據(jù),也可以設(shè)置條件,確定一個操作的記錄范圍。利用Ttable部件程序員甚至可以不需要編寫任何程序便可對數(shù)據(jù)庫進行訪問,在一個應(yīng)用程序中放置一個Ttable部件的過程如下:</p><p> 在部件選擇板上選擇Data Access頁。</p><p> 單擊Table圖標(biāo)。</p&g
39、t;<p> 在窗體內(nèi)單擊鼠標(biāo),獲得一個Ttable部件。</p><p> 為Ttable部件設(shè)置有關(guān)屬性:</p><p> DatabaseName屬性指定要訪問的數(shù)據(jù)庫所在的路徑名,路徑名可以用別名來表示。</p><p> TableName屬性指定要訪問數(shù)據(jù)庫中具體的數(shù)據(jù)庫表。</p><p> Activ
40、e屬性設(shè)置為True時,表示打開要訪問的數(shù)據(jù)庫表;設(shè)置為False時,暫時不打開要訪問的數(shù)據(jù)庫表。</p><p> 缺省情況下,Ttable部件中包含了要訪問數(shù)據(jù)庫表中所有字段和記錄,用鼠標(biāo)雙擊Ttable圖標(biāo)時,會出現(xiàn)一個字段編輯器(Fields Editor),使用Fields Editor可以對Ttable部件中包含的數(shù)據(jù)庫表中的字段的顯示格式等屬性進行編輯。</p><p>&
41、lt;b> TQuery部件</b></p><p> Tquery構(gòu)件提供一種使用SQL語句進行數(shù)據(jù)訪問的方法。該方法可以指定一個表中需要使用的記錄集合或列集合,也可以指定需要同時訪問的多個數(shù)據(jù)表。Tquery部件是程序員使用SQL語言開發(fā)數(shù)據(jù)庫應(yīng)用程序的有力工具,因為使用SQL語言,可以非常方便靈活地對一個或多個數(shù)據(jù)庫表中的記錄進行訪問,所以利用Tquery可以查詢本地的數(shù)據(jù)庫如para
42、dox和dBASE數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù),還可以使用Tquery部件對一個遠地的數(shù)據(jù)庫SQL服務(wù)器進行訪問,建立客戶/服務(wù)器模式的應(yīng)用程序。</p><p> DatabaseName屬性指定將要訪問的數(shù)據(jù)庫的路徑名。</p><p> SQL屬性指定對數(shù)據(jù)庫表進行訪問的SQL語句。在對象瀏覽器上,單擊SQL屬性時,會打開一個字符串編輯器供程序設(shè)計者輸入SQL語句。在Tquery部件中,不
43、是用TableName屬性來指定要訪問的數(shù)據(jù)庫中的數(shù)據(jù)庫表,而是在SQL屬性中,通過SQL語句來指定將要訪問的數(shù)據(jù)庫表。</p><p> TdataSource部件</p><p> TdataSource部件是連接數(shù)據(jù)集部件TTable、Tquery、TstoredProc和數(shù)據(jù)控制部件TDBGrid、TDBEdit等的橋梁,TTable、TQuery、TstoredProc部件通
44、過BDE可以實現(xiàn)與磁盤上的數(shù)據(jù)庫連接即訪問,但它們本身不能顯示數(shù)據(jù)庫中的數(shù)據(jù)信息,而數(shù)據(jù)控制部件如TDBGrid、TDBEdit等能夠提供可視化的界面,顯示數(shù)據(jù)庫中的數(shù)據(jù)信息,但它們不具備訪問磁盤數(shù)據(jù)庫的能力,正是TdataSource將這兩者有機地結(jié)合起來,使得用戶才能交互地對數(shù)據(jù)庫中的數(shù)據(jù)信息進行查詢、修改、插入、刪除等操作。</p><p> 同樣按照上述方法在窗體中添加TdataSource部件,該部件
45、最重要的屬性是Dataset。</p><p> Dataset屬性指定一個數(shù)據(jù)集部件,可以是TTable、TQuery或TstoredProc部件的名字。</p><p> 1.3 數(shù)據(jù)控制部件</p><p> 數(shù)據(jù)控制部件頁上的部件,主要用于設(shè)計用戶界面,對數(shù)據(jù)庫中的數(shù)據(jù)進行瀏覽、編輯、插入、刪除等操作。因而數(shù)據(jù)控制部件常常又被稱為數(shù)據(jù)瀏覽部件,數(shù)據(jù)控
46、制部件其實是在Standard頁上的標(biāo)準(zhǔn)部件的基礎(chǔ)上,相應(yīng)地增加了數(shù)據(jù)瀏覽功能,使得它們能夠顯示和編輯數(shù)據(jù)庫中數(shù)據(jù)信息。如圖1-2所示。</p><p> 圖1-2 數(shù)據(jù)控制頁上的數(shù)據(jù)控制部件</p><p> 數(shù)據(jù)控制部件既能夠把數(shù)據(jù)庫中的數(shù)據(jù)顯示到窗體中,又可以將其自身的經(jīng)過修改的數(shù)據(jù)寫回到數(shù)據(jù)庫中。表1-3列出了數(shù)據(jù)控制頁上的數(shù)據(jù)控制部件及它們的主要用途。</p>
47、<p> 表1-3 數(shù)據(jù)控制部件</p><p> 部件名稱 主要用途</p><p> TDBGrid 用網(wǎng)格的形式顯示數(shù)據(jù)庫表中的記錄信息,網(wǎng)格中的各列可以在設(shè)計階段使用字段編輯器創(chuàng)建也可以在運行過程中用程序設(shè)定</p><p> TDBNavigator 使用該部件可以向前
48、向后移動記錄指針,可以使用該部件對單條記錄進行編輯,還可以用它來插入、刪除記錄以及刷新顯示和取消前一次的操作</p><p> TDBText 它是顯示數(shù)據(jù)庫中的數(shù)據(jù)的文本框,它只能顯示數(shù)據(jù)庫表當(dāng)前記錄的字段值,用戶不能對其中的數(shù)據(jù)進行修改</p><p> TDBEdit 它是顯示和編輯數(shù)據(jù)庫表中數(shù)據(jù)的編輯框,它可以顯示和編輯數(shù)據(jù)表
49、中當(dāng)前記錄的字段值</p><p> TDBCheckBox 它是瀏覽數(shù)據(jù)庫中的數(shù)據(jù)的檢查框,它可以用來顯示和編輯數(shù)據(jù)庫中的布爾型字段的字段值</p><p> TDBListBox 它是瀏覽數(shù)據(jù)庫中的數(shù)據(jù)的列表框,它可以用一個列表框來顯示數(shù)據(jù)庫表中一個字段的值</p><p> TDBComboBox 是瀏覽
50、數(shù)據(jù)庫中的數(shù)據(jù)的組合框,可以用一個組合框來顯示數(shù)據(jù)表中一個字段的值</p><p> TDBRadioGroup 是瀏覽數(shù)據(jù)庫表中的數(shù)據(jù)的單選鈕,用一組單選鈕可以確定數(shù)據(jù)表中那一個字段</p><p> TDBMemo 主要用于瀏覽數(shù)據(jù)庫中備注型的字段,可以用來顯示數(shù)據(jù)表中當(dāng)前記錄中的BLOB型字段</p><p> TDBI
51、mage 是瀏覽數(shù)據(jù)庫中的數(shù)據(jù)的圖象框,可以用于顯示、拷貝、粘貼數(shù)據(jù)庫表中圖象類型的字段</p><p> TDBLookUpList 是瀏覽數(shù)據(jù)表中的數(shù)據(jù)的列表框,在基于一個數(shù)據(jù)庫表的應(yīng)用中,用它可以顯示另一個數(shù)據(jù)庫表中一個指定的字段值</p><p> TDBLookUpCombox 是瀏覽數(shù)據(jù)庫表中的數(shù)據(jù)的組合框,在基于一個數(shù)據(jù)庫表的應(yīng)用中,
52、用它可以顯示另一個數(shù)據(jù)庫表中一個指定的字段值</p><p> TDBRichEdit 以RTF格式顯示備注字段的內(nèi)容</p><p> TDBCtrlGrid 與TDBGrid相似,但每一個單元都可以分別設(shè)置屬性</p><p> TDBChart 以圖表的形式顯示數(shù)據(jù)庫的數(shù)據(jù),用法與Tchart相似
53、 </p><p> 數(shù)據(jù)控制部件為開發(fā)Delphi數(shù)據(jù)庫應(yīng)用程序提供可視化的用戶界面,不管應(yīng)用程序是訪問本地數(shù)據(jù)庫中的數(shù)據(jù)文件,還是訪問遠程數(shù)據(jù)庫服務(wù)器中的數(shù)據(jù)文件,用戶界面都是一致的,即數(shù)據(jù)庫的物理位置對數(shù)據(jù)控制部件是透明的。</p><p> 以上我們介紹了一些利用Delphi開發(fā)數(shù)據(jù)庫的基本控件,在以后的開發(fā)應(yīng)用程序過程中,它們得到了大量使用。</p>
54、;<p> 1.4 數(shù)據(jù)庫訪問技術(shù)</p><p> Delphi提供了對BDE、ODBC等多種數(shù)據(jù)庫驅(qū)動的支持,能夠滿足不同應(yīng)用對數(shù)據(jù)庫程序開發(fā)的需要。在發(fā)布用Delphi開發(fā)的數(shù)據(jù)庫程序時,除了要安裝應(yīng)用程序之外,還需要同時發(fā)布數(shù)據(jù)庫驅(qū)動程序,以保證程序與數(shù)據(jù)庫能夠正確地連接。</p><p> BDE(Borland數(shù)據(jù)庫引擎)是一個API定義,它為Delphi
55、應(yīng)用程序提供一個本地數(shù)據(jù)庫支持。Borland數(shù)據(jù)庫管理器提供BDE的配置管理。BDE管理器在控制面板的應(yīng)用程序中,它使您可以為被支持的數(shù)據(jù)庫和ODBC別名指定一個別名,此別名使用本地BDE數(shù)據(jù)庫驅(qū)動程序。當(dāng)您在應(yīng)用程序中包括BDE單元的時候,你可以使用本地C/C++類型的API調(diào)用來直接管理數(shù)據(jù)庫。在Delphi6下通過TTable、TQuery和TstoredProc等控件就可以完全實現(xiàn)基于BDE驅(qū)動的數(shù)據(jù)庫訪問。</p>
56、;<p> 開放式數(shù)據(jù)庫連接驅(qū)動引擎ODBC是20世紀(jì)90年代流行起來的,它為應(yīng)用程序創(chuàng)建一個數(shù)據(jù)庫連接的協(xié)議。它也是一個API定義。每一個廠商都可以創(chuàng)建DLL來實現(xiàn)同等的并與ODBC API兼容的API過程。ODBC的一個重要的目標(biāo)是將應(yīng)用程序?qū)懙絆DBC API中,開發(fā)者改變數(shù)據(jù)庫引擎而不用修改代碼。這個特性和靈活性是ODBC得到廣泛使用。</p><p> 第2章 人事管理系統(tǒng)系統(tǒng)設(shè)計&
57、lt;/p><p> 2.1 系統(tǒng)功能分析</p><p> 開發(fā)數(shù)據(jù)庫的應(yīng)用程序之前,必須清楚地了解程序需要實現(xiàn)的各項功能,對程序的功能塊做出清晰的劃分,設(shè)計出應(yīng)用程序的結(jié)構(gòu)。這個應(yīng)用程序根據(jù)要實現(xiàn)的功能可分為四大部分:</p><p> ● 新員工資料的輸入;</p><p> ● 人事變動的詳細記錄,包括崗位和部門的調(diào)整;
58、</p><p> ● 員工信息的查詢,包括簡單查詢(根據(jù)員工號)和模糊查詢;</p><p> ● 員工信息的修改;</p><p> 2.2 系統(tǒng)功能模塊的設(shè)計</p><p> 圖2-1 人事管理系統(tǒng)功能模塊圖</p><p> 具體各功能塊完成的任務(wù)如下:</p>&l
59、t;p> 用戶登錄功能塊首先利用用戶登錄功能塊實現(xiàn)對用戶的分類,普通員工和管理員,他們具有不同的權(quán)限,有不同的員工號和密碼。不同用戶會進入不同的界面,完成不同的功能。用戶必須輸入正確的員工號和密碼才能進入下一個界面,如果用戶名或密碼錯誤,應(yīng)用程序會給出不同的出錯信息。</p><p> 新員工系統(tǒng)界面,管理人員主要完成以下功能:員工基本信息的錄入、員工加入公司時間以及新員工加入的人事變動記錄。</
60、p><p> 人事變動功能塊中,管理員要輸入具體的變動信息,如記錄號、變動時間、變動原因等。應(yīng)用程序負責(zé)把管理員輸入的信息存入到人事變動列表中,為以后的查詢提供人事變動方面的資料。</p><p> 員工信息查詢界面,普通員工和管理員都可進入,來查詢員工信息。此功能塊應(yīng)能實現(xiàn)兩大功能:其一,這種功能實現(xiàn)比較簡單:系統(tǒng)根據(jù)查詢?nèi)藛T輸入的員工編號來進行查詢;另一功能相對復(fù)雜一點,系統(tǒng)能根據(jù)查詢
61、人員輸入的不確定信息來找出具有某種屬性的人員,例如:只知道某員工是女性,根據(jù)此信息,找出公司里的全部女性成員。在此基礎(chǔ)上可進一步查詢,如還知道她屬于那一部門,這樣可進一步縮小查詢范圍。查詢結(jié)果由查詢?nèi)藛T提供的信息量決定。</p><p> 員工信息修改界面,只有管理人員才能進入,主要對員工的某些信息進行修改,如員工號、密碼、所屬部門、職務(wù)等的變動。</p><p> 刪除員工信息界面,
62、可根據(jù)員工號刪除本員工的所有信息。</p><p><b> 數(shù)據(jù)流程圖</b></p><p> 系統(tǒng)的數(shù)據(jù)流程圖如圖2-2所示,所有數(shù)據(jù)由人事科管理人員輸入。</p><p> 圖2-2 人事管理系統(tǒng)數(shù)據(jù)流程圖</p><p> 2.3 數(shù)據(jù)庫設(shè)計</p><p> 2.3.1
63、 數(shù)據(jù)庫需求分析</p><p> 根據(jù)數(shù)據(jù)流程圖,可以列出以下數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu):</p><p> 員工信息:員工號、密碼、權(quán)限、姓名、性別、生日、部門、職務(wù)、教育程度、專業(yè)、通訊地址、電話、E-mail、當(dāng)前狀態(tài)、其他。</p><p> 人事變動:記錄號、姓名、變動原因、變動時間、變更原因等。</p><p> 2.3.2 數(shù)
64、據(jù)庫概念結(jié)構(gòu)設(shè)計</p><p> 圖2-3 是人事管理系統(tǒng)的E-R圖。 歸 屬</p><p><b> 變動-員工</b></p><p><b> 管 理</b></p><p> 圖2-3 人事管理系統(tǒng)E-R圖</p><p&g
65、t; 再設(shè)置部門、職務(wù)、學(xué)歷、用戶權(quán)限、變動原因的備選范圍分別為:</p><p> 部門:生產(chǎn)部、規(guī)劃部、人事部、銷售部、后勤部</p><p> 職務(wù):小組成員、組長、項目經(jīng)理、部門經(jīng)理、總經(jīng)理</p><p> 學(xué)歷:高中、中專、大專、大學(xué)本科、碩士、博士、博士后</p><p> 用戶權(quán)限:查詢、添加與修改</p>
66、;<p> 變動原因:新員工加入、職務(wù)變動、辭退</p><p> 當(dāng)前狀態(tài):員工、非員工</p><p> 2.3.3 數(shù)據(jù)庫邏輯設(shè)計</p><p> 根據(jù)系統(tǒng)E-R圖,本系統(tǒng)需要有2個數(shù)據(jù)表分別來存放員工個人信息和人事變動記錄。這2個數(shù)據(jù)表的結(jié)構(gòu)如表2-1和2-2所示。</p><p> 表2-1 PERSO
67、N員工個人信息表</p><p> 表2-2 PERSONNALCHANGE 人事變更記錄表</p><p> 至此,系統(tǒng)的總體設(shè)計已經(jīng)完成。</p><p> 第3章 數(shù)據(jù)庫的建立</p><p> 在此應(yīng)用程序中,是用SQL Server 2000來建立數(shù)據(jù)庫。首先,讓我們了解一下Microsoft SQL Serv
68、er 2000。</p><p> 3.1 SQL Selver 概述</p><p> Microsoft SQL Server 2000是一個面向二十一世紀(jì)的高性能的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),是微軟.NET戰(zhàn)略的重要一環(huán)。SQL Server 是一種基于客戶機/服務(wù)器的Relational Database Management System(關(guān)系型數(shù)據(jù)庫管理系統(tǒng)),或者簡稱RDBM
69、S,是用來建立數(shù)據(jù)庫的引擎。</p><p> SQL Server 使用客戶機/服務(wù)器體系結(jié)構(gòu)將所有的工作負荷分解成在服務(wù)器上的任務(wù)和在客戶機上的任務(wù)??蛻魴C應(yīng)用程序負責(zé)商業(yè)邏輯和向用戶提供數(shù)據(jù),一般運行在一個或多個客戶機上,也可以運行在服務(wù)器上。服務(wù)器管理數(shù)據(jù)庫和分配可用的數(shù)據(jù)庫資源,如內(nèi)存、網(wǎng)絡(luò)帶寬和磁盤操作。客戶機應(yīng)用程序界面允許應(yīng)用程序在單獨的客戶機上運行,并且通過網(wǎng)絡(luò)與服務(wù)器通訊。</p>
70、;<p> SQL Server 2000 是作為服務(wù)器運行的Windows應(yīng)用程序,與Windows NT和Windows 2000完全集成,并且利用了NT的許多功能。SQL Server 2000可與Windows NT 的安全性系統(tǒng)集成、可支持多協(xié)議、作為NT的服務(wù)、利用NT的性能監(jiān)測器和使用Microsoft Index Server。這就是說,它要運行在Windows環(huán)境下,并且啟動后需要極少的用戶交互。SQL
71、 Server 2000 提供了用于建立用戶連接、提供數(shù)據(jù)安全性和查詢請求服務(wù)的全部功能。你所要做的是建立一個數(shù)據(jù)庫和與之交互的應(yīng)用程序,不用為背景過程擔(dān)心。</p><p> SQL Server包括三個服務(wù),既SQL Server, SQL Server Agent 和 Distributed Transaction Coordinator(MSDTC)服務(wù)。SQL Server 服務(wù)器就是SQL Serv
72、er 的RDBMS。SQL Server Agent 服務(wù)用于管理任務(wù)、警報和操作員。MSDTC 服務(wù)是并列事務(wù)管理器,用于管理分布于兩個以上的數(shù)據(jù)庫、消息隊列或文件系統(tǒng),協(xié)調(diào)多服務(wù)器之間的事務(wù)一致性。</p><p> 3.2 創(chuàng)建數(shù)據(jù)庫</p><p> 創(chuàng)建數(shù)據(jù)庫的過程實際上就是為數(shù)據(jù)庫提供名稱、大小和所存放的數(shù)據(jù)庫文件的過程。數(shù)據(jù)庫的名稱必須滿足系統(tǒng)的標(biāo)識符規(guī)則。數(shù)據(jù)庫名稱最
73、長可達128個字符,第一個字符必須是字母,其余的字符可以是字母、數(shù)字和幾個特殊符號,例如:@, $, #, -。在給數(shù)據(jù)庫命名時,一定要使數(shù)據(jù)庫名稱簡短且有意義。數(shù)據(jù)庫的信息屬于系統(tǒng)級的信息,存貯在master數(shù)據(jù)庫的sysdatabases系統(tǒng)表中。因此,在創(chuàng)建數(shù)據(jù)庫的時候,當(dāng)前數(shù)據(jù)庫應(yīng)該是master數(shù)據(jù)庫。當(dāng)新數(shù)據(jù)庫創(chuàng)建后,系統(tǒng)自動把model數(shù)據(jù)庫中的系統(tǒng)表復(fù)制到新數(shù)據(jù)庫中。這樣,新數(shù)據(jù)庫自動具有model數(shù)據(jù)庫中的系統(tǒng)表結(jié)構(gòu)。
74、創(chuàng)建數(shù)據(jù)庫需要一定的許可。在默認(rèn)情況下,只有sysadmin和 dbcreator 固定服務(wù)器角色的成員才擁有創(chuàng)建數(shù)據(jù)庫的許可。當(dāng)然,這種許可也可以授權(quán)給其他用戶。當(dāng)數(shù)據(jù)庫創(chuàng)建之后,數(shù)據(jù)庫的用戶就自動成為數(shù)據(jù)庫的所有者。在一個服務(wù)器中,最多能創(chuàng)建32767個數(shù)據(jù)庫。</p><p> 創(chuàng)建數(shù)據(jù)庫有3種方法:</p><p> ?。?) 使用創(chuàng)建數(shù)據(jù)庫向?qū)В?lt;/p><
75、p> ?。?) 使用SQL Server Enterprise Manager;</p><p> ?。?) 使用CREATE DATABASE 語句。</p><p> 本應(yīng)用程序使用SQL Server Enterprise Manager (企業(yè)管理器)創(chuàng)建數(shù)據(jù)庫??砂匆韵虏襟E創(chuàng)建數(shù)據(jù)庫。</p><p> 啟動企業(yè)管理器,在左邊的目錄結(jié)構(gòu)中打開指定
76、的服務(wù)器組和服務(wù)器,選擇其中的數(shù)據(jù)庫文件夾。右擊該文件夾,則彈出一個快捷菜單,在該菜單中選擇“新建數(shù)據(jù)庫”選項。這時出現(xiàn)“數(shù)據(jù)庫屬性”窗口,在該窗口中有三個選項卡:常規(guī),數(shù)據(jù)文件和事物日志。常規(guī)選項卡最上面的部分要求在一個文本框中輸入該數(shù)據(jù)庫的名稱。中間是該數(shù)據(jù)庫的狀態(tài)屬性,最下面是該數(shù)據(jù)庫的對照名,使用默認(rèn)值即可。此處不用設(shè)置“數(shù)據(jù)文件”與“事務(wù)日志”選項卡。此處,我們把應(yīng)用數(shù)據(jù)庫的數(shù)據(jù)庫名設(shè)為“renshi”,點擊確定按鈕,就設(shè)置了
77、名為“renshi”的新數(shù)據(jù)庫。</p><p> SQL Server 2000 對試圖訪問服務(wù)器的用戶將會進行四層檢查。用戶每次都要被檢查是否具有適當(dāng)?shù)脑L問權(quán)。如果他們有,將被放行;如果沒有,用戶將收到一個出錯信息,其進程被終止。</p><p> 3.3 SQL Server 2000 數(shù)據(jù)庫表的創(chuàng)建和管理</p><p> 創(chuàng)建了一個數(shù)據(jù)庫以后,就可
78、以在該數(shù)據(jù)庫中創(chuàng)建表了表是一種最重要的數(shù)據(jù)庫對象,它在數(shù)據(jù)庫中存貯數(shù)據(jù),可以創(chuàng)建自己的數(shù)據(jù)表。同時表是用來存儲數(shù)據(jù)和操作數(shù)據(jù)的邏輯結(jié)構(gòu),其結(jié)構(gòu)和電子表格相似,由行和列組成。本文主要介紹創(chuàng)建SQL Server 2000 數(shù)據(jù)表的相關(guān)知識。使用企業(yè)管理器創(chuàng)建、修改和刪除表。</p><p> 企業(yè)管理器提供了方便的圖形化工具——表設(shè)計窗口,在這個窗口中可以輕松地創(chuàng)建并管理一個數(shù)據(jù)表,其步驟如下:</p>
79、;<p> ?。?)打開企業(yè)管理器,在企業(yè)管理器中的樹狀目錄窗口中展開需要創(chuàng)建新表的數(shù)據(jù)庫。</p><p> ?。?)單擊“表”節(jié)點,此時該數(shù)據(jù)庫中的表對象會顯示在內(nèi)容窗口中,然后選擇下列操作之一打開表設(shè)計窗口。</p><p> 在該節(jié)點上單擊鼠標(biāo)右鍵,在彈出菜單中選擇“新建表”命令(如圖3-1所示);</p><p> 在操作菜單上選擇“操作
80、/新建表”命令;</p><p> 單擊工具欄上的“新建”按鈕。</p><p> 圖3-1 新建一個數(shù)據(jù)表</p><p> 1. 定義數(shù)據(jù)表字段</p><p> 表設(shè)計窗口由上下兩個窗口組成(如圖3-2所示),上面的窗口來定義表字段的一般屬性,下面的窗口用來定義各個表字段的特殊屬性。所謂一般屬性,是指表中所有字段共有的屬性,
81、如字段名、字段長度、字段數(shù)據(jù)類型和字段值是否為空(如圖3-2)。而特殊屬性的設(shè)置會根據(jù)字段數(shù)據(jù)類型的不同而有所不同。例如,只有一個字段的數(shù)據(jù)類型為數(shù)值型時,才能設(shè)置小數(shù)位數(shù)屬性。</p><p> 下面對創(chuàng)建表時經(jīng)常設(shè)置的屬性加以說明。</p><p> 列名:指定字段名稱,每個表至多可以定義1024個字段。字段名要遵守標(biāo)示符的規(guī)定,在特定表中必須是唯一的,但同一數(shù)據(jù)庫中的不同表可使用
82、相同的列名。</p><p> 數(shù)據(jù)類型:指定該字段的數(shù)據(jù)類型。用戶可以自己輸入也可以從下拉列表中選擇,但是輸入的數(shù)據(jù)類型必須與下拉列表中所列數(shù)據(jù)類型相匹配。如果定義了用戶自定義數(shù)據(jù)類型,該類型也會自動出現(xiàn)在這個下拉列表框中。</p><p> 圖3-2 表設(shè)計窗口 </p><p> 長度:指定字段的長度,
83、也就是字段所占字節(jié)數(shù)。</p><p> 允許空:指定該字段在表中是否允許空值??罩当硎緵]有輸入,但并不等于零或零長度的字符串(如“”)。如果指定一列不允許空值,那么用戶在向表中寫入數(shù)據(jù)時必須在列中輸入一個值,否則改行不被接收入數(shù)據(jù)庫。</p><p> 描述:指定字段的注釋文本描述。</p><p> 默認(rèn)值:指定字段的默認(rèn)值。默認(rèn)值是指在插入記錄時沒有指定
84、字段值的情況下,自動使用的值。</p><p> 精度:指定該字段的位數(shù)。對于decimal和numeric數(shù)據(jù)類型的字段可以設(shè)置精度屬性。</p><p> 小數(shù)位數(shù):顯示該列值小數(shù)點右邊能出現(xiàn)的最多數(shù)字個數(shù)。</p><p> 標(biāo)識:指定一個字段是否為標(biāo)識字段。只有bigint、int、smallint、tinyint、decimal和numeric可以設(shè)
85、置該屬性??赡艿闹涤幸韵氯齻€。</p><p> 否——不設(shè)置該字段為表識字段。</p><p> 是——指定該字段為標(biāo)識字段,設(shè)置了該屬性以后,在插入一個新的數(shù)據(jù)行時不必為字段指定數(shù)值,系統(tǒng)會根據(jù)標(biāo)識種子和標(biāo)識遞增量自動生成一個字段值。</p><p> 是(不適用于復(fù)制)——和第二個選項功能相似,但如果是以復(fù)制的方式向表中輸入數(shù)據(jù),系統(tǒng)將不自動生成字段值。
86、</p><p> 標(biāo)識種子:指定標(biāo)識字段的初始值。該選項只適用于其“標(biāo)識”屬性設(shè)置為“是”或“是(不適用于復(fù)制)”的字段,默認(rèn)值為1。</p><p> 標(biāo)識遞增量:指定標(biāo)識字段的遞增值。該選項只適用于其“標(biāo)識”屬性設(shè)置為“是”或“是(不適用于復(fù)制)”的字段,默認(rèn)值為1。</p><p> 排序規(guī)則:指定當(dāng)字段值用于對查詢結(jié)果的記錄進行排序時的排序規(guī)則,默認(rèn)
87、情況下使用數(shù)據(jù)庫默認(rèn)設(shè)置。當(dāng)插入點移動到此字段時,可以單擊@@按鈕更改排序規(guī)則。</p><p> 本應(yīng)用程序采用系統(tǒng)默認(rèn)設(shè)置。如圖3-3所示。</p><p> 圖3-3 設(shè)置表字段屬性</p><p><b> 保存表格</b></p><p> 在完成以上步驟以后,就可以將表格保存。方法是單擊工具欄上的“
88、保存”按鈕@@,然后在“選擇名稱”對話框中輸入表名,單擊“確定”即可。</p><p> 圖3-4 PERSON員工信息表</p><p> 圖3-5 PERSONNALCHANGE人事變動信息表</p><p> 3. 向表中添加數(shù)據(jù)</p><p> 剛剛建好的新表中不包含任何記錄,可按以下步驟向表中添加記錄:</p&g
89、t;<p> 在企業(yè)管理器的樹狀目錄中選擇剛剛建好的表格;</p><p> 選擇菜單:“操作/打開表/返回所有行”命令,打開數(shù)據(jù)錄入窗口;</p><p> 在數(shù)據(jù)錄入窗口輸入新的表記錄,也可以使用這個窗口對記錄進行修改和刪除等操作。</p><p> 本應(yīng)用程序中所建的表如圖3-4和圖3-5所示</p><p>
90、3.4 連接ODBC數(shù)據(jù)源</p><p> 開放式數(shù)據(jù)庫連接(Open Database Connectivity, ODBC)是由Microsoft定義的一套數(shù)據(jù)庫訪問標(biāo)準(zhǔn),包含在所有的Microsoft Windows操作系統(tǒng)中。ODBC是一組重要的數(shù)據(jù)庫訪問API的集合,用來訪問關(guān)系型數(shù)據(jù)庫或者ISAM(indexed sequential access method)數(shù)據(jù)庫。ODBC可以用來訪問不
91、同平臺上的數(shù)據(jù)庫,例如SQL Server、Oracle或者DB2。</p><p> 在開始使用ODBC之前,必須安裝一個ODBC驅(qū)動程序,并配置一個數(shù)據(jù)源。在系統(tǒng)上安裝任何一個支持Microsoft ODBC的應(yīng)用程序時,一般都會安裝Microsoft SQL Server ODBC 驅(qū)動程序。僅僅安裝了SQL Server ODBC驅(qū)動程序,還不能使用ODBC,還需要創(chuàng)建一個數(shù)據(jù)源。其過程如下:</
92、p><p> 在Windows 2000的管理工具中找到ODBC數(shù)據(jù)源管理器,雙擊該圖表,則顯示一個如圖3-6所示的窗口。</p><p> 圖3-6 ODBC數(shù)據(jù)源管理器</p><p> 在該窗口中,顯示了所有當(dāng)前安裝的數(shù)據(jù)源。用戶DSN選項卡顯示了可以由當(dāng)前登錄用戶使用的數(shù)據(jù)源清單;系統(tǒng)DSN選項卡顯示可以由系統(tǒng)上所有用戶使用的系統(tǒng)數(shù)據(jù)源清單;文件DSN選
93、項卡顯示可以連接到一個文件上的數(shù)據(jù)源清單。單擊“添加”按鈕,則出現(xiàn)創(chuàng)建新數(shù)據(jù)源對話框,在該窗口中,你可以選擇連接數(shù)據(jù)源的驅(qū)動程序。這里,我們選擇SQL Server,單擊完成按鈕,則轉(zhuǎn)向下一對話框,它是與你選擇的驅(qū)動程序相關(guān)的。在該窗口中,輸入DSN名稱“renshi”、數(shù)據(jù)源描述(設(shè)為空)以及連接的主機名。單擊“下一步”按鈕。下一步是選擇認(rèn)證模式,選擇“使用網(wǎng)絡(luò)登錄ID的Windows NT驗證”項,單擊“下一步”按鈕,則出現(xiàn)圖3-7
94、。設(shè)置默認(rèn)數(shù)據(jù)庫為“renshi”,其余選項采用默認(rèn)設(shè)置,單擊“下一步”按鈕,在出現(xiàn)的新窗口中繼續(xù)采用默認(rèn)設(shè)置。單擊“完成”按鈕,數(shù)據(jù)源配置完成。接著彈出一個確認(rèn)完成配置的對話框,在該對話框中,總結(jié)了用戶選擇的所有設(shè)置,并允許測試數(shù)據(jù)源以確??捎?。單擊“測試數(shù)據(jù)源”按鈕以檢測連接,如果連接成功,會出現(xiàn)“測試成功”對話框。</p><p> 圖 3-7 ODBC SQL Server DSN配置對話框</
95、p><p> 至此,就建立了一個名為“renshi”的SQL Server ODBC數(shù)據(jù)源,可以在應(yīng)用程序中使用它了。</p><p> 第4章 系統(tǒng)各功能模塊的實現(xiàn)</p><p> 根據(jù)系統(tǒng)功能要求,可以將系統(tǒng)分解成八個功能模塊來分別設(shè)計:人事管理系統(tǒng)主窗口、系統(tǒng)登錄模塊、增加新員工模塊、人事變動模塊、簡單查詢模塊、復(fù)雜查詢模塊、員工信息修改模塊、刪除員工信
96、息模塊和About窗口。與此對應(yīng)的是該程序由9個窗體組成,各窗體設(shè)置如表4-1所示。</p><p> 表4-1 窗體設(shè)計對照表</p><p> 4.1 主窗口的創(chuàng)建</p><p> 啟動Windows,并從“開始”菜單選擇“Borland Delphi 6”/“Delphi 6”,以啟動Delphi。在“File”菜單中選擇“New Applicat
97、ion”選項,系統(tǒng)將創(chuàng)建一個名為Project1的新工程。</p><p> 4.1.1 菜單的創(chuàng)建</p><p> 在Delphi中可使用組件欄和菜單設(shè)計器快速建立自己的菜單。實際應(yīng)用中,菜單可分為兩種基本類型:主菜單(mainmenu)和彈出式菜單(popmenu)。主菜單一般稱為菜單欄,其中包括一個或多個選擇項稱為菜單項。主菜單控件對象在設(shè)計期窗體上顯示為正方型的區(qū)塊,對象名
98、為“MainMenu”,雙擊這個對象即彈出菜單設(shè)計窗口。選中菜單項,就可以在對象監(jiān)視窗口中修改菜單項的屬性。</p><p> 在對象編輯器中,輸入其caption屬性(例如:File,Edit等),若輸入“&B標(biāo)題板”則表示可按<Ctrl>+<B>或<Alt>+<B>鍵來選擇此功能,其中“&”符號后的第一個字符稱為加速字符。若輸入“-”則表示要建
99、立菜單的分隔線,將菜單項分組。</p><p> 有時會在已建好的菜單中,插入一個新的菜單項或刪除一個菜單選項,這時就可用鼠標(biāo)選定將要插入或刪除的位置,按<Insert>鍵則新的空白菜單項會出現(xiàn)在所選位置的左側(cè),若按<Delete>鍵則將刪除所選菜單項。</p><p> 4.1.2 設(shè)置菜單主要屬性</p><p> 表4-2 菜
100、單屬性表</p><p> 菜單欄 菜單項(菜單欄) 菜單項 屬性 取值 (說明)</p><p> S1 Caption &S 系統(tǒng)</p><p> C1 Caption &C 連接</p><
101、p> Shortcut F2</p><p> D1 Caption &D 斷開連接</p><p> Shortcut F3</p><p> N1 Caption -(用作分割線)</p><p> X1
102、 Caption &X退出</p><p> Shortcut Ctrl+Q</p><p> M1 Caption &M人事管理</p><p> A1 Caption &A增
103、加新員工</p><p> C1 Caption &C人事變動</p><p> S2 Caption &S員工信息查詢</p><p> E1 Caption &E根據(jù)員工號查詢</p><p>
104、D2 Caption &D模糊查詢</p><p> R1 Caption &R員工信息修改</p><p> D3 Caption &D刪除員工信息</p><p> H1
105、 Caption &H幫助</p><p> A2 Caption &A關(guān)于</p><p> 4.1.3 給主窗口添加圖像</p><p> 圖象控件Timage可實現(xiàn)此功能。圖象控件Timage是一種容器控件,它在應(yīng)用程序窗體上提供一個巨型區(qū)域,用于顯示各種位圖、圖標(biāo)、圖元文
106、件。雙擊控件欄additional頁上的Image控件,在主窗口form1中添加Image控件。選定Image控件,單擊對象編輯器中的Picture屬性行擴展符號按鈕,打開對話框,單擊load按鈕,選擇圖形文件。這時,只顯示圖形的一角,如果要顯示全圖,有兩種辦法。其一,在對象編輯器中,修改autosize屬性值為true,則Image控件可自動調(diào)整大小以適應(yīng)調(diào)入的圖形;其二,在對象編輯器中,修改stretch屬性值為true,則Imag
107、e控件大小不變,圖形則自動縮小或放大以適應(yīng)Image控件的大小。當(dāng)兩個屬性都設(shè)置為true時,則優(yōu)先響應(yīng)autosize屬性,既調(diào)整Image控件大小,以適應(yīng)調(diào)入的圖形。</p><p> 也可以通過調(diào)用過程:</p><p> procedure LoadFromFile(const FileName: string); virtual; 在程序運行期間調(diào)入圖形。</p>
108、<p> 經(jīng)過以上方法,可設(shè)置本應(yīng)用程序的主窗口,如圖4-1所示。</p><p> 圖4-1 人事管理系統(tǒng)主窗口</p><p> 4.1.4 添加代碼</p><p> 主窗體需要調(diào)用其他各窗體,因此uses子句中需包含以下項目</p><p> login,add,change,isearch,dsearch
109、,modify,about;</p><p> 各菜單項的OnClick事件處理程序代碼如下:</p><p> procedure TForm1.C1Click(Sender: TObject);</p><p><b> begin</b></p><p> form2.Show ;</p>&
110、lt;p><b> end;</b></p><p> procedure TForm1.FormCreate(Sender:TObject);</p><p><b> begin</b></p><p> D1.Enabled :=false;</p><p> M1.Enabl
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計-基于delphi的人事管理系統(tǒng)設(shè)計
- delphi人事管理系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計---基于jsp的人事管理系統(tǒng)
- 人事管理畢業(yè)設(shè)計---人事管理系統(tǒng)設(shè)計
- 人事管理系統(tǒng)畢業(yè)設(shè)計
- 人事管理系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計(人事管理系統(tǒng))
- 畢業(yè)設(shè)計----人事管理系統(tǒng)
- 人事管理_基于java的人事管理系統(tǒng)設(shè)計與實現(xiàn)
- 人事管理系統(tǒng)畢業(yè)設(shè)計----人事管理系統(tǒng)的設(shè)計與實現(xiàn)
- 計算機畢業(yè)設(shè)計12delphi+access人事管理系統(tǒng)
- 計算機畢業(yè)設(shè)計12delphi+access人事管理系統(tǒng)
- 畢業(yè)設(shè)計----企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計
- 企業(yè)人事管理系統(tǒng)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計---公司人事管理系統(tǒng)
- 人事管理系統(tǒng)delphi課程設(shè)計報告
- 基于eclipse的人事管理系統(tǒng)的設(shè)計設(shè)計
- 畢業(yè)設(shè)計----企業(yè)人事管理系統(tǒng)
- 畢業(yè)設(shè)計---企業(yè)人事管理系統(tǒng)
- 畢業(yè)設(shè)計----企業(yè)人事管理系統(tǒng)
評論
0/150
提交評論