新聞中心
隨著信息技術(shù)的快速發(fā)展和廣泛應(yīng)用,數(shù)據(jù)已經(jīng)成為各個(gè)行業(yè)的核心資源。全面、準(zhǔn)確、可靠的數(shù)據(jù)是現(xiàn)代企業(yè)管理的重要基礎(chǔ),而數(shù)據(jù)庫(kù)便是管理和處理數(shù)據(jù)的核心技術(shù)。對(duì)于一個(gè)數(shù)據(jù)庫(kù)系統(tǒng)而言,數(shù)據(jù)模型的準(zhǔn)確性直接關(guān)系到數(shù)據(jù)管理的效率和決策的正確性。然而在數(shù)據(jù)庫(kù)應(yīng)用中,經(jīng)常會(huì)遇到數(shù)據(jù)模型的更新問(wèn)題。因此如何高效、準(zhǔn)確地實(shí)現(xiàn)數(shù)據(jù)庫(kù)更新模型,將成為數(shù)據(jù)庫(kù)應(yīng)用的關(guān)鍵問(wèn)題。

我們提供的服務(wù)有:成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、定結(jié)ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢(xún)和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的定結(jié)網(wǎng)站制作公司
數(shù)據(jù)庫(kù)更新模型可以理解為一種數(shù)據(jù)結(jié)構(gòu)之間的轉(zhuǎn)移過(guò)程,即在原有的數(shù)據(jù)模型基礎(chǔ)上,通過(guò)一種系統(tǒng)化的方式進(jìn)行數(shù)據(jù)結(jié)構(gòu)的升級(jí)、變更、轉(zhuǎn)移等操作。數(shù)據(jù)庫(kù)更新模型的應(yīng)用可以大幅提升數(shù)據(jù)模型的準(zhǔn)確性,增加數(shù)據(jù)的可靠性和完整性,有利于提升數(shù)據(jù)庫(kù)系統(tǒng)的應(yīng)用價(jià)值和效益。
在實(shí)現(xiàn)數(shù)據(jù)庫(kù)更新模型的過(guò)程中,需要注意以下幾個(gè)方面:
一、精確操作的正確性
數(shù)據(jù)庫(kù)更新模型需要通過(guò)一系列的操作進(jìn)行數(shù)據(jù)結(jié)構(gòu)的重新設(shè)計(jì)和調(diào)整,這既要有整體的把握,也要有細(xì)節(jié)的嚴(yán)謹(jǐn)。每一條記錄、每一個(gè)字段、每一個(gè)關(guān)系,都需要精確地進(jìn)行操作和調(diào)整,這需要有專(zhuān)業(yè)的知識(shí)和技能才能完成。
二、技術(shù)手段的支持
數(shù)據(jù)庫(kù)更新模型需要用到各種技術(shù)手段,比如SQL腳本、數(shù)據(jù)庫(kù)客戶(hù)端、數(shù)據(jù)導(dǎo)入導(dǎo)出工具等。技術(shù)手段的選擇和使用必須要符合業(yè)務(wù)需求和數(shù)據(jù)規(guī)模的實(shí)際情況,并能夠自適應(yīng)和自動(dòng)化處理數(shù)據(jù)。
三、流程的清晰規(guī)范
數(shù)據(jù)庫(kù)更新模型需要遵循一定的流程,不僅要規(guī)范操作的每一個(gè)步驟,還要對(duì)數(shù)據(jù)的處理結(jié)果進(jìn)行嚴(yán)格的檢驗(yàn)和評(píng)估。整個(gè)流程應(yīng)該清晰透明、符合標(biāo)準(zhǔn),確保數(shù)據(jù)庫(kù)更新模型能夠快速、準(zhǔn)確地實(shí)現(xiàn)。
四、數(shù)據(jù)質(zhì)量的保障
數(shù)據(jù)庫(kù)更新模型的實(shí)現(xiàn)還需要考慮數(shù)據(jù)質(zhì)量的問(wèn)題。新數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)必須要滿(mǎn)足數(shù)據(jù)完整、準(zhǔn)確、可靠等要求,還需要進(jìn)行有效的數(shù)據(jù)校驗(yàn)和清洗,以確保數(shù)據(jù)的質(zhì)量。
數(shù)據(jù)庫(kù)更新模型的實(shí)現(xiàn)需要全面考慮技術(shù)、管理和業(yè)務(wù)等方面的因素,結(jié)合實(shí)際業(yè)務(wù)需求、數(shù)據(jù)模型的特點(diǎn)和使用環(huán)境,采用合適的策略和方式進(jìn)行數(shù)據(jù)結(jié)構(gòu)的更新和升級(jí),以實(shí)現(xiàn)數(shù)據(jù)庫(kù)模型的持續(xù)改進(jìn)和優(yōu)化。
數(shù)據(jù)庫(kù)更新模型的實(shí)現(xiàn)可以帶來(lái)諸多好處。它可以提高數(shù)據(jù)庫(kù)的性能和效率,使得數(shù)據(jù)的存儲(chǔ)和處理更加快速、準(zhǔn)確和有效。它可以提升數(shù)據(jù)的可信度和可靠性,使得數(shù)據(jù)的分析和應(yīng)用更加科學(xué)和精準(zhǔn)。它可以?xún)?yōu)化數(shù)據(jù)庫(kù)的結(jié)構(gòu)和架構(gòu),更好地適應(yīng)未來(lái)業(yè)務(wù)的需要,降低數(shù)據(jù)庫(kù)系統(tǒng)的維護(hù)成本,實(shí)現(xiàn)長(zhǎng)期收益。
綜上所述,數(shù)據(jù)庫(kù)更新模型的實(shí)現(xiàn)對(duì)于數(shù)據(jù)庫(kù)系統(tǒng)的運(yùn)維和應(yīng)用具有重要的意義。在實(shí)際操作中,需要充分認(rèn)識(shí)到數(shù)據(jù)庫(kù)更新模型的價(jià)值和作用,注重細(xì)節(jié),嚴(yán)格執(zhí)行管理規(guī)范和技術(shù)要求,以提高數(shù)據(jù)庫(kù)系統(tǒng)的使用效益和管理水平。
相關(guān)問(wèn)題拓展閱讀:
- 數(shù)據(jù)庫(kù)系統(tǒng)1-2:層次模型
- 數(shù)據(jù)庫(kù)優(yōu)化(ER模型設(shè)計(jì))
數(shù)據(jù)庫(kù)系統(tǒng)1-2:層次模型
用樹(shù)形結(jié)構(gòu)表示實(shí)體之間聯(lián)系的模型叫層次模型。層次模型是最早用于商品數(shù)據(jù)庫(kù)管理系統(tǒng)枯明的數(shù)據(jù)模型。其典型代表是于1969問(wèn)世、由IBM公司開(kāi)發(fā)的數(shù)據(jù)庫(kù)管理系統(tǒng)IMS(Information Management System)。
1.2.3.1 層次模型的結(jié)構(gòu)
層次模型的表示方法是:樹(shù)的結(jié)點(diǎn)表示實(shí)體集(記錄的型),結(jié)點(diǎn)之間的連線(xiàn)表示相連兩實(shí)體集之間的關(guān)系,這種關(guān)系只能是“1一M”的。通常把表示1的實(shí)體集放在上方,稱(chēng)為父結(jié)點(diǎn),表示M的實(shí)體集放在下方,稱(chēng)為子結(jié)點(diǎn)。層次模型的結(jié)構(gòu)特點(diǎn)是:
(1) 有且僅有一個(gè)根結(jié)點(diǎn)。
(2) 根結(jié)點(diǎn)以外的其它結(jié)點(diǎn)有且僅有一個(gè)父結(jié)點(diǎn)。
因而層次模型只能表示“1一M”關(guān)系,而不能直接表示“M—M”關(guān)系。
在層次模型中,一個(gè)結(jié)點(diǎn)稱(chēng)為一個(gè)記錄型,用來(lái)描述實(shí)體集。每個(gè)記錄型可以有一個(gè)或多個(gè)記錄值,上層一個(gè)記錄值對(duì)應(yīng)下層一個(gè)或多個(gè)記錄值,而下層每個(gè)記錄值只能對(duì)應(yīng)上層一個(gè)記錄值。例如,系記錄型有:計(jì)算機(jī)系、電信系等記錄值。而計(jì)算機(jī)系的早罩下層記錄值有軟件、結(jié)構(gòu)、應(yīng)用等研究室和數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、數(shù)據(jù)庫(kù)等課程,軟件研究室下層又有員工和項(xiàng)目記錄值,
關(guān)于層次模型中實(shí)體集之間多對(duì)多的聯(lián)系的處理,解決的方法是引入冗余結(jié)點(diǎn)。例如,學(xué)生和課程之間的多對(duì)多的聯(lián)系,引入學(xué)生和課程的冗余結(jié)點(diǎn) 轉(zhuǎn)換為兩棵樹(shù):一棵樹(shù)的根是學(xué)生,子結(jié)點(diǎn)是課程,它表現(xiàn)了一個(gè)學(xué)生可以選多門(mén)課程;一棵樹(shù)的根是課程,子結(jié)點(diǎn)是學(xué)生,它反映了一門(mén)課程可以被多個(gè)學(xué)生選。
1.2.3.2層次模型的數(shù)據(jù)操作
層次模型的數(shù)據(jù)操作特點(diǎn)是必須從根結(jié)點(diǎn)入手,按層次順序訪(fǎng)問(wèn)。首先介紹層次順序中的兩個(gè)概念。
?。?) 記錄類(lèi)型碼 對(duì)層次模型中的記陸敗鬧錄型樹(shù),按照從上到下,從左到右的順序給每個(gè)記錄類(lèi)一個(gè)編號(hào),稱(chēng)為記錄類(lèi)型碼,以表示記錄類(lèi)在樹(shù)中的位置。
(2) 順序域 為了確定同一記錄類(lèi)下的各個(gè)記錄值的位置,指定記錄中某字段的值作為記錄值的排序的依據(jù),該字段稱(chēng)為順序域。
?。?) 層次順序和路徑 有了記錄類(lèi)型碼和順序域,就可以對(duì)所有的記錄值進(jìn)行排序,首先按類(lèi)型碼排序,同一類(lèi)型碼下的各個(gè)記錄值再按順序域排序。這種從上到下、從左到右的排列順序就是層次順序。從根結(jié)點(diǎn)開(kāi)始到目標(biāo)結(jié)點(diǎn)之間所有直系祖先的類(lèi)型碼和順序域組成該結(jié)點(diǎn)的層次路徑。如圖1.19所示,D(Department)、S(Section)、C(Course)、F(Faculty)和P(Project)分別表示系、研究室、課程、員工和項(xiàng)目。D02的層次順序: D02S01F01F02S02F03F04S03F05F06FC01C02C03。
GU DEPT(DEPT#=’D02’)
SECTION(SEC#=’S03’)
FACULTY(FAC#=’F06’)
層次模型中的更新操作之前,一般都先執(zhí)行一個(gè)查詢(xún),再執(zhí)行相應(yīng)操作。所以層次模型數(shù)據(jù)操作的特點(diǎn)是通過(guò)層次路徑定位記錄,一次僅能訪(fǎng)問(wèn)一條記錄。
1.2.3.4 層次模型的物理存儲(chǔ)
層次模型的物理存儲(chǔ)有兩種實(shí)現(xiàn)方法:
?。?) 順序法
按照層次順序把所有的記錄鄰接存放,即通過(guò)物理空間的位置相鄰來(lái)實(shí)現(xiàn)層次順序。
(2) 指針?lè)?/p>
各個(gè)記錄存放時(shí)不是按層次順序,而是用指針按層次順序把它們鏈接起來(lái)。
1.2.3.5 層次模型的約束
層次模型的限制是:
?。?) 層次模型的樹(shù)是有序樹(shù)(層次順序)。對(duì)任一結(jié)點(diǎn)的所有子樹(shù)都規(guī)定了先后次序,這一限制隱含了對(duì)數(shù)據(jù)庫(kù)存取路徑的控制。
?。?) 樹(shù)中父子結(jié)點(diǎn)之間只存在一種聯(lián)系,因此,對(duì)樹(shù)中的任一結(jié)點(diǎn),只有一條自根結(jié)點(diǎn)到達(dá)它的路徑。
?。?) 不能直接表示多對(duì)多的聯(lián)系。
?。?) 樹(shù)結(jié)點(diǎn)中任何記錄的屬性只能是不可再分的簡(jiǎn)單數(shù)據(jù)類(lèi)型。
數(shù)據(jù)庫(kù)優(yōu)化(ER模型設(shè)計(jì))
如果你的公司是那些老總啊經(jīng)常來(lái)看的話(huà),這樣設(shè)計(jì)能快速查詢(xún)所需信息,但如果是你自己管理,我看,把”聯(lián)系人”和”來(lái)往單位”合成一個(gè)表,把來(lái)往單位的字段改到聯(lián)系人那,想單獨(dú)查詢(xún)來(lái)往單位或什么的用SQL也能快速找到; 把庫(kù)存信息和價(jià)格信息也合成一個(gè)表; 左邊的表差不多了,只是有些字段你自己再調(diào)整一下,看你的情況了,希望能幫上忙“““
據(jù)訪(fǎng)問(wèn)需要的完整解datamodule4.adoquery2.sql.add(‘SELECT借書(shū)證號(hào),密碼FROMWHERE(借書(shū)證號(hào)=:tt)’);
datamodule4.adoquery2.parameters.value:=username;
datamodule4.adoquery2.open;
在為T(mén)Query或TADOquery部件設(shè)置SQL屬性時(shí)調(diào)用Close方法總是很安全的,如果TQuery或TADOquery部件已經(jīng)被關(guān)閉了,調(diào)用Close方法時(shí)不會(huì)產(chǎn)生任何影響。在應(yīng)用程序中為SQL屬性設(shè)置新的SQL命令語(yǔ)句時(shí),必須要調(diào)用Clear方法以清除SQL屬性中現(xiàn)存的SQL命令語(yǔ)句,如果不調(diào)用Clear方法,便調(diào)用Add方法向SQL屬性中設(shè)置SQL命令語(yǔ)句,那么新設(shè)置的SQL命令語(yǔ)句會(huì)追加在現(xiàn)存SQL命令語(yǔ)句后面,在程序運(yùn)行時(shí)常常會(huì)出現(xiàn)出乎意料的查詢(xún)結(jié)果甚至程序無(wú)法運(yùn)行下去。
在這里要特別注意的,一般情況下TQuery或TADOquery部件的SQL屬性只能包含一條完整的SQL語(yǔ)句,它不允許被設(shè)置成多條SQL語(yǔ)句。當(dāng)然有些數(shù)據(jù)庫(kù)服務(wù)器也支持在TQuery或TADOquery部件的SQL屬性中設(shè)置多條SQL語(yǔ)句,只要數(shù)據(jù)庫(kù)服務(wù)器允許這樣,我們?cè)诰幊虝r(shí)可以為SQL屬性設(shè)置多條SQL語(yǔ)句。
在為T(mén)Query或TADOquery部件設(shè)置完SQL屬性的屬性值之后,也即編寫(xiě)好適當(dāng)?shù)腟QL程序之后,可以有多種方式來(lái)執(zhí)行SQL程序。
在設(shè)計(jì)過(guò)程中,設(shè)置完TQuery或TADOquery部件的SQL屬性之后將其Active屬性的值置為T(mén)rue,這樣便可以執(zhí)行SQL屬性中的SQL程序,如果應(yīng)用中有與TQuery或TADOquery部件相連的數(shù)據(jù)瀏覽部件(如TDDGridTDBEdit等)那么在這些數(shù)據(jù)瀏覽部件中會(huì)顯示SQL程序的執(zhí)行結(jié)果。
在應(yīng)用程序運(yùn)行過(guò)程中,通過(guò)程序調(diào)用TQuery或TADOquery組件的Open方法或ExecSQL方法可以執(zhí)行其SQL屬性中的SQL程序。Open方法和ExecSQL方法是不一樣的。Open方法只能用來(lái)執(zhí)行SQL語(yǔ)言的查詢(xún)語(yǔ)句(Select命令),并返回一個(gè)查詢(xún)結(jié)果集,而ExecSQL方法還可以用來(lái)執(zhí)行其它常用的SQL語(yǔ)句(如INSERT,UPDATE,DELETE等命令),例如:
Query1.Open(這樣會(huì)返回一個(gè)查詢(xún)結(jié)果集)
如果調(diào)用Open方法,而沒(méi)有查詢(xún)結(jié)果時(shí),會(huì)出錯(cuò)。此時(shí)應(yīng)該調(diào)用ExecSQL方法來(lái)代替Open方法。如:
Query1.ExecSQL(沒(méi)有返回結(jié)果)
當(dāng)然在設(shè)計(jì)應(yīng)用程序時(shí),程序設(shè)計(jì)人員是無(wú)法確定TQuery或TADOquery組件中的SQL語(yǔ)句是否會(huì)返回一個(gè)查詢(xún)結(jié)果的。對(duì)于這種情況應(yīng)當(dāng)用Try…Except模塊來(lái)設(shè)計(jì)程序。在Try部分調(diào)用Open方法,而在Except部分調(diào)用ExceSQL方法,這樣才能保證程序的正確運(yùn)行。
例如:
Try
Query1.Open
Except
Query1.ExecSQL
End
通過(guò)Tquery或TADOquery組件可以獲得兩種類(lèi)型的數(shù)據(jù):
u“活動(dòng)”的數(shù)據(jù)
這種數(shù)據(jù)就跟通過(guò)TTable部件獲得的數(shù)據(jù)一樣,用戶(hù)可以通過(guò)數(shù)據(jù)瀏覽部件來(lái)編輯修改這些數(shù)據(jù),并且當(dāng)調(diào)用Post方法或當(dāng)焦點(diǎn)離開(kāi)當(dāng)前的數(shù)據(jù)瀏覽部件時(shí),用戶(hù)對(duì)數(shù)據(jù)的修改自動(dòng)地被寫(xiě)回到數(shù)據(jù)庫(kù)中。
u非活動(dòng)的數(shù)據(jù)(只讀數(shù)據(jù))
用戶(hù)通過(guò)數(shù)據(jù)瀏覽部件是不能修改其中的數(shù)據(jù)。在缺省情況下,通過(guò)TQuery部件獲得的查詢(xún)結(jié)果數(shù)據(jù)是只讀數(shù)據(jù),要想獲得“活動(dòng)”的數(shù)據(jù),在應(yīng)用程序中必須要設(shè)置Tquery或TADOquery組件的RequestLive屬性值為T(mén)rue,然而并不是在任何情況下(通過(guò)設(shè)置RequestLive的屬值True)都可以獲得“活動(dòng)”的數(shù)據(jù)的,要想獲得“活動(dòng)”的數(shù)據(jù),除了將TQuery部件的RequestLive屬性設(shè)置為T(mén)rue外,相應(yīng)的SQL命令還要滿(mǎn)足以下條件。
本地SQL語(yǔ)句查詢(xún)情況下,要得到可更新的數(shù)據(jù)集,SQL語(yǔ)句的限制為:
n查詢(xún)只能涉及到一個(gè)單獨(dú)的表
nSQL語(yǔ)句中不能包含ORDERBY命令
nSQL語(yǔ)句中不能含聚集運(yùn)算符SUM或AVG
n在Select后的字段列表中不能有計(jì)算字段
n在Select語(yǔ)句WHERE部分只能包含字段值與常量的比較運(yùn)算,這些比較運(yùn)算符是:Like,>,=,
當(dāng)通過(guò)SQL語(yǔ)句查詢(xún)數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)表:
n查詢(xún)只能涉及到一個(gè)單獨(dú)的表
nSQL語(yǔ)句中不能包含ORDERBY命令
nSQL語(yǔ)句中不能含聚集運(yùn)算符SUM或AVG運(yùn)算
另外,如果是查詢(xún)Sybase數(shù)據(jù)庫(kù)中的表,那么被查詢(xún)的表中只能有一個(gè)索引。
如果在應(yīng)用程序中要求TQuery或TADOquery組件返回一個(gè)“活動(dòng)”的查詢(xún)結(jié)果數(shù)據(jù)集,但是SQL命令語(yǔ)句不滿(mǎn)足上述約束條件時(shí),對(duì)于本地?cái)?shù)據(jù)庫(kù)的SQL查詢(xún),BDE只能返回只讀的數(shù)據(jù)集。對(duì)于數(shù)據(jù)庫(kù)服務(wù)器中的SQL查詢(xún),只能返回錯(cuò)誤的代碼。當(dāng)Tquery或TADOquery組件返回一個(gè)“活動(dòng)”的查詢(xún)結(jié)果數(shù)據(jù)集時(shí),它的CanModIfy屬性的值會(huì)被設(shè)置成True。
§3.4MSSQLServer簡(jiǎn)述
SQLServer是一個(gè)后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng),它功能強(qiáng)大操作簡(jiǎn)便,日益為廣大數(shù)據(jù)庫(kù)用戶(hù)所喜愛(ài)。越來(lái)越多的開(kāi)發(fā)工具提供了與SQLServer的接口。SQLServer是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開(kāi)發(fā)的。于1988年推出了之一個(gè)OS/2版本,在WindowsNT推出后,Microsoft與Sybase在SQLServer的開(kāi)發(fā)上就分道揚(yáng)鑣了,Microsoft將SQLServer移植到WindowsNT系統(tǒng)上,專(zhuān)注于開(kāi)發(fā)推廣SQLServer的WindowsNT版本。
SQLServer2023是Microsoft公司推出的SQLServer數(shù)據(jù)庫(kù)管理系統(tǒng)的最新版本,該版本繼承了SQLServer7.0版本的優(yōu)點(diǎn),同時(shí)又比它增加了許多更先進(jìn)的功能、具有使用方便、可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn)??煽缭綇倪\(yùn)行MicrosoftWindows98的膝上型電腦到運(yùn)行MicrosoftWindows2023的大型多處理器的服務(wù)器等多種平臺(tái)使用。MSSQLServer不但可以應(yīng)用于大中型數(shù)據(jù)庫(kù)管理中,建立分布式關(guān)系數(shù)據(jù)庫(kù),并且也可以開(kāi)發(fā)桌面數(shù)據(jù)庫(kù)。事實(shí)上,SQLServer數(shù)據(jù)庫(kù)處理的基本結(jié)構(gòu),采取關(guān)系型數(shù)據(jù)庫(kù)模式,盡管如此,相信大家都可以輕易的發(fā)現(xiàn),在SQLServer的數(shù)據(jù)庫(kù)處理方式,則是使用面向?qū)ο蟮牟僮鞣绞脚c精神,也就是說(shuō),SQLServer的所有功能,都可以基于系統(tǒng)已經(jīng)建立好的一些對(duì)象來(lái)達(dá)成,是相當(dāng)OO(面向?qū)ο螅┑囊粋€(gè)系統(tǒng)結(jié)構(gòu)。
SQLServer企業(yè)管理器是SQLServer的主要管理工具,它提供了一個(gè)遵從MMC標(biāo)準(zhǔn)的用戶(hù)界面,使用戶(hù)得以:
·定義SQLServer實(shí)例組。
·將個(gè)別服務(wù)器注冊(cè)到組中。
·為每個(gè)已注冊(cè)的服務(wù)器配置所有SQLServer選項(xiàng)。
·在每個(gè)已注冊(cè)的服務(wù)器中創(chuàng)建并管理所有SQLServer數(shù)據(jù)庫(kù)、對(duì)象、登錄、用戶(hù)和權(quán)限。
·在每個(gè)已注冊(cè)的服務(wù)器上定義并執(zhí)行所有SQLServer管理任務(wù)。
·通過(guò)喚醒調(diào)用SQL查詢(xún)分析器,交互地設(shè)計(jì)并測(cè)試SQL語(yǔ)句、批處理和腳本。
·喚醒調(diào)用為SQLServer定義的各種向?qū)А?/p>
·
第三章圖書(shū)管理系統(tǒng)設(shè)計(jì)分析
§4.1應(yīng)用需求分析
圖書(shū)管理系統(tǒng)需要滿(mǎn)足來(lái)自三方面的需求,這三個(gè)方面分別是圖書(shū)借閱者、圖書(shū)館工作人員和圖書(shū)館管理人員。圖書(shū)借閱者的需求是查詢(xún)圖書(shū)館所存的圖書(shū)、個(gè)人借閱情況及個(gè)人信息的修改;圖書(shū)館工作人員對(duì)圖書(shū)借閱者的借閱及還書(shū)要求進(jìn)行操作,同時(shí)形成借書(shū)或還書(shū)報(bào)表給借閱者查看確認(rèn);圖書(shū)館管理人員的功能最為復(fù)雜,包括對(duì)工作人員、圖書(shū)借閱者、圖書(shū)進(jìn)行管理和維護(hù),及系統(tǒng)狀態(tài)的查看、維護(hù)并生成催還圖書(shū)報(bào)表。
圖書(shū)借閱者可直接查看圖書(shū)館圖書(shū)情況,如果圖書(shū)借閱者根據(jù)本人借書(shū)證號(hào)和密碼登錄系統(tǒng),還可以進(jìn)行本人借書(shū)情況的查詢(xún)和維護(hù)部分個(gè)人信息。一般情況下,圖書(shū)借閱者只應(yīng)該查詢(xún)和維護(hù)本人的借書(shū)情況和個(gè)人信息,若查詢(xún)和維護(hù)其他借閱者的借書(shū)情況和個(gè)人信息,就要知道其他圖書(shū)借閱者的借書(shū)證號(hào)和密碼。這些是很難得到的,特別是密碼,所以不但滿(mǎn)足了圖書(shū)借閱者的要求,還保護(hù)了圖書(shū)借閱者的個(gè)人隱私。
圖書(shū)館工作人員有修改圖書(shū)借閱者借書(shū)和還書(shū)記錄的權(quán)限,所以需對(duì)工作人員登陸本模塊進(jìn)行更多的考慮。在此模塊中,圖書(shū)館工作人員可以為圖書(shū)借閱者加入借書(shū)記錄或是還書(shū)記錄,并打印生成相應(yīng)的報(bào)表給用戶(hù)查看和確認(rèn)。
圖書(shū)館管理人員功能的信息量大,數(shù)據(jù)安全性和保密性要求更高。本功能實(shí)現(xiàn)對(duì)圖書(shū)信息、借閱者信息、總體借閱情況信息的管理和統(tǒng)計(jì)、工作人員和管理人員信息查看及維護(hù)。圖書(shū)館管理員可以瀏覽、查詢(xún)、添加、刪除、修改、統(tǒng)計(jì)圖書(shū)的基本信息;瀏覽、查詢(xún)、統(tǒng)計(jì)、添加、刪除和修改圖書(shū)借閱者的基本信息,瀏覽、查詢(xún)、統(tǒng)計(jì)圖書(shū)館的借閱信息,但不能添加、刪除和修改借閱信息,這部分功能應(yīng)該由圖書(shū)館工作人員執(zhí)行,但是,刪除某條圖書(shū)借閱者基本信息記錄時(shí),應(yīng)實(shí)現(xiàn)對(duì)該圖書(shū)借閱者借閱記錄的級(jí)聯(lián)刪除。并且還應(yīng)具有生成催還圖書(shū)報(bào)表,并打印輸出的功能。
在本系統(tǒng)中由于沒(méi)有打印機(jī)設(shè)備供試驗(yàn),所以預(yù)先把報(bào)表打印改成報(bào)表預(yù)覽。
設(shè)計(jì)不同用戶(hù)的操作權(quán)限和登陸方法
對(duì)所有用戶(hù)開(kāi)放的圖書(shū)查詢(xún)
借閱者維護(hù)借閱者個(gè)人部分信息
借閱者查看個(gè)人借閱情況信息
維護(hù)借閱者個(gè)人密碼
根據(jù)借閱情況對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作并生成報(bào)表
根據(jù)還書(shū)情況對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作并生成報(bào)表
查詢(xún)及統(tǒng)計(jì)各種信息
維護(hù)圖書(shū)信息
維護(hù)工作人員和管理員信息
維護(hù)借閱者信息
處理信息的完整性
對(duì)借閱過(guò)期的圖書(shū)生成報(bào)表
圖4-2圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)應(yīng)用需求的總結(jié)
根據(jù)以上所做的需求分析,并略掉一些細(xì)節(jié)(如不考慮用戶(hù)的登錄;對(duì)記錄的維護(hù)),得出以下的三層數(shù)據(jù)流圖。
§4.2系統(tǒng)功能模塊劃分
系統(tǒng)功能框圖如圖4-10所示。
§4.3系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
4.3.1概念設(shè)計(jì)
在概念設(shè)計(jì)階段中,設(shè)計(jì)人員從用戶(hù)的角度看待數(shù)據(jù)及處理要求和約束,產(chǎn)生一個(gè)反映用戶(hù)觀(guān)點(diǎn)的概念模式。然后再把概念模式轉(zhuǎn)換成邏輯模式。將概念設(shè)計(jì)從設(shè)計(jì)過(guò)程中獨(dú)立開(kāi)來(lái),使各階段的任務(wù)相對(duì)單一化,設(shè)計(jì)復(fù)雜程度大大降低,不受特定DBMS的限制。
利用ER方法進(jìn)行數(shù)據(jù)庫(kù)的概念設(shè)計(jì),可分成三步進(jìn)行:首先設(shè)計(jì)局部ER模式,然后把各局部ER模式綜合成一個(gè)全局模式,最后對(duì)全局ER模式進(jìn)行優(yōu)化,得到最終的模式,即概念模式。
(1)設(shè)計(jì)局部ER模式
實(shí)體和屬性的定義:
圖書(shū)(圖書(shū)編號(hào),圖書(shū)名稱(chēng),作者,出版社,出版日期,備注,價(jià)格,數(shù)量,)
借閱者(借書(shū)證號(hào),姓名,性別,身份證,聯(lián)系,密碼)
身份(身份編號(hào),身份描述,更大借閱數(shù))
圖書(shū)類(lèi)別(圖書(shū)類(lèi)別編號(hào),類(lèi)別描述)
ER模型的“聯(lián)系”用于刻畫(huà)實(shí)體之間的關(guān)聯(lián)。一種完整的方式是對(duì)局部結(jié)構(gòu)中任意兩個(gè)實(shí)體類(lèi)型,依據(jù)需求分析的結(jié)果,考察局部結(jié)構(gòu)中任意兩個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系。若有聯(lián)系,進(jìn)一步確定是1:N,M:N,還是1:1等。還要考察一個(gè)實(shí)體類(lèi)型內(nèi)部是否存在聯(lián)系,兩個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系,多個(gè)實(shí)體類(lèi)型之間是否存在聯(lián)系,等等。聯(lián)系定義如圖4-5所示。解釋如下:
u一個(gè)借閱者(用戶(hù))只能具有一種身份,而一種身份可被多個(gè)借閱者所具有;
u一本圖書(shū)只能屬于一種圖書(shū)類(lèi)別(類(lèi)別),而一種圖書(shū)類(lèi)別可以包含多本圖書(shū);
u一個(gè)用戶(hù)可以借閱多本不同的書(shū),而一本書(shū)也可以被多個(gè)不同的用戶(hù)所借閱。
(2)設(shè)計(jì)全局ER模式
所有局部ER模式都設(shè)計(jì)好了后,接下來(lái)就是把它們綜合成單一的全局概念結(jié)構(gòu)。全局概念結(jié)構(gòu)不僅要支持所有局部ER模式,而且必須合理地表示一個(gè)完整、一致的數(shù)據(jù)庫(kù)概念結(jié)構(gòu)。
1)確定公共實(shí)體類(lèi)型
為了給多個(gè)局部ER模式的合并提供開(kāi)始合并的基礎(chǔ),首先要確定各局部結(jié)構(gòu)中的公共實(shí)體類(lèi)型。在這一步中我們僅根據(jù)實(shí)體類(lèi)型名和鍵來(lái)認(rèn)定公共實(shí)體類(lèi)型。一般把同名實(shí)體類(lèi)型作為公共實(shí)體類(lèi)型的一類(lèi)候選,把具有相同鍵的實(shí)體類(lèi)型作為公共實(shí)體類(lèi)型的另一類(lèi)候眩
2)局部ER模式的合并
合并的原則是:首先進(jìn)行兩兩合并;先和合并那些現(xiàn)實(shí)世界中有聯(lián)系的局部結(jié)構(gòu);合并從公共實(shí)體類(lèi)型開(kāi)始,最后再加入獨(dú)立的局部結(jié)構(gòu)。
3)消除沖突
沖突分為三類(lèi):屬性沖突、結(jié)構(gòu)沖突、命名沖突。
設(shè)計(jì)全局ER模式的目的不在于把若干局部ER模式形式上合并為一個(gè)ER模式,而在于消除沖突,使之成為能夠被所有用戶(hù)共同理解和接受的同一的概念模型。
3)全局ER模式的優(yōu)化
在得到全局ER模式后,為了提高數(shù)據(jù)庫(kù)系統(tǒng)的效率,還應(yīng)進(jìn)一步依據(jù)處理需求對(duì)ER模式進(jìn)行優(yōu)化。一個(gè)好的全局ER模式,除能準(zhǔn)確、全面地反映用戶(hù)功能需求外,還應(yīng)滿(mǎn)足下列條件:實(shí)體類(lèi)型的個(gè)數(shù)要盡可能的少;實(shí)體類(lèi)型所含屬性個(gè)數(shù)盡可能少;實(shí)體類(lèi)型間聯(lián)系無(wú)冗余。
綜上所述,“圖書(shū)管理系統(tǒng)”的全局ER模式如圖4-13所示。
4.3.2關(guān)系數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)
由于概念設(shè)計(jì)的結(jié)果是ER圖,DBMS一般采用關(guān)系型(本人所使用的MSSQLServer就是關(guān)系型的DBMS),因此數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)過(guò)程就是把ER圖轉(zhuǎn)化為關(guān)系模式的過(guò)程。由于關(guān)系模型所具有的優(yōu)點(diǎn),邏輯設(shè)計(jì)可以充分運(yùn)用關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論,使設(shè)計(jì)過(guò)程形式化地進(jìn)行。設(shè)計(jì)結(jié)果是一組關(guān)系模式的定義。
(1)導(dǎo)出初始關(guān)系模式
book(圖書(shū)編號(hào)#,圖書(shū)名稱(chēng),圖書(shū)類(lèi)別#,作者,出版社,出版日期,備注,價(jià)格,數(shù)量)class(圖書(shū)類(lèi)別#,類(lèi)別名)user(借書(shū)證號(hào)#,姓名,性別,身份編號(hào)#,身份證,聯(lián)系,密碼)ID(身份編號(hào)#,身份描述,更大借閱數(shù))Owner(借書(shū)證號(hào)#,圖書(shū)編號(hào)#,借書(shū)日期)
圖4-14關(guān)系模式集
(2)產(chǎn)生子模式
子模式是用戶(hù)所用到的那部分?jǐn)?shù)據(jù)的描述。除了指出用戶(hù)用到的數(shù)據(jù)外,還應(yīng)指出數(shù)據(jù)與概念模式中相應(yīng)數(shù)據(jù)的聯(lián)系,即指出概念模式與子模式之間的對(duì)應(yīng)性。
借書(shū)子模式(借書(shū)證號(hào)#,姓名,圖書(shū)編號(hào)#,圖書(shū)名稱(chēng),借書(shū)日期)
圖4-15部分子模式
(3)根據(jù)設(shè)計(jì)中出現(xiàn)的問(wèn)題本人在寫(xiě)系統(tǒng)時(shí)還加入了兩個(gè)關(guān)系模式:
1、ownertemp:用于工作人員在處理借書(shū)、還書(shū)工作時(shí)臨時(shí)存儲(chǔ)借書(shū)、還書(shū)信息,以便打印報(bào)表時(shí)使用。
2、keyer:用于存儲(chǔ)工作人員和圖書(shū)館管理員的用戶(hù)名和密碼及權(quán)限,以便工作人員或圖書(shū)館管理員進(jìn)入相應(yīng)的功能模塊時(shí)進(jìn)行驗(yàn)證用戶(hù)的身份。
4.3.3數(shù)據(jù)庫(kù)的實(shí)現(xiàn)
我選用MicrosoftSQLServer2023(企業(yè)版)數(shù)據(jù)庫(kù)來(lái)進(jìn)行數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)。首先創(chuàng)建七個(gè)基本數(shù)據(jù)庫(kù)表如表4-1-4-7所示,然后根據(jù)全局ER圖,建立各個(gè)表之間的聯(lián)系,如圖4-8所示。
表4-1借閱者基本信息表的結(jié)構(gòu)(User)
表4-2圖書(shū)信息表的結(jié)構(gòu)(Book)
表4-3圖書(shū)類(lèi)別信息表的結(jié)構(gòu)(Class)
表4-4借閱者身份信息表的結(jié)構(gòu)(ID)
表4-5借閱情況信息表的結(jié)構(gòu)(Owner)
表4-6借閱情況臨時(shí)存儲(chǔ)信息表的結(jié)構(gòu)(Ownertemp)
注:在owner表和ownertemp表中加入了索引字段,用來(lái)唯一標(biāo)識(shí)一條借書(shū)記錄,并且設(shè)置為標(biāo)識(shí),標(biāo)識(shí)種子為1。
表4-7工作人員和管理員信息表的結(jié)構(gòu)(Keyer)
圖4-8數(shù)據(jù)庫(kù)表間聯(lián)系圖
第五章圖書(shū)管理系統(tǒng)應(yīng)用程序設(shè)計(jì)
§5.1系統(tǒng)窗體模塊組成
§5.2數(shù)據(jù)模塊窗體的設(shè)置
在編寫(xiě)數(shù)據(jù)庫(kù)應(yīng)用程序時(shí),經(jīng)常要遇到這樣的情況,即好多組件、窗體同時(shí)訪(fǎng)問(wèn)相同的數(shù)據(jù)源,如果為每一個(gè)組件或者窗體都設(shè)置一個(gè)數(shù)據(jù)源將是十分耗時(shí)的工件,而且要保證這些數(shù)據(jù)源的確是相同的也需花一番功夫。那么,能不能將這些數(shù)據(jù)源集中管理,更好是做成一個(gè)統(tǒng)一的模塊,需要時(shí)就將該模塊引入而不必直接操作數(shù)據(jù)源本身呢?數(shù)據(jù)模塊(DataModule)是解決這個(gè)問(wèn)題更好的答案。簡(jiǎn)單說(shuō)來(lái),數(shù)據(jù)模塊是用來(lái)集中管理數(shù)據(jù)源的一個(gè)窗體,該窗體可被需要的地方隨時(shí)引入。
但本人在開(kāi)發(fā)這個(gè)系統(tǒng)時(shí),開(kāi)始使用了一下數(shù)據(jù)模塊,但在使用過(guò)程中卻碰到了一些問(wèn)題。并且考慮這個(gè)系統(tǒng)使用到的TADOQuery控件比較多,如果使用數(shù)據(jù)控件可能會(huì)帶來(lái)管理上的麻煩,如弄混各個(gè)數(shù)據(jù)控件的作用。還考慮到使用動(dòng)態(tài)生成ADOQuery可能會(huì)更節(jié)省資源。所以在本人的系統(tǒng)中,開(kāi)始做的之一個(gè)模塊“借閱者個(gè)人模塊”中還稍微使用了一下數(shù)據(jù)模塊。但在后面做的兩個(gè)模塊中大多都是用動(dòng)態(tài)生成ADOQuery來(lái)實(shí)現(xiàn)的。并且由于SQL語(yǔ)句是動(dòng)態(tài)加入的所以datamodule中的控件也不會(huì)多。
§5.3啟動(dòng)畫(huà)面的實(shí)現(xiàn)
啟動(dòng)畫(huà)面是為了給用戶(hù)一個(gè)良好的印像,加深軟件的親和力,沒(méi)有實(shí)際的功能,在Form1窗體中加入了Image和Time組件。啟動(dòng)畫(huà)面的窗體略,主要的源代碼如下:
§5.4用戶(hù)登錄窗體的的實(shí)現(xiàn)
本窗體是為三種不同的用戶(hù)(一般用戶(hù),工作人員,管理員)提供選擇以進(jìn)入不同的模塊,滿(mǎn)足不同用戶(hù)的需求。源代碼比較簡(jiǎn)單,略。
§5.5用戶(hù)密碼認(rèn)證窗體的的實(shí)現(xiàn)
本窗體是為了讓工作人員或圖書(shū)館管理員按照用戶(hù)名和密碼進(jìn)行登錄,并且跟據(jù)用戶(hù)名檢查Keyer表中的“權(quán)限”字段,以分辯進(jìn)入圖書(shū)館管理人員模塊還是進(jìn)入工作人員模塊。窗體界面、源代碼如下
§5.6借閱者服務(wù)模塊的實(shí)現(xiàn)
借閱者服務(wù)窗體的功能主要是圖書(shū)的查詢(xún),個(gè)人借閱情況查看及個(gè)人部分信息的修改。界面圖如下:
5.6.1圖書(shū)查詢(xún)功能的實(shí)現(xiàn)
在本系統(tǒng)中,任何人都有權(quán)限使用查詢(xún)功能,不做任何限制。界面如下,
由于實(shí)現(xiàn)的查詢(xún)功能有多種,如按圖書(shū)編號(hào)、圖書(shū)名稱(chēng)等字段進(jìn)行完全體配查找和部分體配的模糊查找,還有按多個(gè)條件進(jìn)行邏輯與或是邏輯或的多條件查找。其中實(shí)現(xiàn)的方法者差不多,所以只給出多條件查找的代碼,如下:
5.6.2借閱者登錄功能的實(shí)現(xiàn)
這個(gè)功能的實(shí)現(xiàn)與工作人員和管理人員登錄功能實(shí)現(xiàn)的方法大致一樣,并且還要簡(jiǎn)單。是從User表中查到到借閱證號(hào)與密碼,看與用戶(hù)輸入的是否一致。如果一致,那么用戶(hù)就可查看自已的借閱情況并維護(hù)自己的部分信息。源代碼與借閱者登錄界面都略。
5.6.3借閱者借閱情況功能的實(shí)現(xiàn)
當(dāng)借閱者正確登錄到系統(tǒng)后,此功能將被激活,使用戶(hù)能查看到自身的借閱情況。在此系統(tǒng)中,信息的顯示一般用ListView來(lái)實(shí)現(xiàn),只在較少的情況下用到了DBgrid,因?yàn)槲矣X(jué)得ListView更好實(shí)現(xiàn),并能使信息數(shù)據(jù)對(duì)用戶(hù)的完全分離。
在這里跟據(jù)借閱者的不同要求實(shí)現(xiàn)借閱情況的查詢(xún),有檢查所有的借閱情部、某本書(shū)的借閱情況、和根據(jù)已借閱天數(shù)的來(lái)查詢(xún)。其中根椐借閱天數(shù)來(lái)查詢(xún)更有代表性,有方式一和方式二。以下給出此功能的源代碼
按借閱天數(shù)查詢(xún)方式一
按借閱天數(shù)查詢(xún)方式二
5.6.4借閱者個(gè)人資料維護(hù)功能的實(shí)現(xiàn)
此功能實(shí)現(xiàn)當(dāng)前借閱者部份資料的修改,但借書(shū)證號(hào)和身份類(lèi)別這樣的信息不允許修改,這是圖書(shū)館管理員模塊的功能。在此界面中點(diǎn)擊修改按鈕將出現(xiàn)“修改”窗體(Form8),點(diǎn)擊修改密碼按鈕將出現(xiàn)groupbox8,在這里進(jìn)行密碼修改。關(guān)鍵源代碼如下。
這里給出個(gè)人部分信息修改的源代碼:
這里給出密碼修改的源代碼:
5.7工作人員-圖書(shū)借閱/歸還模塊的實(shí)現(xiàn)
5.7.1工作人員進(jìn)行圖書(shū)借閱功能實(shí)現(xiàn)
在這個(gè)功能中,工作人員輸入借閱者的借閱證號(hào)和所要借閱的圖書(shū)的圖書(shū)編號(hào),然后點(diǎn)擊借閱按鈕就可進(jìn)行圖書(shū)借閱??紤]到實(shí)際中可能會(huì)出現(xiàn)只知圖書(shū)名而不知圖書(shū)編號(hào)的情況,在此界面下方加入了一個(gè)轉(zhuǎn)換功能,可以把圖書(shū)名稱(chēng)轉(zhuǎn)換成圖書(shū)編號(hào),再進(jìn)行圖書(shū)借閱。
在借閱完成后會(huì)生借閱報(bào)表以便借閱者檢查和確認(rèn),借閱報(bào)表的打印效果如下圖,實(shí)現(xiàn)比較簡(jiǎn)單,略去實(shí)現(xiàn)過(guò)程。
5.7.2工作人員進(jìn)行圖書(shū)歸還功能實(shí)現(xiàn)
在此功能中,工作人員根據(jù)借閱者的借書(shū)證號(hào)和歸還的圖書(shū)編號(hào)進(jìn)行圖書(shū)的歸還工作。并且根據(jù)現(xiàn)實(shí)中可能會(huì)出現(xiàn)的只知圖書(shū)名不知圖書(shū)編號(hào)的歸還情況,所以加入了按書(shū)籍名稱(chēng)進(jìn)行歸還的功能。這個(gè)功能是圖書(shū)借閱功能中把圖書(shū)名稱(chēng)轉(zhuǎn)換成圖書(shū)編號(hào)的一種改進(jìn)方法,這樣就不用如借閱功能中一樣要先轉(zhuǎn)換再借閱了。歸還完成后,同樣會(huì)打印出歸還報(bào)表以便用戶(hù)檢查和確認(rèn)。
5.8圖書(shū)館管理員模塊的實(shí)現(xiàn)
5.8.1圖書(shū)館管理員圖書(shū)管理功能的實(shí)現(xiàn)
在這個(gè)功能中可以在(*圖書(shū)編號(hào))中輸入圖書(shū)編號(hào),點(diǎn)查找按鈕后就會(huì)在各個(gè)相應(yīng)的組件中顯示出信息,或按圖書(shū)名稱(chēng)模糊查找到所要的記錄,在各個(gè)相應(yīng)的組件中顯示之一條記錄的信息,也可在下端的ListView組件中點(diǎn)擊某一條記錄,在各個(gè)相應(yīng)的組件中也會(huì)顯示所選記錄的信息。在入庫(kù)功能中只要不是相同的圖書(shū)編號(hào)并且?guī)В?hào)提示的字段不為空就可插入新的圖書(shū)記錄。刪除則刪除那些Book表中的圖書(shū)記錄,如果借出還可依用戶(hù)要求連帶刪除owner表中的記錄。因?yàn)閳D書(shū)修改與圖書(shū)入庫(kù)的功能與工作人員記錄修改和工作人員記錄添加的實(shí)現(xiàn)過(guò)程一樣,所以下面僅給出刪除功能的源代碼,如下
5.8.2圖書(shū)館管理員工作人員和管理員管理功能的實(shí)現(xiàn)
在此功能中可以加入工作人員或是管理員,或是修改他們的密碼、權(quán)限。
在此功能中如果選中ListView中的記錄,則在右邊相應(yīng)的組件中顯示出信息,并且管理員還可對(duì)這些記錄進(jìn)行修改或加入新的記錄。并且也可以點(diǎn)刪除按鈕刪除選中的一條或多條記錄。刪除功能與圖書(shū)記錄的刪除一般,所以下面只給出添加與修改的實(shí)現(xiàn)過(guò)程。
5.8.3圖書(shū)館管理員修改圖書(shū)類(lèi)別及統(tǒng)記功能的實(shí)現(xiàn)
在此窗體中能對(duì)圖書(shū)的類(lèi)別進(jìn)行刪除,添加和修改,這模塊的功能的實(shí)現(xiàn)過(guò)程與圖書(shū)記錄的刪除,添加和修改一樣的,但是這個(gè)窗體還能跟據(jù)圖書(shū)類(lèi)別進(jìn)行統(tǒng)計(jì),還可根據(jù)Book表和owner表統(tǒng)計(jì)出圖書(shū)總數(shù)目,庫(kù)存圖書(shū)數(shù)目,借出圖書(shū)數(shù)目及借閱過(guò)期的圖書(shū)數(shù)目。在這里給出統(tǒng)計(jì)圖書(shū)總數(shù)目,庫(kù)存圖書(shū)數(shù)目,借出圖書(shū)數(shù)目及借閱過(guò)期的圖書(shū)數(shù)目的實(shí)現(xiàn)過(guò)程中的幾個(gè)函數(shù)和過(guò)程
5.8.4圖書(shū)館管理員借閱者管理功能的實(shí)現(xiàn)
查詢(xún)借閱者可根據(jù)借閱者的借書(shū)證號(hào)或姓名或身份編號(hào)查找到借閱者的信息,也可以實(shí)行模糊查找,這個(gè)功能的實(shí)現(xiàn)與前面圖書(shū)查找的實(shí)現(xiàn)過(guò)程一般,就不再詳細(xì)說(shuō)明。
5.8.5圖書(shū)館維護(hù)借閱者管理功能的實(shí)現(xiàn)
此功能能對(duì)借閱者信息進(jìn)行查看添加、刪除、修改。在這里給出刷新按鈕的實(shí)現(xiàn)過(guò)程
5.8.6圖書(shū)館身份維護(hù)功能的實(shí)現(xiàn)
這一部分是對(duì)借閱者身份進(jìn)行管理,能對(duì)身份進(jìn)行添加、刪除、修改。并且同樣的在listview中選中某條或多條記錄時(shí)會(huì)在相應(yīng)的右邊的組件中顯示出信息。此功能實(shí)現(xiàn)過(guò)程與前面所敘有雷同,略。
5.8.7圖書(shū)館借閱者統(tǒng)計(jì)功能的實(shí)現(xiàn)
此功能按借閱者身份進(jìn)行統(tǒng)計(jì),得出具有某種身份的借閱者總數(shù),此種身份的并借閱圖書(shū)的借閱者數(shù)和所借閱的圖書(shū)數(shù),在下面給出實(shí)現(xiàn)過(guò)程。
5.8.8圖書(shū)館統(tǒng)計(jì)借閱過(guò)期記錄功能的實(shí)現(xiàn)
打印出的借閱過(guò)期催還報(bào)表如下圖所示:
此報(bào)表能顯示按借書(shū)證號(hào)升序排列的借閱信息超過(guò)限定時(shí)限的信息,其中主要的SQL語(yǔ)句如下:
5.9系統(tǒng)信息顯示的實(shí)現(xiàn)
顯過(guò)本系統(tǒng)的信息,并且右邊的字向上滾動(dòng)顯示,主要實(shí)現(xiàn)如下:
從數(shù)據(jù)庫(kù)更新模型的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于從數(shù)據(jù)庫(kù)更新模型,大幅提升數(shù)據(jù)模型準(zhǔn)確性——數(shù)據(jù)庫(kù)更新模型,數(shù)據(jù)庫(kù)系統(tǒng)1-2:層次模型,數(shù)據(jù)庫(kù)優(yōu)化(ER模型設(shè)計(jì))的信息別忘了在本站進(jìn)行查找喔。
創(chuàng)新互聯(lián)成都網(wǎng)站建設(shè)公司提供專(zhuān)業(yè)的建站服務(wù),為您量身定制,歡迎來(lái)電(028-86922220)為您打造專(zhuān)屬于企業(yè)本身的網(wǎng)絡(luò)品牌形象。
成都創(chuàng)新互聯(lián)品牌官網(wǎng)提供專(zhuān)業(yè)的網(wǎng)站建設(shè)、設(shè)計(jì)、制作等服務(wù),是一家以網(wǎng)站建設(shè)為主要業(yè)務(wù)的公司,在網(wǎng)站建設(shè)、設(shè)計(jì)和制作領(lǐng)域具有豐富的經(jīng)驗(yàn)。
網(wǎng)頁(yè)標(biāo)題:大幅提升數(shù)據(jù)模型準(zhǔn)確性——數(shù)據(jù)庫(kù)更新模型(從數(shù)據(jù)庫(kù)更新模型)
網(wǎng)站路徑:http://www.dlmjj.cn/article/dppgooo.html


咨詢(xún)
建站咨詢(xún)
