時間:2023-03-10 14:48:05
序論:好文章的創(chuàng)作是一個不斷探索和完善的過程,我們?yōu)槟扑]十篇電子商務(wù)綜合論文范例,希望它們能助您一臂之力,提升您的閱讀品質(zhì),帶來更深刻的閱讀感受。
1.2主營業(yè)務(wù)相互影響大,經(jīng)營風(fēng)險不能分散證券經(jīng)紀(jì)、自營業(yè)務(wù)和投資銀行業(yè)務(wù)之間關(guān)聯(lián)性高,容易同向波動。當(dāng)市場行情好時,一級市場上企業(yè)融資活躍,證券公司的承銷業(yè)務(wù)好;二級市場交易也活躍,經(jīng)紀(jì)傭金收入也好;證券公司的自營業(yè)務(wù)收益也相應(yīng)較好。反之,當(dāng)市場行情不好時,三項(xiàng)業(yè)務(wù)收入同時急劇萎縮。從海通證券近幾年?duì)I業(yè)收入和利潤來看,營收和利潤受股市行情影響非常顯著,所以,我國證券公司的盈利模式受外部環(huán)境影響巨大,收益的穩(wěn)定性較差,當(dāng)市場行情不佳時,同時對公司的營收和利潤會造成較大的沖擊,導(dǎo)致企業(yè)抵御市場風(fēng)險能力低。
1.3行業(yè)集中度較低,同質(zhì)化競爭激烈截至2013年底,我國115家證券公司的總資產(chǎn)為2.08萬億元,凈資產(chǎn)為7538.55億元,我國證券公司的規(guī)模偏小,行業(yè)集中度不高,行業(yè)整體發(fā)展水平有待提升。截至2013年底,海通證券公司總資產(chǎn)為1290.18億元,凈資產(chǎn)603.11億元,均位列全國第二,而截至2011年6月30日,高盛公司的總資產(chǎn)為9,370億美元,是我國全部證券公司資產(chǎn)總額的近三倍。我國證券公司在業(yè)務(wù)創(chuàng)新上乏力,企業(yè)間同質(zhì)化競爭現(xiàn)象嚴(yán)峻,不利于市場的健康發(fā)展。我國證券市場在最近十幾年獲得了迅速發(fā)展,比如2012年滬、深兩市上市公司的數(shù)量達(dá)到2494家,相比1996年實(shí)現(xiàn)了6倍的快速增長,但由于證券公司的數(shù)量和規(guī)模增長,而新業(yè)務(wù)發(fā)展不足,導(dǎo)致經(jīng)紀(jì)業(yè)務(wù)和承銷業(yè)務(wù)面臨嚴(yán)重的同質(zhì)競爭,企業(yè)間對于客戶資源的爭奪異常激烈,對于行業(yè)的穩(wěn)定和有序發(fā)展造成了一定沖擊。
1.4證券公司缺乏專業(yè)人才,服務(wù)水平有待提升證券行業(yè)發(fā)展很快,但是相應(yīng)專業(yè)的研究和服務(wù)人員則配備不足,且專業(yè)能力有較大欠缺,一方面是證券公司不能基于客戶需求有效進(jìn)行業(yè)務(wù)創(chuàng)新,為客戶提供滿意的服務(wù),導(dǎo)致行業(yè)對于客戶的吸引力降低;另一方面,在粗放增長和人才缺乏的情況下,許多公司往往在吸引客戶開戶入市以后,采取較為粗放式的管理,形成了繁榮的假象,并使客戶對證券行業(yè)產(chǎn)生一定的負(fù)面印象,對證券行業(yè)的長期健康發(fā)展造成不利影響。
2、電子商務(wù)環(huán)境下我國證券公司業(yè)務(wù)的發(fā)展對策
近幾年電子商務(wù)的飛速發(fā)展增加了消費(fèi)者對互聯(lián)網(wǎng)金融服務(wù)的認(rèn)知和認(rèn)可,互聯(lián)網(wǎng)金融以其低成本、高便利、即時響應(yīng)、深度互動等特點(diǎn)為證券業(yè)務(wù)提供了新的發(fā)展空間,在此過程中證券公司需要做出調(diào)整,積極適應(yīng)市場環(huán)境變化,積極促進(jìn)業(yè)務(wù)發(fā)展。
2.1以互聯(lián)網(wǎng)為載體進(jìn)行業(yè)務(wù)創(chuàng)新,加強(qiáng)客戶溝通創(chuàng)新業(yè)務(wù)是國外證券公司提升服務(wù)能力和盈利水平的重要支撐,美國的資產(chǎn)管理、投資銀行等創(chuàng)新業(yè)務(wù)發(fā)展和傳統(tǒng)業(yè)務(wù)協(xié)調(diào)發(fā)展,為美國證券行業(yè)提供了廣闊的發(fā)展空間。從國外證券行業(yè)的發(fā)展歷史規(guī)律來看,隨著證券市場的發(fā)展和成熟,資產(chǎn)管理業(yè)務(wù)需求不斷增長,其在業(yè)務(wù)結(jié)構(gòu)中的占比會逐步提升。在今后一段時期,伴隨著我國經(jīng)濟(jì)的持續(xù)穩(wěn)步增長,公司和家庭資產(chǎn)管理需求會不斷增長,證券公司在提高投資傾向,優(yōu)化資金配置效率方面有廣闊的發(fā)展空間。為了能夠適應(yīng)這種需求,各證券公司應(yīng)加強(qiáng)研究工作,有效利用互聯(lián)網(wǎng)這個高效的載體,借助于大數(shù)據(jù)分析,以互聯(lián)網(wǎng)思維做引導(dǎo),積極探索和創(chuàng)新業(yè)務(wù)形式,推出更好契合客戶需求的各項(xiàng)增值業(yè)務(wù),加強(qiáng)與客戶之間的溝通,為資產(chǎn)管理、證券投資咨詢以及兼并重組等新型業(yè)務(wù)奠定堅實(shí)的基礎(chǔ)。
2.2加強(qiáng)行業(yè)整合,優(yōu)化線上線下融合布局中國證監(jiān)會對于業(yè)務(wù)開展有著相應(yīng)的準(zhǔn)入限制,業(yè)務(wù)開展能力需要和資本規(guī)模相匹配。證券公司的資本規(guī)模和它的整體運(yùn)作能力,抵御風(fēng)險能力有著較強(qiáng)的聯(lián)系。我國證券市場環(huán)境在開放性、透明性方面不斷完善,企業(yè)要在這個環(huán)境下謀求競爭力的提升,必然要涉及到如何整合資源,做大做強(qiáng)的問題。在政府層面,對我國各行業(yè)的做大做強(qiáng),優(yōu)化行業(yè)資源配置,適度提高行業(yè)集中度給予一定的期望。證券公司應(yīng)該積極依據(jù)政策導(dǎo)向,以市場需求為基礎(chǔ),積極利用行業(yè)發(fā)展過程中的并購重組機(jī)遇,通過資本化的運(yùn)作,增強(qiáng)證券公司的綜合實(shí)力,提高行業(yè)的集中度,打造出具有世界競爭力的一批優(yōu)秀證券公司。在電子商務(wù)環(huán)境下,傳統(tǒng)的布局?jǐn)U張方式需要做出調(diào)整,不能單純注重營業(yè)網(wǎng)點(diǎn)的數(shù)量,而是應(yīng)該做好線上線下布局的融合,更好發(fā)揮兩者的協(xié)同優(yōu)勢,因此應(yīng)該加強(qiáng)對于網(wǎng)點(diǎn)布局的統(tǒng)籌,一方面使網(wǎng)點(diǎn)的輻射能力得到強(qiáng)化,并借此彌補(bǔ)互聯(lián)網(wǎng)服務(wù)的不足之處,另一方面加強(qiáng)互聯(lián)網(wǎng)和移動終端的服務(wù)能力,有效降低客戶服務(wù)成本,并實(shí)現(xiàn)高效、即時、深度、優(yōu)質(zhì)的服務(wù)。
[2]財政部,企業(yè)會計準(zhǔn)則――運(yùn)用指南(M),中國財政經(jīng)濟(jì)出版社,2006
[3]財政部,國家稅務(wù)總局,中國人民共和國增值稅暫行條例實(shí)施細(xì)則,2008.12
[4]國稅發(fā)[1998]137號:國家稅務(wù)總局關(guān)于企業(yè)所屬機(jī)構(gòu)間移送貨物征收增值稅問題的通知,1998.08
[5]中國注冊會計師協(xié)會,會計(M),經(jīng)濟(jì)科學(xué)出版社、中國財政經(jīng)濟(jì)出版社,2013
[6]石帆,視同銷售業(yè)務(wù)會計與稅務(wù)處理淺析(J),財會通訊,2011.12
[7]陳留平,劉通.視同銷售會計處理方法再探討,財會通訊綜合,2010(12)
[8]劉瑞山.增值稅視同銷售貨物行為的收入確認(rèn)探討.《中國證券期貨》- 2011-08-25
[9]王立東;朱海燕; 會計職稱考試中對視同銷售業(yè)務(wù)的處理思維.《中國鄉(xiāng)鎮(zhèn)企業(yè)會計》- 2010-01-15
[10]郭西強(qiáng); 視同銷售行為賬務(wù)處理的探討.《中國管理信息化》- 2008-08-01
[11]視同銷售業(yè)務(wù)會計與稅法處理的異同=賬務(wù)處理專版=東方CFO會計論壇|行業(yè)會計|會計網(wǎng)校|會計培訓(xùn)|兼職會計|會計招聘.Powered by phpwin-.《網(wǎng)絡(luò)()》- 2011-04-13
[12][轉(zhuǎn)載]視同銷售的稅收政策和會計處理技巧_阿城區(qū)國稅局稅源一科.《網(wǎng)絡(luò)()》- 2012-11-19
[13]售價-營銷百科全書- 科技中國――歡迎光臨全球最大的互聯(lián)網(wǎng)博物館 -全球第一互聯(lián)網(wǎng)博物館,你我的知識加油站.《網(wǎng)絡(luò)()》- 2012-11-14
[15]新準(zhǔn)則對流轉(zhuǎn)稅等若干稅種的影響-會計網(wǎng)站|會計分錄|做賬技巧|會計職稱-《網(wǎng)絡(luò)()》- 2010-10-24
一、緒論
藥品是關(guān)乎人們切身利益的一種特殊產(chǎn)品,隨著人均收入水平的提高,人們更加注重藥品的質(zhì)量、品牌、包裝等。消費(fèi)者能夠感受到藥品的微小差別而且具有一定的偏好,不會因?yàn)楫?dāng)兩種藥品價格有差異時造成價格高的藥品完全銷售不出去。此外,制藥企業(yè)存在生產(chǎn)能力約束,沒有任何一家制藥企業(yè)有能力生產(chǎn)足夠的藥品來滿足整個市場。中國現(xiàn)階段的制藥企業(yè)低水平重復(fù)建設(shè)問題嚴(yán)重。企業(yè)數(shù)量多,規(guī)模小,生產(chǎn)集中度低,產(chǎn)品結(jié)構(gòu)雷同,生產(chǎn)能力過剩,全行業(yè)設(shè)備利用率不足一半。這些都增加了企業(yè)的生產(chǎn)成本,是利潤率走低的一個重要原因。為緩解藥價虛高問題,政府應(yīng)該放松管制,為藥品生產(chǎn)領(lǐng)域創(chuàng)造自由競爭的市場氛圍,制藥企業(yè)通過兼并、聯(lián)合、重組,實(shí)現(xiàn)優(yōu)勝劣汰、適度集中和效率提高。制藥企業(yè)在市場自由競爭下的合并重組可以實(shí)現(xiàn)資源的優(yōu)化配置。同時促使企業(yè)加大研發(fā)投入,進(jìn)行科技創(chuàng)新,擺脫僅生產(chǎn)仿制藥的困局,提高市場競爭力?,F(xiàn)階段中國的醫(yī)療機(jī)構(gòu)進(jìn)入壁壘較高,同時醫(yī)療體制改革相對滯后,這些導(dǎo)致公立醫(yī)院仍然是壟斷者。公立醫(yī)院具有公益性質(zhì),其經(jīng)費(fèi)來源于財政撥款、醫(yī)療服務(wù)收入和藥品收入。改革開放后,政府的財政投入占醫(yī)院總收入的比重逐年減少,目前這個比例全國平均不足10%。為保證正常運(yùn)轉(zhuǎn),政策上允許醫(yī)院以15%的藥品進(jìn)銷差價來彌補(bǔ)虧空,即“以藥養(yǎng)醫(yī)”的補(bǔ)償機(jī)制?!耙运庰B(yǎng)醫(yī)”機(jī)制的合法化使得醫(yī)院獲得了通過出售藥品取得盈利的合法權(quán)力。公立醫(yī)院成為了通過高價出售藥品的營利性機(jī)構(gòu),藥品銷售成為了醫(yī)院收入的主要來源。
二、文獻(xiàn)概覽
標(biāo)題:藥品功能、藥品銷售渠、藥品價格、藥品促銷方式、藥品品牌形象、公共權(quán)力與藥品營銷額度之間的關(guān)系。
陳宏付(2002年)認(rèn)為在藥品銷售的過程中,非處方藥品與普通商品的銷售相比而言,顧客重效用而輕價格,即顧客購買藥品時藥品的效用是首要考慮因素,即藥品療效。顧客為圖個方便,只要藥效好,即使藥品稍貴些也愿買。一般而言,顧客心里通常是先考慮商品的品質(zhì)、價格和自身承受能力,后考慮商品的效用,這是由人的本性所決定的。歸成(2010)指出在世界藥品銷售額度排名中,抗腫瘤類的藥品銷售額度最高,達(dá)481.89億美元,年增長率為11.3%,其次是調(diào)脂類藥品,再次就是呼吸系統(tǒng)用藥類達(dá)312.71億美元,增幅達(dá)5.7%,再就是質(zhì)子抑制類劑、抗抑郁藥、自身免疫藥等的銷售額度也都分別增長16.9%,上述藥品由于藥品功能性的差異性,導(dǎo)致藥品銷售額度方面的差異。
曾建雄(2012)藥品銷售人員依靠醫(yī)藥專業(yè)知識,以及其它綜合專業(yè)知識的運(yùn)用,通過提升對于顧客用藥咨詢的指導(dǎo)水平和提高顧客滿意度的方式,在關(guān)聯(lián)用藥的促銷推薦上,實(shí)現(xiàn)藥品用藥的有的放矢,從而提高了藥品銷售促銷的成功率。根據(jù)在現(xiàn)代市場營銷的理念,顧客所得的讓渡價值不可以簡單地把價值與價格等同,所以在日益競爭加劇藥品營銷市場環(huán)境中,誰對顧客具有更大的讓渡價值,誰就是市場營銷的主導(dǎo)者,誰就可以提高自己藥品的銷售額度。所以通過為顧客提供服務(wù)價值的促銷方式,讓顧客獲得更多的讓渡價值。王曉敏(2005)認(rèn)為廣告促銷在提高藥品銷售的宣傳過程中是最有效、最節(jié)省時間和成本的方法,尤其是在非處方藥品的促銷中,廣告促銷是必不可少的。例如,某個藥品憑借中央媒體和地方媒體的廣告宣傳促銷的方式,在很短的時間內(nèi),就實(shí)現(xiàn)了聞名全國的促銷效果。另外,對于藥品進(jìn)行廣告藝術(shù)性的宣傳表現(xiàn),把藥品的特性和療效進(jìn)行充分的宣傳,從引起患者視覺和聽覺方面的共鳴,從而激起顧客的購買欲望。
陳莎(2012)指出中國藥品電子商務(wù)是目前新興的藥品銷售渠道,它通過網(wǎng)絡(luò)技術(shù)和SaaS交付模式,連接全球的藥品供應(yīng)鏈網(wǎng)絡(luò),實(shí)現(xiàn)了藥品企業(yè)管理和電子商務(wù)及藥品供應(yīng)鏈的一體化,從而保證了藥品企業(yè)內(nèi)部管理及企業(yè)間的商務(wù)流程有效協(xié)同。在全球信息化程度不斷提高的情況下,中國藥品電子商務(wù)的通過網(wǎng)絡(luò)銷售渠道的形式,實(shí)現(xiàn)了為消費(fèi)者提供便捷的藥品服務(wù)的目標(biāo)和方便及時、成本低廉的效果。
李榮凌(2009)指出國家規(guī)定藥品價格下降之后雖然某醫(yī)院的藥品總銷售金額和付款金額扔逐年遞增,但增長幅度不同,從加成率、利潤率看是逐年降低的,利潤率下降幅度為52.88%,利潤率的降低,導(dǎo)致醫(yī)院利潤減少,患者受益增多。隨著降價比例增大及進(jìn)價下降,醫(yī)院藥品零售價下降幅度較大,利潤減少率和患者受益率均不斷增大,且利潤減少率起點(diǎn)為57.5%;國家規(guī)定的藥品零售價下降幅度和患者受益率增大幅度要小些,而利潤減少率卻逐漸增大,當(dāng)降價比例達(dá)39.3%時,利潤減少率為零。當(dāng)進(jìn)價變動比例提高,當(dāng)提高17.65%時,醫(yī)院利潤減少一半,患者受益為零??偟膩碚f,這兩種價格體系雖然對商業(yè)公司和藥廠影響較小,但醫(yī)院的利潤率卻減少在50%以上,患者也得到一定實(shí)惠。當(dāng)藥品進(jìn)價下降時,患者受益率增大,醫(yī)院利潤率減少。當(dāng)藥品進(jìn)價與降價比例過大時,商業(yè)公司和藥廠都沒有一定利潤,就不會銷售藥品了,醫(yī)院也就無法購進(jìn)進(jìn)行銷售了,所以藥品的銷售價格對于藥品銷售額度具有直接性的決定作用。馮國忠(2006)認(rèn)為在藥品銷售過程中應(yīng)該摒棄“價格=成本+利潤”的定價方式,應(yīng)該把消費(fèi)者也歸入價格體系中。例如一種OTC的外用抗感染藥,屬微量消費(fèi)品,需求彈性小,其包裝規(guī)格應(yīng)以2~3d用藥量為宜,單位包裝價格就不宜過高,包裝也不宜過大,否則消費(fèi)者會有一種浪費(fèi)的感覺,這樣可使藥品的零售單價降到一個讓消費(fèi)者更能普遍接受的水平,從而可以擴(kuò)大購買此藥品的消費(fèi)者群體的數(shù)量,并最終促進(jìn)藥品銷售額度的增加。
毛小青(2012)認(rèn)為在藥品銷售過程中通過品牌提升策略,來改善和提高影響藥品品牌的各項(xiàng)要素,即通過各種形式的廣告宣傳來提高藥品品牌知名度和美譽(yù)度。消費(fèi)者在購買決策過程中的重要環(huán)節(jié)是藥品品牌的評價,另外中國人在購買商品時也有求名的動機(jī),故此藥品銷售人員要適應(yīng)其求名的購物動機(jī)的心理,來不斷地提升藥品品牌。做品牌比做銷量更加重要,這在醫(yī)藥銷售行業(yè)已經(jīng)達(dá)成共識。例如,在品牌營銷模式的運(yùn)用中,東盛科技掀起了名為“抗感風(fēng)暴”的品牌戰(zhàn)略:用白加黑支撐起東盛科技的企業(yè)品牌,再憑借東盛的實(shí)力,推出東盛牌板藍(lán)根顆粒、東盛牌抗病毒口服液等一系列感冒藥,形成了一個抗感家族。
田瑋(2010)指出藥品企業(yè)要及時配合政府政策規(guī)定,來規(guī)范和約束自己的銷售人員,用合法的營銷手段獲取合理的利潤。例如國內(nèi)一些藥品合資企業(yè)聯(lián)合簽署的《醫(yī)藥銷售人員行為規(guī)范準(zhǔn)則》,這對于加強(qiáng)藥品行業(yè)的監(jiān)督和管理和整合醫(yī)藥銷售市場具有一定的凈化作用。藥品企業(yè)通過加強(qiáng)對國家政策的追蹤和分析,以及政策預(yù)警方面的研究,并通過對于招標(biāo)采購和降價及醫(yī)藥分家等國家政策對于藥品銷售方面的影響,及時調(diào)整推廣策略和推廣重點(diǎn),讓藥品銷售策略和行動步調(diào)的實(shí)現(xiàn)了協(xié)調(diào)統(tǒng)一。
通過以上研究文獻(xiàn)的概覽可知:藥品的功能、藥品銷售渠道、藥品促銷方式、藥品價格、藥品品牌形象、關(guān)于藥品的公共權(quán)力政策都分別與北京市藥品銷售額度具有顯著的相互關(guān)聯(lián)性。
三、研究方法與設(shè)計
本論文采用定量研究與演繹推理相互結(jié)合的方法。
把第一手?jǐn)?shù)據(jù)資料作為研究數(shù)據(jù)的來源,把第二手?jǐn)?shù)據(jù)作為參考資料。
把根據(jù)李克特測量量表形式編制的調(diào)查問卷作為研究工具。
本論文共發(fā)放調(diào)查問卷500份,具體分配比例為:北京藥品銷售商250份、藥品消費(fèi)者250份。有效回收共計488份,有效率為97.6%,完全符合論文設(shè)計要求。四、數(shù)據(jù)分析
信度分析:
“藥品功能、藥品促銷方式、藥品銷售渠道、藥品價格、藥品品牌、公共權(quán)力、藥品銷售額度”的Cronbachα系數(shù)值結(jié)果分別是:0.776、0.758、0.729、0.730、0.785、0.711、0.762,上述不同變量的信度數(shù)值都大于論文設(shè)計規(guī)定的最低信度數(shù)值0.6,完全符合論文設(shè)計與研究的要求。
效度分析:
通過運(yùn)用主成分分析法得出因子載荷值為0.682-0.789,超過0.5,這表明變量中的各個題目與其相應(yīng)變量之間均存在較大的相關(guān)性,輔合效度符合設(shè)計要求。研究對象通過旋轉(zhuǎn)成份矩陣被分為七個成份,基本驗(yàn)證了本調(diào)查問卷的各題目具有相對獨(dú)立性,判別效度符合設(shè)計要求。
描述性分析:
總體均值中最高的是公共權(quán)力(4.5689),其次是藥品價格(4.3831),第三是藥品功能(3.9441),第四是藥品銷售額度(3.9313),第五是藥品促銷方式(3.7561),第六是藥品品牌(3.6537)、第七是藥品銷售渠道(3.3718)。其中應(yīng)答者對于“藥品銷售渠道”的回答得分最高,對于“公共權(quán)力”的回答得分最低。
標(biāo)準(zhǔn)差中最高的是藥品促銷方式(0.94523),其次是藥品功能(0.92804),第三是藥品銷售額度(0.89528),第四是藥品品牌(0.89443),第五是藥品價格(0.88537),第六是藥品銷售渠道(0.86689)、第七是公共權(quán)力(0.85393)。其中應(yīng)答者對于“藥品促銷方式”的回答意見分歧最大,對于“公共權(quán)力”的回答意見最為集中。
皮爾遜(積矩)分析:
自變量“藥品功能、促銷方式、銷售渠道、藥品價格、藥品品牌、公共權(quán)力”和因變量“藥品銷售額度”之間的相關(guān)系數(shù)的絕對值分別為0.596、0.527、0.549、0.565、0.574、0.582,介于0.40-0.60之間,說明這六個變量和因變量之間存在中等強(qiáng)度的正相關(guān)性。所有自變量相互兩者之間的相關(guān)系數(shù)為0.017~0.199之間,均小于0.4的相關(guān)性,表示自變量相互之間具有獨(dú)立性。
四、結(jié)論
本論文通過文獻(xiàn)概覽和調(diào)查問卷的方式,并結(jié)合相關(guān)研究數(shù)據(jù)的分析,對北京地區(qū)藥品銷售額度的影響因素進(jìn)行了分析,在第一章中提出的研究問題在此被驗(yàn)證。即對于“北京藥品銷售額度”具有影響的因素有“藥品功能、促銷方式、銷售渠道、藥品價格、藥品品牌、公共權(quán)力”,這些影響因素與“北京藥品銷售額度”之間存在中等強(qiáng)度的正相關(guān)性。同時由于只是選取了六個自變量作為研究變量對于北京藥品銷售額度的影響作用進(jìn)行了研究,在理論和實(shí)踐方面對于本論文的研究意義都是一個限制。
參考文獻(xiàn):
[1]田瑋.淺析零售藥店在藥品銷售中存在的問題.中外醫(yī)療[J].2010.18.
[2]陳莎.基于B2C模式的藥品銷售平臺.商場現(xiàn)代化[J].2012.5.
[3]歸成.金融危機(jī)對世界藥品銷售的影響.上海醫(yī)藥[J].2010.1.
[4]毛小青.論提高藥品銷售業(yè)績的策略.現(xiàn)代商貿(mào)工業(yè)[J].2012.3.
[5]曾建雄.淺談關(guān)聯(lián)用藥銷售的營銷策略.北方藥學(xué)[J].2012.9.
[6]馮國忠.我國OTC藥品營銷的4P和4C戰(zhàn)略.齊魯藥事[J].2006.10.
[7]李榮凌\張蔚.定價政策對醫(yī)院藥品銷售情況影響分析.中國醫(yī)院藥學(xué)雜志[J].2009.29(02).
2.2.1 多級存儲器體系
2.2.2 Cache概述
2.2.3 Cache的映像方式
2.3 流水線
2.3.1 流水線的概念
2.3.2 流水線阻塞
2.3.3 流水線的吞吐率
2.3.4 流水線的加速比
2.3.5 流水線的效率
2.4 磁盤調(diào)度
2.4.1 磁盤結(jié)構(gòu)與參數(shù)
2.4.2 數(shù)據(jù)存取過程
2.4.3 磁盤調(diào)度算法
2.5 數(shù)制
2.5.1 進(jìn)制的表示及轉(zhuǎn)換
2.5.2 三種常用的碼制
2.6 內(nèi)存編址方法
2.7 計算機(jī)的分類
2.8 并行計算問題
第3章數(shù)據(jù)通信與計算機(jī)網(wǎng)絡(luò)(217分鐘)
3.1 考點(diǎn)分析
3.2 開放系統(tǒng)互聯(lián)參考模型
3.3 計算機(jī)網(wǎng)絡(luò)分類
3.3.1 局域網(wǎng)
3.3.2 千兆以太網(wǎng)
3.3.3 無線LAN
3.4 網(wǎng)絡(luò)設(shè)備
3.4.1 常用網(wǎng)絡(luò)連接設(shè)備
3.4.2 路由算法
3.4.3 路由協(xié)議
3.5 IP地址與子網(wǎng)劃分
3.5.1 IP地址
3.5.2 子網(wǎng)掩碼
3.6 虛擬局域網(wǎng)
第4章操作系統(tǒng) (281分鐘)
4.1 考點(diǎn)分析
4.2 操作系統(tǒng)的類型與結(jié)構(gòu)
4.3 進(jìn)程管理
4.3.1 進(jìn)程的狀態(tài)
4.3.2 PV操作
4.3.3 死鎖問題
4.3.4 管程與線程
4.4 虛擬存儲管理
4.4.1 地址變換
4.4.2 存儲組織
4.4.3 存儲管理
4.5 作業(yè)管理
4.5.1 作業(yè)狀態(tài)與作業(yè)管理
4.5.2 作業(yè)調(diào)度算法
4.5.3 作業(yè)周轉(zhuǎn)時間
4.6 文件管理
4.6.1 文件的邏輯組織
4.6.2 文件的物理組織
4.6.3 樹型目錄結(jié)構(gòu)
4.7 設(shè)備管理
4.8 UNIX的SHELL程序
第5章數(shù)據(jù)庫系統(tǒng) (367分鐘)
5.1 考點(diǎn)分析
5.2 元組演算
5.3 范式理論
5.3.1 函數(shù)依賴與范式
5.3.2 模式分解
5.3.3 多值依賴與4NF
5.4 并發(fā)控制
5.5 數(shù)據(jù)庫設(shè)計
5.5.1 數(shù)據(jù)庫設(shè)計階段
5.5.2 E-R模型
5.6 數(shù)據(jù)庫安全
5.6.1 用戶認(rèn)證
5.6.2 用戶角色
5.6.3 數(shù)據(jù)授權(quán)
5.6.4 數(shù)據(jù)庫視圖
5.6.5 審計功能
5.7 分布式數(shù)據(jù)庫
5.7.1 分布式數(shù)據(jù)庫的體系結(jié)構(gòu)
5.7.2 分布透明性
5.7.3 分布式數(shù)據(jù)庫管理系統(tǒng)
5.7.4 分布式查詢處理和優(yōu)化
5.8 數(shù)據(jù)倉庫
5.8.1 OLAP與OLTP的比較
5.8.2 數(shù)據(jù)倉庫的概念
5.8.4 數(shù)據(jù)倉庫的體系結(jié)構(gòu)
5.8.5 數(shù)據(jù)倉庫的設(shè)計與開發(fā)
5.9 數(shù)據(jù)挖掘
5.9.1 數(shù)據(jù)挖掘一般結(jié)構(gòu)
5.9.2 數(shù)據(jù)挖掘的方法和技術(shù)
第6章系統(tǒng)配置與性能評價(98分鐘)
6.1 考點(diǎn)分析
6.2 系統(tǒng)可靠性
6.2.1 可靠性性概述
6.2.2 可靠性計算
6.3 性能評價方法
6.3.1 時鐘頻率法
6.3.2 指令執(zhí)行速度法
6.3.3 等效指令速度法
6.3.4 數(shù)據(jù)處理速率法
6.3.5 綜合理論性能法
6.3.6 基準(zhǔn)程序法
6.4 軟件容錯
第7章信息化基礎(chǔ)知識(103分鐘)
7.1 考點(diǎn)分析
7.2 信息的定義與特征
7.3 企業(yè)信息化
7.3.1 企業(yè)資源計劃
7.3.2 客戶關(guān)系管理
7.3.3 企業(yè)門戶
7.3.4 企業(yè)應(yīng)用集成
7.3.5 供應(yīng)鏈管理
7.3.6 商業(yè)智能
7.4 電子政務(wù)
7.5 電子商務(wù)
第8章信息系統(tǒng)建設(shè)(337分鐘)
8.1 考點(diǎn)分析
8.2 信息系統(tǒng)工程
8.2.1 系統(tǒng)的特性
8.2.2 系統(tǒng)理論
8.2.3 系統(tǒng)工程
8.2.4 信息系統(tǒng)工程
8.3 企業(yè)系統(tǒng)規(guī)劃方法
8.3.1 BSP方法概述
8.3.2 BSP方法的研究步驟
8.3.3 定義企業(yè)過程
8.3.4 定義數(shù)據(jù)類
8.3.5 分析現(xiàn)存系統(tǒng)支持
8.3.6 定義信息總體結(jié)構(gòu)
8.3.7 確定總體結(jié)構(gòu)中的優(yōu)先順序
8.3.8 評價信息資源管理工作
8.3.9 制定建議書和開發(fā)計劃
8.3.10 研究成果報告
8.4 戰(zhàn)略數(shù)據(jù)規(guī)劃方法
8.4.1 概述
8.4.2 自頂向下的規(guī)劃
8.4.3 企業(yè)模型的建立
8.4.4 主題數(shù)據(jù)庫及其組合
8.4.5 戰(zhàn)略數(shù)據(jù)規(guī)劃的執(zhí)行過程
8.4.6 總結(jié)
8.5 信息工程方法
8.5.1 信息工程方法
8.5.2 信息戰(zhàn)略規(guī)劃
8.5.3 建立企業(yè)模型
8.5.4 確定企業(yè)信息結(jié)構(gòu)
8.5.5 確定業(yè)務(wù)系統(tǒng)結(jié)構(gòu)
8.5.6 確定系統(tǒng)的技術(shù)結(jié)構(gòu)
8.5.7 信息戰(zhàn)略規(guī)劃報告
第9章軟件工程與軟件過程改進(jìn) (704分鐘)
9.1 考點(diǎn)分析
9.2 軟件開發(fā)方法
9.2.1 軟件開發(fā)模型
9.2.2 第4代技術(shù)
9.2.3 原型化方法
9.2.4 敏捷方法
9.2.5 凈室軟件工程
9.3 總體規(guī)劃與軟件定義
9.3.1 概述
9.3.2 目標(biāo)系統(tǒng)框架分析
9.3.3 可行性分析
9.3.4 新舊系統(tǒng)的分析和比較
9.4 需求分析
9.4.1 概述
9.4.2 需求定義方法
9.4.3 需求捕獲方法
9.4.4 需求分析方法
9.4.5 軟件需求說明書
9.5 軟件設(shè)計
9.5.1 總體結(jié)構(gòu)設(shè)計
9.5.2 詳細(xì)設(shè)計
9.6 軟件測試
9.6.1 概述
9.6.2 測試方法
9.6.3 測試步驟
9.7 軟件運(yùn)行與維護(hù)
9.7.1 軟件維護(hù)
9.7.2 再工程與逆向工程
9.7.3 系統(tǒng)評價
9.7.4 運(yùn)行管理
9.8 構(gòu)件與軟件復(fù)用
9.8.1 軟件復(fù)用
9.8.2 構(gòu)件技術(shù)
9.9 軟件開發(fā)環(huán)境
9.10 軟件體系結(jié)構(gòu)
9.10.1 軟件體系結(jié)構(gòu)建模
9.10.2 軟件體系結(jié)構(gòu)風(fēng)格
9.11 軟件過程改進(jìn)
9.11.1 CMM模型
9.11.2 PSP和TSP
9.11.3 軟件過程評估標(biāo)準(zhǔn)
第10章面向?qū)ο蠓椒▽W(xué) (229分鐘)
10.1 考點(diǎn)分析
10.2 面向?qū)ο蠡A(chǔ)
10.2.1 基本概念
10.2.2 類的定義
10.2.3 面向?qū)ο蠓椒?/p>
10.3 統(tǒng)一建模語言
10.3.1 UML結(jié)構(gòu)
10.3.2 用例圖
10.3.3 類圖與對象圖
10.3.4 交互圖
10.3.5 狀態(tài)圖
10.3.6 活動圖
10.3.7 構(gòu)件圖
10.3.8 部署圖
10.4 面向?qū)ο蠓治?/p>
10.4.1 建立域模型
10.4.2 建立用例模型
第11章軟件項(xiàng)目管理(303分鐘)
11.1 考點(diǎn)分析
11.2 項(xiàng)目管理工具
11.2.1 圖形工具
12.2.2 工具軟件
11.3 軟件成本管理
11.3.1 軟件成本估算
11.3.2 成本效益分析
11.4 軟件進(jìn)度管理
11.4.1 軟件生產(chǎn)率
11.4.2 任務(wù)的確定與并行性
11.4.3 制定開發(fā)進(jìn)度計劃
11.4.4 進(jìn)度安排的方法
11.4.5 項(xiàng)目的追蹤和控制
11.5 軟件風(fēng)險管理
11.5.1 風(fēng)險識別
11.5.2 風(fēng)險評估
11.5.3 風(fēng)險量化和處理
11.5.4 風(fēng)險監(jiān)控
11.5.5 常見風(fēng)險及應(yīng)對措施
11.6 軟件質(zhì)量管理
11.6.1 質(zhì)量特性
11.6.2 軟件質(zhì)量保證
11.6.3 全面質(zhì)量管理
11.6.4 六西格瑪管理
11.7 軟件配置管理
11.7.1 基線與軟件配置項(xiàng)
11.7.2 軟件配置管理的過程
11.7.3 配置標(biāo)識
11.7.4 版本控制
11.7.5 變更控制
11.7.6 配置狀態(tài)報告
11.7.7 配置管理數(shù)據(jù)庫
11.7.8 配置審核
11.8 軟件文檔管理
11.8.1 文檔的種類
11.8.2 文檔管理標(biāo)準(zhǔn)化
11.9 軟件項(xiàng)目的組織
11.9.1 項(xiàng)目任務(wù)的劃分
11.9.2 軟件項(xiàng)目組織的建立
11.9.3 人員配備
11.9.4 指導(dǎo)與檢驗(yàn)
第12章安全性知識(341分鐘)
12.1 考點(diǎn)分析
12.2 數(shù)據(jù)安全與保密
12.2.1 密碼術(shù)的發(fā)展
12.2.2 加密體制
12.2.3 PKI與數(shù)字簽名
12.2.4 數(shù)字信封
12.2.5 PGP
12.3 計算機(jī)網(wǎng)絡(luò)安全
12.3.1 網(wǎng)絡(luò)安全機(jī)制
12.3.2 網(wǎng)絡(luò)安全防范體系
12.3.3 單點(diǎn)登陸技術(shù)
12.3.4 集中式認(rèn)證服務(wù)
12.3.5 無線設(shè)備的安全性
12.3.6 防火墻
12.3.7 入侵檢測
12.3.8 虛擬專用網(wǎng)
12.3.9 IPSec
12.4 電子商務(wù)安全
12.4.1 SSL
12.4.2 SET
12.4.3 SET與SSL的比較
12.4.4 認(rèn)證中心
12.5 安全管理
12.5.1 安全策略
12.5.2 風(fēng)險分析與管理
12.6 安全體系結(jié)構(gòu)和模型
12.6.1 Unix系統(tǒng)的安全性
12.6.2 數(shù)據(jù)庫的完整性
12.7 計算機(jī)操作安全
12.7.1 安全威脅
12.7.2 物理安全
12.8 業(yè)務(wù)持續(xù)和災(zāi)難恢復(fù)規(guī)劃
12.8.1 業(yè)務(wù)持續(xù)規(guī)劃
12.8.2 災(zāi)難恢復(fù)規(guī)劃
12.8.3 數(shù)據(jù)庫的備份與恢復(fù)
第13章標(biāo)準(zhǔn)化知識(167分鐘)
13.1 考點(diǎn)分析
13.2 標(biāo)準(zhǔn)化法
13.2.1 標(biāo)準(zhǔn)的制定
13.2.2 標(biāo)準(zhǔn)的表示
13.3 可擴(kuò)展標(biāo)記語言
13.3.1 XML的組織
13.3.2 CSS與XSL
13.3.3 XML編程接口
13.4 CORBA
13.5 計算機(jī)信息安全標(biāo)準(zhǔn)
13.5.1 可信計算機(jī)系統(tǒng)評價準(zhǔn)則
13.5.2 ISO 7498-2標(biāo)準(zhǔn)
13.5.3 BS7799標(biāo)準(zhǔn)
13.5.4 其他標(biāo)準(zhǔn)
第14章軟件的知識產(chǎn)權(quán)保護(hù)(95分鐘)
14.1 考點(diǎn)分析
14.2 著作權(quán)法及實(shí)施條例
14.2.1 總則
14.2.2 著作權(quán)
14.2.3 出版、表演、錄音錄像、播放
14.2.4 法律責(zé)任和執(zhí)法措施
14.3 計算機(jī)軟件保護(hù)條例
14.3.1 總則
14.3.2 軟件著作權(quán)
14.3.3 軟件著作權(quán)的許可使用和轉(zhuǎn)讓
14.3.4 法律責(zé)任
14.4 商標(biāo)法及實(shí)施條例
14.4.1 總則
14.4.2 商標(biāo)注冊的申請
14.4.3 商標(biāo)注冊申請的審查
14.4.4 注冊商標(biāo)的變更、轉(zhuǎn)讓、續(xù)展
14.4.5 商標(biāo)使用的管理
14.4.6 注冊商標(biāo)專用權(quán)的保護(hù)
14.5 專利法及實(shí)施細(xì)則
14.5.1 總則
14.5.2 專利的申請
14.5.3 專利申請的審查和批準(zhǔn)
14.5.4 專利實(shí)施的強(qiáng)制許可
14.5.5 對發(fā)明人的獎勵和報酬
14.5.6 專利權(quán)的保護(hù)
14.5.7 費(fèi)用
14.6 反不正當(dāng)競爭法
14.6.1 不正當(dāng)競爭行為
14.6.2 監(jiān)督檢查
14.6.3 法律責(zé)任
第15章多媒體基礎(chǔ)知識(183分鐘)
15.1 考點(diǎn)分析
15.2 多媒體技術(shù)基本概念
15.3 數(shù)據(jù)編碼技術(shù)
15.3.1 數(shù)據(jù)編碼方法
15.4 數(shù)據(jù)編碼標(biāo)準(zhǔn)
15.5 圖形圖像
15.6 音頻
15.7 視頻
15.7.1 視頻文件格式
15.7.2 視頻點(diǎn)播
15.7.3 視頻會議系統(tǒng)
15.8 多媒體數(shù)據(jù)庫
15.9 流媒體
第16章離散數(shù)學(xué) (414分鐘)
16.1 考點(diǎn)分析
16.2 集合論
16.2.1 集合及運(yùn)算
16.2.2 等價關(guān)系
16.2.3 偏序與哈斯圖
16.2.4 函數(shù)
16.3 圖論
16.3.1 特殊圖
16.3.2 最小生成樹
16.3.3 最短路徑
16.3.4 關(guān)鍵路徑
16.4 數(shù)理邏輯
16.4.1 命題的表示
16.4.2 等值演算
16.5 代數(shù)系統(tǒng)
16.5.1 二元運(yùn)算及其性質(zhì)
16.5.2 代數(shù)系統(tǒng)的概念
16.5.3 半群與群
16.6 組合數(shù)學(xué)
16.6.1 計數(shù)原理基礎(chǔ)
16.6.2 排列
16.6.3 組合
16.6.4 鴿巢原理
16.6.5 容斥原理
第17章信息系統(tǒng)分析與設(shè)計案例(90分鐘)
17.1 考點(diǎn)分析
17.2 如何選題和答題
17.3 分類解答方法
第18章信息系統(tǒng)分析與設(shè)計論文(185分鐘)
18.1 考點(diǎn)分析
18.2 軟件工程試題歸類
18.3 論文寫作注意事項(xiàng)
18.3.1 學(xué)習(xí)方法
18.3.2 論文準(zhǔn)備
18.3.3 合格論文的條件
18.3.4 論文解答步驟
18.3.5 例題
我國高等院校的教學(xué)方法與教學(xué)理念不斷變革,社會中需要的高校人才也已經(jīng)傾向于創(chuàng)新性和實(shí)踐性的高級專業(yè)技術(shù)人才,所以,高校培養(yǎng)人才的根本任務(wù)還需要放在學(xué)生的創(chuàng)新性和實(shí)踐性方面,如果針對工商管理學(xué)科中的創(chuàng)新性與實(shí)踐性教學(xué),便需要通過課堂實(shí)驗(yàn)教學(xué)方法的開展,從多領(lǐng)域理論、多創(chuàng)新教學(xué)方法和高技術(shù)水平的教學(xué),系統(tǒng)的開展工商管理活動的應(yīng)用課程。
一、管理實(shí)驗(yàn)教學(xué)的意義
高校中的工商管理學(xué)科屬于軟科學(xué)類,相比其他軟科學(xué)類專業(yè)而言,工商管理學(xué)科更注重學(xué)生的實(shí)踐性與實(shí)際操作能力,所以,培養(yǎng)學(xué)生能力重點(diǎn)在這兩方面。根據(jù)高等教育司針對普通高等學(xué)校工商管理專業(yè)人才社會需求和培養(yǎng)問題的調(diào)查報告顯示,我國2010~2013年普通高等院校中的工商管理??圃鲋?866個,可以看出我國高校對工商管理專業(yè)十分重視。
工商管理專業(yè)人才日后面臨的就業(yè)方向是企業(yè)管理,而企業(yè)最需要既懂理論、又懂實(shí)踐的專業(yè)性、復(fù)合性人才,這是為了保證企業(yè)有一個良好的管理手段和管理決策,促動企業(yè)積極發(fā)展。所以,在高校中對學(xué)生的管理教學(xué)就顯得十分重要,教學(xué)方式、教學(xué)理念也需要加以調(diào)整,通過實(shí)驗(yàn)教學(xué),學(xué)生正確理解和運(yùn)用管理理論和方法,發(fā)現(xiàn)和總結(jié)在管理中出現(xiàn)的一系列問題,并增強(qiáng)自身抗壓性和應(yīng)變能力,從而既鞏固了理論知識的掌握,又培養(yǎng)了學(xué)生敏銳的洞察力。因此,高校中開展管理實(shí)驗(yàn)教學(xué)具有十分重要的現(xiàn)實(shí)意義。
二、工商管理專業(yè)實(shí)驗(yàn)教學(xué)中存在的若干問題
(一)實(shí)驗(yàn)教學(xué)中理論性過強(qiáng)
我國高校中培養(yǎng)的人才多數(shù)都十分注重理論性,這是我國教育界的“通病”,但是隨著現(xiàn)代經(jīng)濟(jì)的發(fā)展,社會所需要的人才多為復(fù)合型,既要有扎實(shí)的理論基礎(chǔ),又要有專業(yè)的技術(shù),更需要有可行性的實(shí)踐能力。目前管理專業(yè)人才的培養(yǎng)較為輕視實(shí)踐性,過度重視理論性,學(xué)生的理論基礎(chǔ)知識扎實(shí)并非不妥,但學(xué)生由于缺少實(shí)踐教學(xué)和實(shí)踐能力的培養(yǎng),理論知識無法舉一反三,從而導(dǎo)致了學(xué)生夸夸其談卻沒有真實(shí)的操作能力。
(二)實(shí)驗(yàn)教學(xué)中軟件應(yīng)用少
我國多數(shù)工商管理專業(yè)十分注重實(shí)驗(yàn)教學(xué),實(shí)驗(yàn)教學(xué)所設(shè)計到的硬件設(shè)施也配備良好,例如北京大學(xué)光華管理學(xué)院、廣州商學(xué)院等都在本專業(yè)設(shè)立了工商管理實(shí)驗(yàn)室,投資300~400萬人民幣,很大程度上提高了該院校的實(shí)驗(yàn)教學(xué)水平。然而,在硬件配套達(dá)標(biāo)的基礎(chǔ)上,軟件的使用卻十分落后。例如,實(shí)驗(yàn)室中有各種類型的計算機(jī)和其他設(shè)備,但卻鮮有人力資源管理軟件、統(tǒng)計學(xué)教學(xué)軟件、ERP物流管理軟件等,并且隨著工商管理專業(yè)所學(xué)內(nèi)容多、范圍廣,也開設(shè)了財務(wù)管理、行政管理等10余門實(shí)驗(yàn)課程,但是實(shí)驗(yàn)課程中卻沒有形成體系,有些實(shí)驗(yàn)項(xiàng)目不能及時更新,有些試驗(yàn)項(xiàng)目也無法支撐其金融、證券、電子商務(wù)等新興行業(yè)的管理專業(yè)需求。
(三)實(shí)驗(yàn)教學(xué)中未能統(tǒng)籌兼顧
管理型人才是工商管理專業(yè)培養(yǎng)的主要目標(biāo),高校在構(gòu)建實(shí)驗(yàn)課程體系中,除了各個專業(yè)課程的清晰分明,還需要投入更多精力在各個專業(yè)、各個環(huán)節(jié)的關(guān)系銜接上。例如財務(wù)管理和物流、信息管理的關(guān)系和銜接。而在實(shí)際實(shí)驗(yàn)教學(xué)中卻未能達(dá)到很好的各科目的聯(lián)系,只重視局部關(guān)系和知識內(nèi)容的教育,卻忘了各科目間的重復(fù)性和差異性,并且也沒有將各科目之間的知識點(diǎn)有機(jī)結(jié)合。學(xué)生忽視課程設(shè)置的初衷,無法提起學(xué)生的實(shí)驗(yàn)興趣。
三、工商管理專業(yè)實(shí)驗(yàn)教學(xué)的實(shí)踐探討
(一)教學(xué)體系的創(chuàng)新
教學(xué)體系中包括教學(xué)環(huán)境的設(shè)置、教學(xué)環(huán)節(jié)的設(shè)置、教學(xué)實(shí)驗(yàn)考核的設(shè)置。從教學(xué)環(huán)境方面來看,建立一套硬件系統(tǒng)的網(wǎng)絡(luò)實(shí)驗(yàn)平臺,通過計算機(jī)來實(shí)現(xiàn)實(shí)驗(yàn)性的工商管理教學(xué)模式,以實(shí)驗(yàn)為核心擴(kuò)展出實(shí)驗(yàn)的重點(diǎn)知識內(nèi)容和層次結(jié)構(gòu),通過完善的硬件配套,引入不同的軟件作為輔助教學(xué),從而達(dá)到學(xué)生專業(yè)性、實(shí)踐性和創(chuàng)新性的學(xué)習(xí)目標(biāo)。從教學(xué)環(huán)節(jié)方面來看,實(shí)驗(yàn)教學(xué)的環(huán)節(jié)需要比課堂教學(xué)更為清晰,上機(jī)實(shí)驗(yàn)、課程教學(xué)、課下討論、實(shí)驗(yàn)創(chuàng)新等環(huán)節(jié)缺一不可。在實(shí)驗(yàn)考核方面,需要注重學(xué)生的學(xué)習(xí)質(zhì)量的考核,必須制定一套合理、科學(xué)的考核標(biāo)準(zhǔn),重視學(xué)生的學(xué)習(xí)過程、實(shí)踐能力、管理思想、創(chuàng)新意識和創(chuàng)新能力的考核,而并非單純考核實(shí)驗(yàn)結(jié)果。
(二)教學(xué)內(nèi)容的創(chuàng)新
在教學(xué)內(nèi)容的設(shè)置上,需要從基礎(chǔ)實(shí)驗(yàn)、重點(diǎn)培養(yǎng)可擴(kuò)展實(shí)驗(yàn)三方面進(jìn)行創(chuàng)新。高等院校的培訓(xùn)更應(yīng)該注重學(xué)生的日后就業(yè),從就業(yè)方向來看,企業(yè)管理是大多數(shù)學(xué)生的選擇,而進(jìn)入企業(yè)作為一名管理人員,還需要階段性的考核晉升,所以在實(shí)驗(yàn)教學(xué)項(xiàng)目的設(shè)定中,需要抓住學(xué)科和社會銜接的重要條件,打好基礎(chǔ)實(shí)驗(yàn),注重教學(xué)的內(nèi)容創(chuàng)新,讓教學(xué)內(nèi)容與社會實(shí)踐互相聯(lián)系,這樣便能夠更好的輔助實(shí)驗(yàn)教學(xué)的展開。
(三)教學(xué)方法的創(chuàng)新
在實(shí)驗(yàn)教學(xué)方法上,需要將理論教學(xué)與實(shí)踐教學(xué)緊緊相連,在理論教學(xué)中,需要講解上機(jī)需要注重的實(shí)驗(yàn)內(nèi)容,用扎實(shí)的理論基礎(chǔ)來熟練運(yùn)用,掌握實(shí)驗(yàn)規(guī)律。在實(shí)踐教學(xué)中,教師以講解為主,學(xué)生以實(shí)踐為主,教師通過創(chuàng)新、自主設(shè)計的教學(xué)方法,由教師確定題目,講解知識重點(diǎn),學(xué)生自主選擇學(xué)習(xí)方法和學(xué)習(xí)工具,規(guī)定出時間提交學(xué)習(xí)成果。這樣既能夠減輕教師的教學(xué)負(fù)擔(dān),也能提高學(xué)生的自主學(xué)習(xí)能力。最終教師給予學(xué)生一個自我發(fā)揮的平臺,可以由學(xué)生自行設(shè)計實(shí)驗(yàn),教師確定以后,根據(jù)自身學(xué)習(xí)知識和能力,做出一份滿意的畢業(yè)論文或?qū)W年綜合論文,用來考量學(xué)生的學(xué)習(xí)水平。
參考文獻(xiàn)
[1]劉小龍,宋志婷.工商管理專業(yè)實(shí)驗(yàn)實(shí)踐的教學(xué)教改研究[J].教育教學(xué)論壇.2014(40).
0前言
從20世紀(jì)90年代開始,傳統(tǒng)物流開始向現(xiàn)代物流轉(zhuǎn)變。其顯著的標(biāo)志是它充分運(yùn)用先進(jìn)的信息技術(shù),打破了運(yùn)輸環(huán)節(jié)與生產(chǎn)環(huán)節(jié)之間界限,通過供應(yīng)鏈管理建立起企業(yè)供、產(chǎn)、銷、儲、運(yùn)全過程的計劃和控制,從整體上實(shí)現(xiàn)最優(yōu)化的生產(chǎn)體系設(shè)計、企業(yè)運(yùn)營和管理,實(shí)現(xiàn)物流、資金流、信息流之間的有機(jī)統(tǒng)一。通常我們理解物流企業(yè)信息化是指企業(yè)以業(yè)務(wù)流程重組為基礎(chǔ),廣泛使用現(xiàn)代物流信息技術(shù),控制和集成企業(yè)物流活動的所有信息,實(shí)現(xiàn)企業(yè)內(nèi)外信息資源共享和有效利用,以提高企業(yè)的經(jīng)濟(jì)效益,加強(qiáng)核心競爭力。物流信息化意味著整個物流作業(yè)環(huán)節(jié)從運(yùn)輸、倉儲、裝卸、搬運(yùn)、包裝、流通加工到配送全面使用現(xiàn)代信息技術(shù),實(shí)現(xiàn)企業(yè)內(nèi)外信息資源的優(yōu)化配置和集成化管理。目前現(xiàn)代物流信息技術(shù)涵蓋廣泛的內(nèi)容,主要包括計算機(jī)技術(shù)、通信技術(shù)、電子數(shù)據(jù)交換技術(shù)、地理信息系統(tǒng)、貨物識別技術(shù)等。正是由于這些基本的信息技術(shù)構(gòu)成了現(xiàn)代物流信息化的基礎(chǔ)。當(dāng)前,各級政府職能部門和企業(yè)都在積極建設(shè)物流信息平臺。其目的就是為了能夠利用物流信息平臺來協(xié)調(diào)和科學(xué)管理社會資源,充分利用社會資源為社會提供更好的服務(wù)。企業(yè)則是為了加強(qiáng)其自身的經(jīng)濟(jì)活動,提高物流效率,不斷實(shí)現(xiàn)信息價值增值等方面的客觀推動力。
1建立企業(yè)信息化水平評價體系的意義
當(dāng)前,企業(yè)決策層都對自身的信息化建設(shè)高度重視,投人相當(dāng)大的人力、物力和財力來發(fā)展信息系統(tǒng)。一個好的企業(yè)物流信息系統(tǒng)應(yīng)該與企業(yè)自身的生產(chǎn)技術(shù)水平相匹配。并不是所有先進(jìn)的技術(shù)都適應(yīng)一個企業(yè)的發(fā)展,不能簡單認(rèn)為擁有了先進(jìn)的信息設(shè)備的企業(yè)就是一個信息化水平高度發(fā)達(dá)的企業(yè)。只有采用合理科學(xué)的信息系統(tǒng)才可能發(fā)揮其應(yīng)該發(fā)揮的作用,否則可能產(chǎn)生相反的作用,使企業(yè)背上沉重的負(fù)擔(dān),束縛了企業(yè)所應(yīng)有的靈活機(jī)動的市場敏銳性。建立以企業(yè)管理信息化、企業(yè)業(yè)務(wù)需求信息化和信息系統(tǒng)本身安全性、可靠性評價指標(biāo)為基礎(chǔ)的評價體系,其目的就是使得企業(yè)能夠以業(yè)務(wù)解決方案為核心,更系統(tǒng)地、更有目地性建設(shè)和更好地發(fā)展企業(yè)物流信息系統(tǒng)。
2建立評價企業(yè)信息化水平評價體系的原則
企業(yè)信息系統(tǒng)的建設(shè)其最終目的是為了滿足物流企業(yè)生產(chǎn)水平發(fā)展的需要。而企業(yè)物流信息化水平評價體系建立,其目的是解決當(dāng)前物流信息系統(tǒng)投資建設(shè)管理過程中的概念化、隨意性問題,因此既要遵循一般信息系統(tǒng)建設(shè)管理等有很多一般性的原則,如安全性、先進(jìn)性、兼容性等,更要體現(xiàn)一些物流領(lǐng)域的特點(diǎn),因此要遵循如下原則。
2.1科學(xué)客觀性原則
指標(biāo)的選取應(yīng)具有科學(xué)的理論根據(jù)。首先,要與當(dāng)前社會客觀生產(chǎn)技術(shù)水平相匹配。其次,評價指標(biāo)體系應(yīng)能準(zhǔn)確地反映客觀實(shí)際情況,有利于企業(yè)之間的橫向比較,發(fā)現(xiàn)自身優(yōu)勢和不足之處,挖掘競爭潛力。物流信息化水平評價指標(biāo)應(yīng)成為物流企業(yè)完善物流信息系統(tǒng)、解決企業(yè)發(fā)展所面臨問題的有力工具。
2.2系統(tǒng)性與整體性原則
企業(yè)信息化水平是多種因素綜合的結(jié)果,評價指標(biāo)體系應(yīng)該全面反映企業(yè)物流信息系統(tǒng)的情況,既要反映系統(tǒng)的內(nèi)部結(jié)構(gòu)與功能,又要正確評估系統(tǒng)與外部環(huán)境的關(guān)聯(lián)。因此,系統(tǒng)的可兼容性和擴(kuò)展性也是評價指標(biāo)的一個衡量標(biāo)準(zhǔn)。
2.3先進(jìn)性原則
物流信息系統(tǒng)不僅要滿足當(dāng)前企業(yè)發(fā)展需求,同時還要求與企業(yè)未來發(fā)展相適應(yīng)。一個能夠與未來發(fā)展相適應(yīng)的物流信息系統(tǒng),就要求把握好行業(yè)和技術(shù)未來發(fā)展方向,積極發(fā)展現(xiàn)代物流,從供應(yīng)鏈的高處整合企業(yè)和社會資源,以增強(qiáng)企業(yè)的綜合競爭能力。
2.4定性與定量相結(jié)合的原則
在綜合評價企業(yè)物流信息化水平時應(yīng)綜合考慮影響評估水平的定性和定量指標(biāo)。對定性指標(biāo)要明確其含義,并按照某種標(biāo)準(zhǔn)制定界限,使其能恰如其分地反映指標(biāo)的性質(zhì)。定量指標(biāo)要有清晰的概念和根據(jù)標(biāo)準(zhǔn)確切的賦值和計算。
3物流企業(yè)信息化水平評價指標(biāo)體系
根據(jù)物流企業(yè)信息化建設(shè)的需求,將評估系統(tǒng)分為三個體系和四級評估層次。具體結(jié)構(gòu)見圖1。我們將整體評價體系分為三個部分:企業(yè)管理信息系統(tǒng)評價體系、企業(yè)業(yè)務(wù)信息評價體系以及與系統(tǒng)本身相關(guān)的安全性能評價體系。主要是依據(jù)當(dāng)前企業(yè)管理和發(fā)展所需要的信息系統(tǒng)本身功能所劃分的,同時兼顧系統(tǒng)本身的安全性和可靠性的角度出發(fā),因此將對系統(tǒng)安全的評估納人企業(yè)信息化評估體系中來。
物流信息系統(tǒng)是實(shí)現(xiàn)企業(yè)管理網(wǎng)絡(luò)化、自動化、智能化和標(biāo)準(zhǔn)化的一個集成系統(tǒng)。我們所選擇企業(yè)資源計劃(ERP)信息系統(tǒng)評價項(xiàng)目中主要突出的是物流企業(yè)在實(shí)現(xiàn)自己領(lǐng)域中區(qū)別其他企業(yè)ERP方面的管理體系,這包括指標(biāo)U1, U2和U3都是物流企業(yè)的業(yè)務(wù)特點(diǎn)。其中由于物流企業(yè)多元化和多種業(yè)務(wù)關(guān)系,針對不同的物流企業(yè),ERP項(xiàng)目的評價指標(biāo)可以根據(jù)用戶需求進(jìn)行刪減。例如,針對第三方物流企業(yè)可以只考慮U2和U3評估指標(biāo)。對于企業(yè)的發(fā)展具支持作用的支持信息系統(tǒng)由于企業(yè)的性質(zhì)不同可以簡單定性為有無。關(guān)于先進(jìn)的企業(yè)決策支持系統(tǒng)目前還沒有確切的定義,但是通過分析當(dāng)前的企業(yè)業(yè)務(wù)需求而產(chǎn)生企業(yè)發(fā)展所需要的支持策略也是企業(yè)信息化建設(shè)的一個重點(diǎn)發(fā)展對象。
業(yè)務(wù)信息系統(tǒng)評價系統(tǒng)是對評估物流企業(yè)日常運(yùn)行所必須的信息系統(tǒng)的一個衡量準(zhǔn)則。電子商務(wù)評估體系是對企業(yè)在電子交易平臺上所具有的訂單處理、帳務(wù)結(jié)算以及與工商稅務(wù)等政府機(jī)關(guān)所建立的網(wǎng)絡(luò)辦公系統(tǒng)的評估項(xiàng)目。網(wǎng)絡(luò)資源信息系統(tǒng)評估指標(biāo)是針對企業(yè)在互聯(lián)網(wǎng)上所能獲取的資源和能力的評估。同時,作為物流企業(yè)需要對流動的物資進(jìn)行有效監(jiān)控,因此建立了的電子貨物跟蹤系統(tǒng),包括與智能交通相對應(yīng)GIS , GPS、射頻技術(shù)系統(tǒng)、運(yùn)載貨物工具的信息系統(tǒng),以及條碼技術(shù)和射頻技術(shù)為主,能夠快速準(zhǔn)確識別貨物的識別系統(tǒng)的評估指標(biāo)。
系統(tǒng)安全本身是對所有信息系統(tǒng)建設(shè)的一個內(nèi)在要求。評估體系根據(jù)信息系統(tǒng)中數(shù)據(jù)處理、系統(tǒng)兼容性及其網(wǎng)絡(luò)安全性等方面考慮劃分成S6, S7,S8三個子體系。目前國際組織和我們國家對數(shù)據(jù)安全和認(rèn)證,以及通信安全等方面都要有相對完善的準(zhǔn)則,例如《信息技術(shù)軟件產(chǎn)品評價質(zhì)量特性及其使用指南》、《信息技術(shù)一軟件包質(zhì)量要求和測試》和《工具檢測用軟件評定準(zhǔn)則》等,這些方法和準(zhǔn)則在制定具體標(biāo)準(zhǔn)的時候都應(yīng)該考慮到其中。
4評估方法
將物流企業(yè)信息化水平作為一項(xiàng)指標(biāo)列人物流企業(yè)等級評價體系中去,而物流企業(yè)等級評價系統(tǒng)本身就是一項(xiàng)復(fù)雜的系統(tǒng)工程,況且對物流企業(yè)信息化水平評價模型研究甚少。評價中包含大量的不確定性因素和模糊性指標(biāo),這是因?yàn)樵u價指標(biāo)的模糊性和難以量化性等客觀原因,也有評價者自身的主觀原因,例如性格、偏好、價值觀念和認(rèn)知程度等主觀原因。為此,我們將模糊集合論的方法進(jìn)行評估處理。圖2是專家評審系統(tǒng)模型。
專家在評審的時候通過網(wǎng)絡(luò)將評審選項(xiàng)送到數(shù)據(jù)處理中心去。同時,數(shù)據(jù)處理中心也接受到由系統(tǒng)安全檢測設(shè)備對信息系統(tǒng)的評估結(jié)果后進(jìn)行統(tǒng)計計算。針對不同時期的評估對評估項(xiàng)目的加權(quán)值是不一樣的。例如當(dāng)前根據(jù)現(xiàn)在信息技術(shù)發(fā)展情況我們把PG ={G1,G2,G3},Pg,為第一層加權(quán)值,同樣還有Ps和Pu作為第二層和第三層加權(quán)值,其中對于Pu如果為定性衡量的值為{0, 1}如果為定量衡量的話取值在「0, 1]區(qū)間之間。同樣建立專家評審結(jié)果的模糊評價矩陣:
中圖分類號:G642.3 文獻(xiàn)標(biāo)識碼:C DOI:10.3969/j.issn.1672-8181.2014.17.099
1 引言
《離散數(shù)學(xué)》是電氣信息類專業(yè)的核心課程,在我校是計算機(jī)科學(xué)與技術(shù)、軟件工程、信息管理與信息系統(tǒng)、電子商務(wù)、信息與計算科學(xué)5個專業(yè)的專業(yè)基礎(chǔ)課,不僅為后續(xù)課程提供必要的數(shù)學(xué)知識,更重要的是通過學(xué)習(xí)離散數(shù)學(xué),培養(yǎng)和提高學(xué)生的抽象思維和邏輯推理能力,為學(xué)生今后繼續(xù)學(xué)習(xí)和工作打下堅實(shí)的數(shù)學(xué)基礎(chǔ)。
在傳統(tǒng)的教學(xué)模式下,離散數(shù)學(xué)往往被當(dāng)作一門純數(shù)學(xué)課程來上,多年來這門課程的特點(diǎn)是用“粉筆+黑板”的方式來上,注重概念和理論的講解和推理。這對于數(shù)學(xué)專業(yè)的學(xué)生或許還可以接受,但對于電氣信息類專業(yè)的學(xué)生來說,卻形成強(qiáng)烈的反差。因?yàn)榕c其它應(yīng)用性很強(qiáng)的專業(yè)課相比,學(xué)生普遍認(rèn)為該課程枯燥難懂,對計算機(jī)編程用處不大,導(dǎo)致學(xué)生在學(xué)習(xí)過程中參與性和主動性不高,缺乏學(xué)習(xí)興趣。上述問題已成為高校離散數(shù)學(xué)課程亟待解決的共性問題,北京大學(xué)、天津大學(xué)等多所重點(diǎn)高校已開展離散數(shù)學(xué)教學(xué)改革方面的研究,但其研究成果仍側(cè)重理論教學(xué),目前面向應(yīng)用型人才培養(yǎng)的改革成果未見相關(guān)資料。
根據(jù)我校人才培養(yǎng)目標(biāo)以及離散數(shù)學(xué)課程定位,針對實(shí)際教學(xué)中存在的問題,在課程負(fù)責(zé)人帶領(lǐng)下,離散數(shù)學(xué)課程組率先開展了一系列改革探索,將如何提高學(xué)生的學(xué)習(xí)興趣,進(jìn)而提高學(xué)習(xí)的主動性作為改革研究的重點(diǎn),采取了強(qiáng)化學(xué)生編程能力、加強(qiáng)師生互動、通過課程資源平臺建設(shè)加大課后輔導(dǎo)等多種舉措,本文正是課程組進(jìn)行改革實(shí)踐的成果體現(xiàn)。其中,將離散數(shù)學(xué)實(shí)驗(yàn)作為課程的內(nèi)容是針對離散數(shù)學(xué)課程改革的一個創(chuàng)新,對提高學(xué)生學(xué)習(xí)興趣和主動性效果顯著。
2 主要內(nèi)容
2.1 注重實(shí)際應(yīng)用的課程內(nèi)容改革
在課程內(nèi)容上,課程組首先從如何提高學(xué)生興趣著手,重點(diǎn)對那些滯后于當(dāng)前信息技術(shù)發(fā)展的內(nèi)容進(jìn)行整改,將解決當(dāng)前實(shí)際工程問題所涉及的有關(guān)先進(jìn)理論和技術(shù)融入現(xiàn)有的課程內(nèi)容中,并在充分調(diào)查和分析當(dāng)前大學(xué)生學(xué)習(xí)習(xí)慣和心理特征的基礎(chǔ)上,采用不同的方法將新的課程內(nèi)容進(jìn)行深化,根據(jù)不同專業(yè)學(xué)生的特點(diǎn)探討和開發(fā)相應(yīng)的個性化課程內(nèi)容和教學(xué)組織方式,并盡可能的采用具有教師自身教學(xué)特色的高質(zhì)量的課件。
課程內(nèi)容注重理論聯(lián)系實(shí)際,從提高計算機(jī)編程思想的角度對學(xué)生展開教學(xué),教師在講解理論的同時,注重從實(shí)際應(yīng)用的角度進(jìn)行描述。例如針對圖論部分的Dijkstra算法,在講解單源最短路徑的基本思想時,課程組教師不是直接描述算法的執(zhí)行過程,而是從應(yīng)用的角度首先通過實(shí)際問題舉例:闡述算法多應(yīng)用在交通網(wǎng)絡(luò)中路徑的查詢中,兩地之間是否有路徑以及如果有多條路徑時找最短路徑等,再通過求解的動畫演示,模擬算法執(zhí)行過程,驗(yàn)證算法的正確性。最后再對算法進(jìn)行擴(kuò)展解決單目標(biāo)最短路徑問題、單頂點(diǎn)對間最短路徑問題等,擴(kuò)展學(xué)生對算法的理解,進(jìn)一步自己動手編程實(shí)現(xiàn)算法并進(jìn)行改進(jìn)。
課程內(nèi)容的改革除了包括課件建設(shè)以及內(nèi)容組織方式的改革以外,最關(guān)鍵是從應(yīng)用的角度重新組織了課程題庫,重點(diǎn)建設(shè)了應(yīng)用性強(qiáng)、學(xué)生參與度高的開放性問題。以往的教材在每章之后均附有大量練習(xí)題,但實(shí)際上能把這些題目都做完的學(xué)生寥寥無幾,甚至有些學(xué)生連教師課堂上布置的題目都不想做(存在互相抄寫的現(xiàn)象)。所以,如何引導(dǎo)學(xué)生自動完成相當(dāng)數(shù)量和相當(dāng)難度的題目是重要的。為此,課程題庫的建設(shè)思路是:從實(shí)用性和成就感中培養(yǎng)學(xué)生的學(xué)習(xí)興趣。目前,課程組對離散數(shù)學(xué)大量習(xí)題進(jìn)行了整理分級,可以具有針對性地給學(xué)生選擇相應(yīng)難度的題目。特別地,為一些枯燥的推理證明題設(shè)置了與實(shí)際應(yīng)用、日常生活密切相關(guān)的情境,讓學(xué)生做題的過程就是一個解決實(shí)際問題的過程,從而激發(fā)了學(xué)生挑戰(zhàn)難題的好奇心、興奮度和成就感。
2.2 強(qiáng)調(diào)自主學(xué)習(xí)的教學(xué)方式轉(zhuǎn)變
教學(xué)方式上,課程組教師突出互動性,強(qiáng)調(diào)學(xué)生自主學(xué)習(xí)、創(chuàng)造性學(xué)習(xí)。課程組教師在對于離散數(shù)學(xué)課程學(xué)生培養(yǎng)的目標(biāo)方面形成了以下共識:首先,課堂教學(xué)不可能教授學(xué)生未來需要用到的全部的知識,學(xué)思想、學(xué)方法,培養(yǎng)思維能力才是關(guān)鍵,其次,學(xué)習(xí)知識的出發(fā)點(diǎn)是培養(yǎng)數(shù)學(xué)建模能力,解決實(shí)際問題的能力;第三,注重離散數(shù)學(xué)內(nèi)容與學(xué)生們感興趣的信息技術(shù)前沿的聯(lián)系,與后續(xù)專業(yè)課的聯(lián)系,以使學(xué)生學(xué)習(xí)有動力有方向,有廣度也能了解一定深度。因此,在教學(xué)方法上,在分析各種教學(xué)方法的優(yōu)點(diǎn)和缺點(diǎn)后,課程組以先進(jìn)教學(xué)理論為基礎(chǔ),開發(fā)新的教學(xué)方法,以“項(xiàng)目驅(qū)動,案例教學(xué),學(xué)生參與”作為創(chuàng)新,是課程組在教學(xué)方法轉(zhuǎn)變上的重要舉措,在教學(xué)實(shí)踐中注重與學(xué)生課堂上的互動,在提高學(xué)生學(xué)習(xí)興趣、學(xué)習(xí)主動性有其獨(dú)到的優(yōu)點(diǎn)。學(xué)生參與到課堂問題討論中獨(dú)立思考,是他們總結(jié)自己的知識、表達(dá)自己觀點(diǎn)的有效的途徑,進(jìn)一步促進(jìn)了學(xué)生在自主學(xué)習(xí)能力上的提高。
一方面,在課堂教學(xué)方法中,運(yùn)用探討式研究性教學(xué)方法。這種方法的特點(diǎn)是,經(jīng)常設(shè)計一些討論題目、需要查找資料的課題供學(xué)生研究,以培養(yǎng)學(xué)生的研究能力、表達(dá)能力和解決問題的能力、創(chuàng)造能力,以及對科學(xué)的理解、對問題的認(rèn)識。學(xué)生以小組為單位對這些題目進(jìn)行討論,進(jìn)一步強(qiáng)化了學(xué)生自主學(xué)習(xí)的能力,從而達(dá)到理論聯(lián)系實(shí)際的目的。
另一方面,利用各種方式延伸課堂教學(xué),啟發(fā)學(xué)生合理利用課后的時間主動學(xué)習(xí),加大課后輔導(dǎo)。尤其是對于討論題目,學(xué)生往往非常感興趣,實(shí)際應(yīng)用性也比較強(qiáng),在教師的指導(dǎo)下,學(xué)生們利用課后的時間精心準(zhǔn)備,討論效果非常好,甚至能夠就某個問題開展深入辯論,對自己感興趣的內(nèi)容撰寫小論文。
2.3 培養(yǎng)實(shí)踐能力的實(shí)驗(yàn)課程體系
讓學(xué)生了解離散數(shù)學(xué)在現(xiàn)實(shí)生活中的主要應(yīng)用,有意識地引導(dǎo)學(xué)生運(yùn)用所學(xué)理論去分析問題、解決問題,從而讓學(xué)生充分感受到離散數(shù)學(xué)這門課程的魅力和實(shí)用價值,這是課程組注重培養(yǎng)學(xué)生主動實(shí)踐能力的出發(fā)點(diǎn)。課程組全體教師在課程的開始就引導(dǎo)學(xué)生建立“計算思維”,鼓勵學(xué)生形成良好的思維習(xí)慣:發(fā)現(xiàn)問題,然后構(gòu)思一個可能求解該問題的算法過程,再設(shè)計算法并將其實(shí)現(xiàn),最后評價這個程序,考查其作為一種工具去求解其它問題的潛能,鍛煉學(xué)生數(shù)學(xué)建模能力,提高分析問題,解決問題的能力。
為了能進(jìn)一步深化對學(xué)生實(shí)踐能力的培養(yǎng),課程組打破傳統(tǒng)離散數(shù)學(xué)教學(xué)環(huán)節(jié)中不涉及實(shí)驗(yàn)課程的現(xiàn)狀,深入挖掘課程內(nèi)容,建立了基礎(chǔ)性實(shí)驗(yàn)、綜合性實(shí)驗(yàn)和設(shè)計性實(shí)驗(yàn)三個層次的實(shí)驗(yàn)體系,各實(shí)驗(yàn)項(xiàng)目分布如表1所示,主要目的是培養(yǎng)學(xué)生的數(shù)學(xué)建模能力、算法設(shè)計能力、編寫程序能力和應(yīng)用創(chuàng)新能力,使學(xué)生養(yǎng)成良好的數(shù)學(xué)素質(zhì)。
表1 離散數(shù)學(xué)層次化實(shí)驗(yàn)項(xiàng)目分布
[[\&基礎(chǔ)性實(shí)驗(yàn)\&綜合性實(shí)驗(yàn)\&設(shè)計性實(shí)驗(yàn)\&集合論\&4\&2\&1\&數(shù)理邏輯\&5\&1\&1\&關(guān)系代數(shù)\&4\&2\&1\&圖論\&6\&5\&5\&]]
第一,基礎(chǔ)性實(shí)驗(yàn)包含離散數(shù)學(xué)四個部分的一些基本問題,要求學(xué)生利用所學(xué)基礎(chǔ)知識,完成相應(yīng)的算法設(shè)計和程序?qū)崿F(xiàn)。如在數(shù)理邏輯部分,設(shè)計邏輯連接詞定義實(shí)驗(yàn),要求學(xué)生用程序設(shè)計語言完成“否定”、“析取”、“合取”等命題變元的基本運(yùn)算。使得學(xué)生學(xué)會基本操作,鞏固程序設(shè)計基本調(diào)試方法的掌握。
第二,綜合性實(shí)驗(yàn)包含一些比較復(fù)雜的離散數(shù)學(xué)問題,要求學(xué)生綜合運(yùn)用所學(xué)章節(jié)知識完成問題的分解與求解、綜合和整體實(shí)現(xiàn)。
第三,設(shè)計性實(shí)驗(yàn)屬于較高層次的要求,針對那些學(xué)有余力、興趣濃厚的學(xué)生,要求他們自行設(shè)計問題描述模型和實(shí)驗(yàn)方案,編程實(shí)現(xiàn)。教師檢查實(shí)驗(yàn)現(xiàn)象和實(shí)驗(yàn)結(jié)果。學(xué)生對實(shí)際程序的運(yùn)行結(jié)果應(yīng)能進(jìn)行分析并提出改進(jìn)方法,每完成一個實(shí)驗(yàn),都要求寫一份實(shí)驗(yàn)報告,演示代碼進(jìn)行答辯。
2.4 促進(jìn)師生互動的開放教學(xué)環(huán)境
為進(jìn)一步培養(yǎng)學(xué)生的實(shí)踐能力,課程組在計算機(jī)專業(yè)08級、信管09、10級的學(xué)生中,挑選了學(xué)有余力、興趣濃厚的學(xué)生組建了學(xué)生編程團(tuán)隊(duì),先后有11名學(xué)生參與到課程軟件和平臺建設(shè)中。課程組老師每周都與編程團(tuán)隊(duì)的學(xué)生們進(jìn)行例會,組織他們進(jìn)行算法的分析、代碼編程的討論。課程組教師積極引導(dǎo)學(xué)生參加科技活動,提高他們主動實(shí)踐的意識和能力。積極爭取校級大學(xué)生的科技立項(xiàng)。2012年,編程團(tuán)隊(duì)的成員就有5名同學(xué)在本科生科技立項(xiàng)中承擔(dān)課題,1人獲得校級學(xué)科競賽獎項(xiàng)。同學(xué)們在編程團(tuán)隊(duì)中,通過各種任務(wù)、競賽培養(yǎng)和磨練自己,更重要的是團(tuán)隊(duì)協(xié)作精神也得到了培養(yǎng)。既有競爭、又有合作的編程團(tuán)隊(duì)中,整體牽引學(xué)生自主實(shí)踐水平迅速提升。
3 應(yīng)用效果
3.1 學(xué)生滿意度調(diào)查
離散數(shù)學(xué)的教學(xué)改革于2010年起在電氣信息類專業(yè)實(shí)施, 學(xué)生反映良好。在對2010級5個班(計算101-103、信管101-2)中的183名同學(xué)進(jìn)行的教學(xué)效果調(diào)查中,絕大多數(shù)學(xué)生對離散數(shù)學(xué)以應(yīng)用為目標(biāo)、實(shí)踐為手段的教學(xué)效果表示滿意和很滿意。
圖2 學(xué)生滿意度調(diào)查結(jié)果
此外,教學(xué)資源平臺的使用,使得教師能夠從細(xì)微處入手,深入地了解學(xué)生的真實(shí)水平,有步驟有條理地引導(dǎo)學(xué)生實(shí)踐。算法演示軟件的使用,使得高年級的學(xué)生看到自己親手調(diào)試的代碼,能夠被低年級的學(xué)生演示使用,受到很大鼓舞。低年級的學(xué)生在使用演示軟件時,也不斷以高年級同學(xué)實(shí)現(xiàn)的算法和算法優(yōu)化改進(jìn)為目標(biāo),調(diào)動了主動參與的積極性。
3.2 教師學(xué)評教情況
教師學(xué)評教的情況同樣反映了教學(xué)改革的實(shí)施成果。課程組成員在近幾年《離散數(shù)學(xué)》課程的學(xué)評教分?jǐn)?shù)均為優(yōu)秀(5分滿分),詳情如表2所示。
表2 《離散數(shù)學(xué)》主講教師近兩年學(xué)評教成績
[[姓名\&2011年\&2012年\&姜老師\&4.79\&4.96\&譚老師\&4.81\&4.87\&王老師\&4.77\&4.77\&]]
其中,課程組負(fù)責(zé)人姜老師在2012年《離散數(shù)學(xué)》課程的學(xué)評教分?jǐn)?shù)高達(dá)4.96,位居全校第一。“老師的講課方式很好,很靈活,很有自己思維的空間,越上越喜歡,這是一門很有用,對我們發(fā)展很重要的課”,“將思考及時的傳達(dá)給了我們,讓我們在第一時間更好的發(fā)散思維,老師生動的授課方式,我能集中全力聽取,收獲非常大”,“緊密聯(lián)系專業(yè)內(nèi)容與實(shí)際”,“對學(xué)生要求嚴(yán)格,善于拓展學(xué)生的知識面”,從上述學(xué)生的評價中也可以看到改革對于教學(xué)效果的正面影響。
4 總結(jié)
本文研究成果打破離散數(shù)學(xué)傳統(tǒng)以理論教學(xué)為主的體系框架,根據(jù)我校人才培養(yǎng)目標(biāo)和規(guī)格,以激發(fā)學(xué)生的實(shí)踐能力為引領(lǐng),將離散數(shù)學(xué)理論與計算機(jī)科學(xué)、信息科學(xué)相關(guān)應(yīng)用有機(jī)地融合起來,在課程內(nèi)容、教學(xué)方式,實(shí)驗(yàn)課程體系,開發(fā)平臺建設(shè)、成績考核方式等方面取得了創(chuàng)新突破。
參考文獻(xiàn):
[1]王霞,顧勛梅,潘祝山.離散數(shù)學(xué)教學(xué)改革及課程建設(shè)研究[J].計算機(jī)教育,2011,(6):8-10.
[2]王成良,徐玲,文俊浩.軟件工程專業(yè)實(shí)踐教學(xué)改革研究[J].實(shí)驗(yàn)科學(xué)與技術(shù),2011,(S1):195-197.
[3]孫嵐,王一蕾,吳英杰.離散數(shù)學(xué)教學(xué)方法探討[J].計算機(jī)教育,2012,(1):57-59.
[4]郭曉姝.離散數(shù)學(xué)教學(xué)模式改進(jìn)探討[J].計算機(jī)教育,2012,(5):69-72.
[5]馬千里,李世群.基于學(xué)生數(shù)學(xué)現(xiàn)實(shí)的離散數(shù)學(xué)教學(xué)研究[J].計算機(jī)教育,2012,(15):8-11.
[6]帕力旦?賽力提尼牙孜,阿力木.計算機(jī)專業(yè)離散數(shù)學(xué)課程教學(xué)改革探討與實(shí)踐[J].現(xiàn)代教育技術(shù),2009,(S1):262-264.
[7]徐鳳生.“離散數(shù)學(xué)”課程的教學(xué)改革與實(shí)踐[J].高等理科教育,2009,(3):44-47.
[8]文海英,廖瑞華,魏大寬.離散數(shù)學(xué)課程教學(xué)改革探索與實(shí)踐[J].計算機(jī)教育,2010,(6):100-103.
[9]莫愿斌.凸顯計算機(jī)專業(yè)特色的離散數(shù)學(xué)教學(xué)研究與實(shí)踐[J].計算機(jī)教育,2010,(14):111-113,117.
近年來,隨著經(jīng)濟(jì)全球化和金融國際化的發(fā)展,金融服務(wù)外包在全球服務(wù)外包浪潮中異軍突起。按照國際清算銀行(BIS)所屬的巴塞爾銀行業(yè)監(jiān)管委員會(BCBS)、國際證券委員會組織(IOSCO)和國際保險業(yè)監(jiān)管協(xié)會(IAIS)組成的聯(lián)合論壇2005年的《金融服務(wù)外包》(OutsourcingFinancialServices)報告對金融服務(wù)外包所下的定義,金融服務(wù)外包是指“受監(jiān)管實(shí)體持續(xù)地利用外包服務(wù)商(集團(tuán)內(nèi)的附屬實(shí)體或集團(tuán)以外的實(shí)體)來完成以前由自身承擔(dān)的業(yè)務(wù)活動”,即銀行、保險、證券、期貨等金融機(jī)構(gòu),把IT服務(wù)、后臺服務(wù)和業(yè)務(wù)流程等非核心業(yè)務(wù)甚至部分核心業(yè)務(wù),以合同形式發(fā)包給專業(yè)的服務(wù)提供商,以提高核心業(yè)務(wù)的競爭力,降低企業(yè)成本,分散經(jīng)營風(fēng)險。金融服務(wù)外包包括金融信息技術(shù)外包(ITO)和金融業(yè)務(wù)流程外包(BPO)。金融ITO(ITOutsouring),即金融信息技術(shù)外包,是指金融企業(yè)以長期合同的方式委托信息技術(shù)服務(wù)商向金融企業(yè)提供部分或全部的信息技術(shù)服務(wù),主要包括應(yīng)用軟件開發(fā)與服務(wù)、嵌入式軟件開發(fā)與服務(wù)以及其他相關(guān)的信息技術(shù)服務(wù)等。金融BPO(BusinessProcessOutsourcing),即金融業(yè)務(wù)流程外包,是指金融企業(yè)將非核心業(yè)務(wù)流程和部分核心業(yè)務(wù)流程委托給專業(yè)服務(wù)提供商來完成,主要包括呼叫中心、財務(wù)技術(shù)支持、消費(fèi)者支持服務(wù)、營運(yùn)流程外包等。從金融服務(wù)外包的發(fā)展歷程來看,金融服務(wù)外包起步于金融ITO,成長壯大于金融BPO,發(fā)展趨勢是金融KPO(KnowledgeProcessOutsourcing,主要幫助客戶研發(fā)解決方案,并作為企業(yè)決策重要依據(jù),鎖定高度專業(yè)技能及知識密集型核心業(yè)務(wù),包括評估研究、投資研究和技術(shù)研究等)。作為上海國際金融中心核心功能區(qū)的浦東,在推動金融服務(wù)外包產(chǎn)業(yè)發(fā)展過程中,應(yīng)當(dāng)發(fā)揮已有的優(yōu)勢,著眼于發(fā)展高端的金融BPO,推動上海金融業(yè)的發(fā)展,加快上海國際金融中心建設(shè)的步伐。
一、國際金融服務(wù)外包產(chǎn)業(yè)發(fā)展現(xiàn)狀及趨勢
當(dāng)前國際金融服務(wù)外包發(fā)展的基本格局是:離岸金融服務(wù)外包發(fā)展迅速,美國、歐洲、日本等國成為主要發(fā)包方,印度、愛爾蘭等國成為金融服務(wù)外包接包方,中國有機(jī)會成為全球承接金融服務(wù)外包業(yè)務(wù)的第二大中心。
(一)離岸金融服務(wù)外包發(fā)展迅速
離岸金融服務(wù)外包是指企業(yè)為降低成本,保留核心業(yè)務(wù)和提高競爭力而將自己的部分業(yè)務(wù)委托給外國企業(yè)的一種商業(yè)行為。全球金融服務(wù)機(jī)構(gòu)尤其是發(fā)達(dá)國家金融機(jī)構(gòu)越來越多將原來自我承載的業(yè)務(wù)轉(zhuǎn)交外包商,國際金融服務(wù)外包(離岸外包)迅速發(fā)展。據(jù)統(tǒng)計,目前全球服務(wù)外包業(yè)務(wù)總量為1.2萬億美元,其中輸出境外離岸金融服務(wù)外包業(yè)務(wù)量為2100億美元。許多跨國公司試圖通過建立離岸交易及服務(wù)中心來提高本機(jī)構(gòu)整體的效率。金融機(jī)構(gòu)除將業(yè)務(wù)外包給服務(wù)商外,也會把一些業(yè)務(wù)交由海外附屬機(jī)構(gòu)來完成。
據(jù)德勤會計師事務(wù)所估計:在2004年后的五年內(nèi),美國金融服務(wù)業(yè)將有3560億美元的業(yè)務(wù)外包到境外。離岸業(yè)務(wù)將在近幾年內(nèi)持續(xù)增長,到2010年離岸業(yè)務(wù)市場產(chǎn)值將達(dá)到4000億美元,占整個行業(yè)總產(chǎn)值的20%。據(jù)金融研究公司TowerGroup的調(diào)查及預(yù)測,全球最大的15家金融企業(yè)將擴(kuò)大信息技術(shù)項(xiàng)目的外包業(yè)務(wù),金額將從2005年的16億美元上升至2008年的38.9億美元,年平均增長率為34%。一批世界超級金融機(jī)構(gòu),包括美國運(yùn)通、GECapital等都向海外大規(guī)模地外移了客戶呼叫中心與軟件開發(fā)業(yè)務(wù)。
(二)美國、歐洲、日本等國成為主要發(fā)包方
美國、日本和西歐的發(fā)達(dá)國家金融機(jī)構(gòu)的商務(wù)流程已經(jīng)實(shí)現(xiàn)了標(biāo)準(zhǔn)化,考慮到成本的需求,將其業(yè)務(wù)流程中非核心的業(yè)務(wù)外包給國外其他的服務(wù)公司運(yùn)作,通過利用互聯(lián)網(wǎng)技術(shù)轉(zhuǎn)移到其他人力成本較低的國家進(jìn)行數(shù)據(jù)處理,進(jìn)行24小時互動的服務(wù)支持,使國外商務(wù)公司低成本完成整個商務(wù)服務(wù)工作,從而使企業(yè)資源得到最佳分配,降低了企業(yè)的生產(chǎn)成本,減少了經(jīng)營風(fēng)險,增強(qiáng)了企業(yè)的核心競爭力。
(三)印度、愛爾蘭等國成為金融服務(wù)外包接包方
面對蘊(yùn)含大量商機(jī)的金融服務(wù)外包離岸外包市場,越來越多具有接包能力的國家正在成為美歐日金融企業(yè)理想的海外轉(zhuǎn)包地。國際金融服務(wù)外包最主要承接國是印度,愛爾蘭等。以印度為例,據(jù)有關(guān)專家預(yù)測,截至2008年,全球100家大型金融機(jī)構(gòu)將會向印度輸送超過100萬個后臺與技術(shù)工作職位,約占全球金融業(yè)職位總數(shù)的15%。預(yù)計印度的金融服務(wù)外包收入將從初期的20多億美元猛升至240億美元。目前,國際金融服務(wù)外包市場已經(jīng)形成以印度市場為核心,同時包括菲律賓、馬來西亞等新興服務(wù)外包市場的整體格局。印度金融服務(wù)外包行業(yè)自上世紀(jì)九十年代末開始高速發(fā)展,年均增長率為56%,2005年總營業(yè)額達(dá)280億美元,直接從業(yè)人員25萬人。2005年英國金融服務(wù)管理局(FSA)了主題為《離岸業(yè)務(wù)的行業(yè)反饋》的報告,總結(jié)了印度金融服務(wù)外包迅速發(fā)展的成功經(jīng)驗(yàn),其內(nèi)容主要有:印度企業(yè)重視變革管理,由董事會負(fù)責(zé)制定的外包和離岸業(yè)務(wù)發(fā)展戰(zhàn)略,并有專門機(jī)構(gòu)負(fù)責(zé);所有企業(yè)都準(zhǔn)備有處理突發(fā)故的緊急預(yù)案,大規(guī)模的業(yè)務(wù)被分散到不同的子公司來減小意外風(fēng)險;外包業(yè)務(wù)受到法律的監(jiān)管并享受到一定的優(yōu)惠措施;承包企業(yè)都通過了英國信息安全標(biāo)準(zhǔn)的認(rèn)證,采取各種措施保障客戶資料和數(shù)據(jù)的安全;具有大量說英語的專業(yè)人才、通信成本低的區(qū)位優(yōu)勢,有充足的合格服務(wù)供應(yīng)商和新進(jìn)入市場的中小企業(yè)可供選擇;重視合同和約束;外包業(yè)務(wù)得到了印度政府的支持和鼓勵。
(四)中國有機(jī)會成為全球承接金融服務(wù)外包業(yè)務(wù)的第二大中心
近年來,在全球金融服務(wù)外包市場體系中,中國正越來越受到世人的矚目,并認(rèn)為有機(jī)會成為繼印度之后的全球第二大金融服務(wù)外包中心。畢博管理咨詢公司董事總經(jīng)理彼得·郝勒維茨就曾認(rèn)為,到2015年中國和印度將成為全球金融服務(wù)外包業(yè)的中心。因?yàn)橹?、印兩國擁有大量受過良好培訓(xùn)的外包業(yè)務(wù)人才,具有勞動力成本優(yōu)勢,能提供滿足需求的產(chǎn)品和服務(wù),更重要的是,跨國金融機(jī)構(gòu)從其全球化的長遠(yuǎn)發(fā)展戰(zhàn)略考慮,已經(jīng)把中國和印度市場作為其戰(zhàn)略部署的一部分。
二、上海浦東發(fā)展金融服務(wù)外包產(chǎn)業(yè)的優(yōu)勢和制約因素
浦東是上海建設(shè)“四個中心”的核心功能區(qū),是中國改革開放的前沿,是世界服務(wù)業(yè)轉(zhuǎn)移的樂土。浦東陸家嘴和張江已經(jīng)形成金融機(jī)構(gòu)前臺服務(wù)和后臺服務(wù)的集聚效應(yīng)。2007年底陸家嘴已集聚中外金融機(jī)構(gòu)493家,張江建設(shè)的上海市金融信息服務(wù)產(chǎn)業(yè)基地也已集聚了中國人民銀行、中國銀聯(lián)、交通銀行、平安保險、招商銀行等金融機(jī)構(gòu)的后臺服務(wù)部門,其中銀聯(lián)一期全國信息處理中心、交通銀行數(shù)據(jù)處理中心以及平安保險客服中心與后援中心已經(jīng)入住并投入使用,金融后臺服務(wù)中心初見成效,浦東有希望在承接國際金融服務(wù)外包轉(zhuǎn)移上搶占先機(jī)。
目前,上海在中央的支持下正在加快推進(jìn)國際金融中心建設(shè)的步伐,同時積極落實(shí)商務(wù)部提出發(fā)展服務(wù)外包的“千百十工程”,把握上海推進(jìn)國際金融中心建設(shè)和落實(shí)“千百十工程”的機(jī)遇,積極發(fā)展金融服務(wù)外包,加大引進(jìn)跨國公司金融服務(wù)機(jī)構(gòu)的力度,加快構(gòu)筑第三方服務(wù)平臺,集聚和培育自主品牌的金融服務(wù)外包企業(yè),將使浦東在提升服務(wù)外包產(chǎn)業(yè)的國際競爭力上起到示范帶動作用。目前從綜合環(huán)境和產(chǎn)業(yè)發(fā)展的成熟度而言,浦東擁有其他地區(qū)不可比擬的優(yōu)勢:
(一)金融信息服務(wù)基地建設(shè)走在全國前列
于2003年3月開發(fā)建設(shè)的上海市金融信息服務(wù)基地——上海市銀行卡產(chǎn)業(yè)園,是全國首個以金融機(jī)構(gòu)后臺服務(wù)部門為主要服務(wù)對象的金融信息服務(wù)機(jī)構(gòu)集聚區(qū)。基地自建立以來上海市金融信息服務(wù)基地已成功引進(jìn)了中國人民銀行支付系統(tǒng)上海中心、中國銀行信息中心上海、中國銀聯(lián)產(chǎn)業(yè)發(fā)展基地、中國平安保險全國客戶服務(wù)及后援中心、招商銀行信用卡中心、興業(yè)銀行信用卡中心、交通銀行數(shù)據(jù)處理中心(上海)、上海期貨交易所金融衍生品研發(fā)和數(shù)據(jù)處理中心等。上海市金融信息服務(wù)基地的戰(zhàn)略定位是:立足上海、輻射全國、面向世界,與陸家嘴金融貿(mào)易區(qū)前臺服務(wù)功能相呼應(yīng),重點(diǎn)發(fā)展金融服務(wù)外包業(yè)務(wù)及金融后臺服務(wù),為金融機(jī)構(gòu)的前臺服務(wù)提供支持。目前,金融信息服務(wù)基地已集聚了眾多金融機(jī)構(gòu)后臺服務(wù)部門,軟硬件建設(shè)齊全,為浦東發(fā)展金融服務(wù)外包產(chǎn)業(yè)奠定了良好的基礎(chǔ)。
(二)金融軟件外包服務(wù)企業(yè)集聚走在全國前列
浦東軟件外包產(chǎn)業(yè)發(fā)展走在全國前列,上海浦東軟件園作為浦東軟件外包產(chǎn)業(yè)發(fā)展的國家級產(chǎn)業(yè)基地集聚了一大批知名軟件外包企業(yè),目前軟件園內(nèi)已入駐企業(yè)294家,包括HP、IBM、畢博、塔塔、印孚瑟斯、花旗軟件、金仕達(dá)、新致、中國銀聯(lián)等一批國內(nèi)外大型軟件企業(yè)及研發(fā)機(jī)構(gòu)。入園企業(yè)的業(yè)務(wù)范圍涵蓋了軟件開發(fā)、信息服務(wù)、系統(tǒng)集成、電子商務(wù)、數(shù)據(jù)通訊、信息安全、芯片設(shè)計、軟件出口、金融證券、醫(yī)藥、電信等各個領(lǐng)域,尤其是芯片設(shè)計、信息安全、軟件出口、系統(tǒng)集成等已在園區(qū)形成產(chǎn)業(yè)群落,為浦東發(fā)展金融服務(wù)外包產(chǎn)業(yè)打下了良好的基礎(chǔ)。
(三)金融后臺服務(wù)發(fā)展走在全國前列
上海市金融信息服務(wù)基地內(nèi)已經(jīng)形成了金融機(jī)構(gòu)后臺服務(wù)部門集聚,擁有眾多銀行、證券、保險等金融機(jī)構(gòu)的后臺服務(wù)中心或銀行卡業(yè)務(wù)中心,如中國銀聯(lián)、平安保險呼叫中心和營運(yùn)中心、匯豐數(shù)據(jù)中心等。同時浦東還吸引了一批新型金融企業(yè)入駐,落戶在浦東的一些高科技企業(yè)也研發(fā)出了手機(jī)支付功能,并申請了國家專利。浦東新區(qū)金融后臺服務(wù)部門的集聚已經(jīng)形成了一定規(guī)模,并逐漸吸引了一批專業(yè)金融外包服務(wù)機(jī)構(gòu)入駐浦東新區(qū),逐漸形成了產(chǎn)業(yè)的集聚效應(yīng),為浦東發(fā)展金融服務(wù)外包營造了良好的產(chǎn)業(yè)生態(tài)環(huán)境。
(四)金融服務(wù)外包產(chǎn)業(yè)環(huán)境建設(shè)走在全國前列
首先,陸家嘴金融貿(mào)易區(qū)金融前臺建設(shè)已經(jīng)取得了良好的成績,為金融后臺服務(wù)和金融服務(wù)外包產(chǎn)業(yè)打下良好的基礎(chǔ)。其次,上海市政府2006年8月10日《關(guān)于促進(jìn)上海服務(wù)外包發(fā)展的若干意見》,明確提出要將上海建成全球服務(wù)外包重要基地的目標(biāo),并明確提出支持、發(fā)展金融服務(wù)外包產(chǎn)業(yè)以及建設(shè)金融后臺服務(wù)示范基地的目標(biāo)。浦東新區(qū)政府也于2005年12月28日印發(fā)了《浦東新區(qū)促進(jìn)現(xiàn)代服務(wù)業(yè)發(fā)展的財政扶持意見》,其中在對金融信息服務(wù)產(chǎn)業(yè)的支持方面包括:對引進(jìn)金融機(jī)構(gòu)總部予以獎勵;新引進(jìn)金融機(jī)構(gòu)自建辦公房土地出讓金優(yōu)惠;新引進(jìn)金融機(jī)構(gòu)購房補(bǔ)貼;對新引進(jìn)金融機(jī)構(gòu)高管進(jìn)行補(bǔ)貼;新引進(jìn)金融機(jī)構(gòu)的稅收補(bǔ)貼;為金融機(jī)構(gòu)高管子女設(shè)立“專項(xiàng)教育基金”;金融信息服務(wù)企業(yè)形成地方財力部分予以補(bǔ)貼;中介服務(wù)業(yè)其利潤形成地方財力部分給予財政補(bǔ)貼等。更為重要的是,浦東新區(qū)于2005年6月21日被批準(zhǔn)為綜合配套改革試點(diǎn),將使金融服務(wù)外包產(chǎn)業(yè)發(fā)展有可能突破現(xiàn)有的政策體制障礙,獲得巨大發(fā)展機(jī)遇。
當(dāng)然,浦東在發(fā)展金融服務(wù)外包產(chǎn)業(yè)方面擁有眾多其它地區(qū)不可比擬的優(yōu)勢,但是由于浦東金融服務(wù)外包產(chǎn)業(yè)發(fā)展尚處于初級階段,配套條件還不夠完善,金融服務(wù)外包產(chǎn)業(yè)發(fā)展在產(chǎn)業(yè)化、市場化、專業(yè)化和國際化方面尚存在一定差距。
浦東發(fā)展金融服務(wù)外包產(chǎn)業(yè)還面臨一些體制,主要是:金融后臺服務(wù)機(jī)構(gòu)法人化市場化存在體制障礙、市場準(zhǔn)入的限制、外匯監(jiān)管限制、人才不足的限制以及缺乏接發(fā)包專業(yè)和必要的財稅政策扶持等,需要通過改革創(chuàng)新加以突破。
三、推動浦東金融服務(wù)外包產(chǎn)業(yè)發(fā)展的對策措施與政策建議
(一)金融服務(wù)外包產(chǎn)業(yè)發(fā)展的戰(zhàn)略目標(biāo)
力爭經(jīng)過5-10年的努力,把浦東金融服務(wù)外包產(chǎn)業(yè)真正發(fā)展成浦東現(xiàn)代服務(wù)業(yè)中的重要支柱產(chǎn)業(yè),為使浦東成為我國金融服務(wù)外包創(chuàng)新發(fā)展的主要基地之一,成為亞太地區(qū)離岸金融服務(wù)外包業(yè)務(wù)的承包和轉(zhuǎn)包中心奠定堅實(shí)的產(chǎn)業(yè)基礎(chǔ)。
通過重點(diǎn)引進(jìn)國內(nèi)知名金融機(jī)構(gòu)的銀行卡中心、數(shù)據(jù)處理中心,國際知名金融信息服務(wù)企業(yè)、跨國銀行的地區(qū)數(shù)據(jù)處理中心,金融服務(wù)外包產(chǎn)業(yè)達(dá)到一定規(guī)模。
配套建設(shè)進(jìn)一步完善,形成符合金融服務(wù)外包產(chǎn)業(yè)發(fā)展需要的交通設(shè)施、通訊系統(tǒng)、產(chǎn)業(yè)配套完整的現(xiàn)代化金融服務(wù)外包產(chǎn)業(yè)基地以及與之相配套的環(huán)境優(yōu)美、生活設(shè)施完善、具有高品位的文化氛圍、適合高科技人才生活與發(fā)展要求的現(xiàn)代生活社區(qū)。
(二)推動金融服務(wù)外包產(chǎn)業(yè)發(fā)展的對策措施
1.建設(shè)一個基地——上海市金融服務(wù)外包產(chǎn)業(yè)基地
根據(jù)國際金融服務(wù)外包產(chǎn)業(yè)的發(fā)展趨勢以及上海市金融服務(wù)外包產(chǎn)業(yè)發(fā)展的現(xiàn)狀和優(yōu)勢,建設(shè)上海市金融服務(wù)外包產(chǎn)業(yè)基地,這一基地將具備以下四大基本功能:
產(chǎn)業(yè)集聚創(chuàng)新功能:集聚金融信息產(chǎn)品的研發(fā)與生產(chǎn),形成國內(nèi)外金融信息產(chǎn)品的技術(shù)創(chuàng)新中心、業(yè)務(wù)創(chuàng)新中心和運(yùn)營機(jī)制創(chuàng)新中心。
金融后臺服務(wù)功能:吸引國內(nèi)外金融機(jī)構(gòu)后臺核心業(yè)務(wù)向上海集中,形成國內(nèi)商業(yè)銀行的跨行信息交換中心、國內(nèi)外各類金融機(jī)構(gòu)的數(shù)據(jù)處理中心,與陸家嘴金融貿(mào)易區(qū)金融前臺服務(wù)相呼應(yīng),形成完善的金融后臺服務(wù)功能。
國際金融服務(wù)外包承接功能:承接以歐美為主的國際金融機(jī)構(gòu)數(shù)據(jù)處理業(yè)務(wù)的轉(zhuǎn)移,為上海發(fā)展國際金融服務(wù)外包產(chǎn)業(yè)發(fā)揮示范作用,促進(jìn)上海成為國際性的金融服務(wù)外包業(yè)務(wù)的接發(fā)包中心。輻射帶動功能:通過整合浦東的金融服務(wù)資源,以張江為核心樞紐,發(fā)揮輻射帶動作用,帶動上海乃至長江三角洲地區(qū)服務(wù)外包產(chǎn)業(yè)和其他現(xiàn)代服務(wù)業(yè)的發(fā)展,進(jìn)而推動上海和長江三角洲地區(qū)的產(chǎn)業(yè)升級。
2.搭建一個平臺——金融服務(wù)外包專業(yè)服務(wù)平臺
按照“政府引導(dǎo)、市場化運(yùn)作、企業(yè)化管理、專業(yè)化服務(wù)”的指導(dǎo)方針,搭建金融服務(wù)外包產(chǎn)業(yè)發(fā)展公共服務(wù)平臺。這個公共服務(wù)平臺將提供四大服務(wù)。
項(xiàng)目服務(wù):主要是為金融服務(wù)外包產(chǎn)業(yè)發(fā)展提供技術(shù)、市場、經(jīng)營管理等方面的服務(wù)。
人才服務(wù):適應(yīng)金融服務(wù)外包產(chǎn)業(yè)發(fā)展對專業(yè)性人力資源的需求,搭建人才服務(wù)平臺,旨在為金融服務(wù)外包產(chǎn)業(yè)發(fā)展提供人力資源庫。
投融資服務(wù):根據(jù)金融服務(wù)外包產(chǎn)業(yè)發(fā)展對資金的需求,搭建投融資平臺,構(gòu)建由市、區(qū)以及張江集團(tuán)公司共同組建的“上海市金融服務(wù)外包產(chǎn)業(yè)發(fā)展專項(xiàng)資金”,解決金融服務(wù)外包產(chǎn)業(yè)發(fā)展的資金問題,確保重大項(xiàng)目和功能項(xiàng)目的引進(jìn)。
政策咨詢服務(wù):重點(diǎn)是為金融服務(wù)外包產(chǎn)業(yè)發(fā)展提業(yè)政策、融資政策、財稅政策咨詢服務(wù)。同時,制定適應(yīng)國際金融服務(wù)外包發(fā)展需要的行業(yè)技術(shù)標(biāo)準(zhǔn),建立和完善外包服務(wù)企業(yè)的資格審查和信用評級制度,制定合理完善的服務(wù)商市場準(zhǔn)入機(jī)制,構(gòu)建規(guī)范的行業(yè)發(fā)展平臺,促使金融服務(wù)外包產(chǎn)業(yè)規(guī)范健康發(fā)展。
3.發(fā)展七大類(6+1)業(yè)務(wù)
根據(jù)目前浦東現(xiàn)有的條件和優(yōu)勢,發(fā)展金融服務(wù)外包產(chǎn)業(yè),應(yīng)積極發(fā)展金融數(shù)據(jù)處理和災(zāi)備業(yè)務(wù)、銀行卡業(yè)務(wù)、客戶服務(wù)、財務(wù)和會計服務(wù)、營銷服務(wù)、營運(yùn)業(yè)務(wù)以及研發(fā)設(shè)計等七大類(6+1)業(yè)務(wù)。
金融數(shù)據(jù)處理和災(zāi)備業(yè)務(wù):以中國人民銀行的支付系統(tǒng)災(zāi)備中心和征信管理中心為核心,積極引進(jìn)各大金融機(jī)構(gòu)的災(zāi)備機(jī)構(gòu)和建設(shè)中小金融機(jī)構(gòu)災(zāi)備共享平臺,發(fā)展災(zāi)備業(yè)務(wù);引進(jìn)國內(nèi)外重要金融機(jī)構(gòu)的數(shù)據(jù)處理系統(tǒng),發(fā)展包括清算、結(jié)算、金融基礎(chǔ)數(shù)據(jù)庫、客戶數(shù)據(jù)管理中心等業(yè)務(wù),發(fā)展以數(shù)據(jù)集中為特征的各類金融機(jī)構(gòu)的信息處理業(yè)務(wù)等。
銀行卡業(yè)務(wù):以中國銀聯(lián)銀行卡跨行網(wǎng)絡(luò)數(shù)據(jù)交換中心為核心,引進(jìn)國內(nèi)外具有競爭力、名列前茅的銀行卡中心,發(fā)展信用卡的流轉(zhuǎn)業(yè)務(wù)(收單、信息轉(zhuǎn)接、資金結(jié)算等)和市場拓展業(yè)務(wù)(發(fā)卡、客戶信息管理等);力爭成為國內(nèi)最重要的銀行卡后臺數(shù)據(jù)處理中心之一。
客戶服務(wù):客戶服務(wù)是金融服務(wù)外包產(chǎn)業(yè)發(fā)展的一項(xiàng)重要業(yè)務(wù)之一,是一個低成本、高回報收集客戶信息的渠道,一方面它通過電話、傳真、E-mail、短信等多種途徑主動為客戶服務(wù);另一方面它在內(nèi)部管理功能上,通過知識庫管理對金融范圍內(nèi)的業(yè)務(wù)、信息、資料、政策等內(nèi)容進(jìn)行采集、審核、歸檔、,通過工作流程系統(tǒng)實(shí)現(xiàn)包括咨詢、投訴、業(yè)務(wù)申請、預(yù)約、外撥、知識等在內(nèi)的信息流轉(zhuǎn),從而在客戶業(yè)務(wù)處理、主動式服務(wù)、內(nèi)部管理和整合服務(wù)渠道等多個方面得到全面優(yōu)化。隨著高科技的運(yùn)用,金融服務(wù)外包呼叫中心,將改變傳統(tǒng)的服務(wù)方式,引入視頻技術(shù)和多媒體技術(shù),實(shí)現(xiàn)多媒體綜合服務(wù),使呼叫中心在功能上發(fā)生質(zhì)的飛躍。
財務(wù)和會計服務(wù):打造金融服務(wù)外包財務(wù)和會計服務(wù),其目的專注于金融服務(wù)的核心資產(chǎn)業(yè)務(wù)、負(fù)債業(yè)務(wù)、中間業(yè)務(wù)、資金業(yè)務(wù)及結(jié)算業(yè)務(wù)處理,兼顧支付控制和風(fēng)險管理及總賬會計核算。同時,核心平臺提供相應(yīng)的數(shù)據(jù)處理、分析和挖掘功能,提高金融財務(wù)服務(wù)業(yè)務(wù)管理和服務(wù)能力。
營銷服務(wù):建立金融營銷服務(wù)是適應(yīng)現(xiàn)代金融服務(wù)外包的需要,是為確保金融營銷工作順利進(jìn)行和既定營銷目標(biāo)實(shí)現(xiàn)的一系列制度安排,包括金融服務(wù)營銷理念的建立及營銷文化的形成、金融營銷戰(zhàn)略和營銷目標(biāo)的制定,營銷業(yè)務(wù)流程的完善與再造、統(tǒng)一的市場定位和營銷策略、差別化的營銷和服務(wù)機(jī)制、產(chǎn)品創(chuàng)新機(jī)制、綜合量化的考核機(jī)制、信息共享機(jī)制、資源配置機(jī)制、風(fēng)險控制機(jī)制等一系列業(yè)務(wù)。
營運(yùn)業(yè)務(wù):建立金融服務(wù)外包企業(yè)營運(yùn)業(yè)務(wù),業(yè)務(wù)范圍涵蓋金融服務(wù)外包業(yè)所包涵的核心業(yè)務(wù)和非核心業(yè)務(wù),主要功能是對外承接外包業(yè)務(wù),同時將所承接的金融服務(wù)外包業(yè)務(wù)的分拆、集成和轉(zhuǎn)包。
研發(fā)設(shè)計:根據(jù)金融服務(wù)外包市場的發(fā)展變化,不斷設(shè)計金融服務(wù)的新產(chǎn)品、新服務(wù),以適應(yīng)國際金融服務(wù)外包市場專業(yè)化、精細(xì)化、多樣化發(fā)展的需求。
4.組建金融服務(wù)外包聯(lián)盟,承接離岸金融服務(wù)外包業(yè)務(wù)
上海要建設(shè)國際金融中心,需要大力開拓金融服務(wù)外包業(yè)務(wù),把大量國際金融后臺業(yè)務(wù)吸引到上海。通過組建金融服務(wù)外包聯(lián)盟,承接離岸金融服務(wù)外包業(yè)務(wù),內(nèi)容涵蓋金融數(shù)據(jù)處理、信用卡數(shù)據(jù)處理、貸款數(shù)據(jù)處理、金融數(shù)據(jù)分析、客服業(yè)務(wù)以及開展金融服務(wù)外包論壇等等,推動金融服務(wù)外包產(chǎn)業(yè)健康有序發(fā)展。
(三)支持浦東發(fā)展金融服務(wù)外包產(chǎn)業(yè)的政策建議
根據(jù)《財政部商務(wù)部關(guān)于支持承接國際服務(wù)外包業(yè)務(wù)發(fā)展相關(guān)財稅政策的意見》、《關(guān)于促進(jìn)上海服務(wù)外包發(fā)展的若干意見》、《上海市促進(jìn)張江高科技園區(qū)發(fā)展的若干規(guī)定》、《浦東新區(qū)促進(jìn)現(xiàn)代服務(wù)業(yè)發(fā)展的財政扶持意見》、《“十一五”期間張江高科技園區(qū)財政扶持經(jīng)濟(jì)發(fā)展的暫行辦法》、《上海市張江高科技園區(qū)“十一五”期間扶持軟件產(chǎn)業(yè)發(fā)展的實(shí)施辦法》等文件,結(jié)合張江高科技園區(qū)特別是上海市金融信息服務(wù)產(chǎn)業(yè)基地的實(shí)際情況,提出如下政策建議:
第一,聚焦上海金融信息服務(wù)產(chǎn)業(yè)基地,支持基地產(chǎn)業(yè)化、市場化、國際化、專業(yè)化的定位,著眼于發(fā)展中高端的金融服務(wù)外包業(yè)務(wù)。支持基地引進(jìn)發(fā)展銀行卡業(yè)務(wù)、數(shù)據(jù)業(yè)務(wù)、客服業(yè)務(wù)、財務(wù)服務(wù)業(yè)務(wù)、銷售業(yè)務(wù)、營運(yùn)業(yè)務(wù)和研發(fā)設(shè)計業(yè)務(wù),努力把上海金融信息服務(wù)產(chǎn)業(yè)基地建成金融服務(wù)外包產(chǎn)業(yè)化示范基地,形成產(chǎn)業(yè)規(guī)模大、競爭優(yōu)勢強(qiáng)、經(jīng)濟(jì)效益好、品牌效益高的產(chǎn)業(yè)集群,使之成為國內(nèi)發(fā)展金融服務(wù)外包市場的主要試驗(yàn)田和集聚地,成為上海建成亞太地區(qū)離岸外包業(yè)務(wù)承包和轉(zhuǎn)包中心的重要組成部分。
第二,建立第三方服務(wù)平臺,為金融服務(wù)外包企業(yè)提供人才服務(wù)、政策咨詢、知識產(chǎn)權(quán)咨詢服務(wù)、項(xiàng)目接發(fā)包、投融資等市場化社會化服務(wù),政府對服務(wù)平臺建設(shè)和營運(yùn)費(fèi)用給予資金補(bǔ)貼,對使用平臺服務(wù)的企業(yè)給予經(jīng)費(fèi)補(bǔ)貼。
第三,將張江高科技園區(qū)的優(yōu)惠扶持政策延伸到上海金融信息服務(wù)產(chǎn)業(yè)基地,即凡入駐上海金融信息服務(wù)產(chǎn)業(yè)基地的金融服務(wù)外包企業(yè),經(jīng)認(rèn)定后享受張江高科技園區(qū)的優(yōu)惠政策,并進(jìn)一步營造有利于金融服務(wù)外包產(chǎn)業(yè)發(fā)展的政策環(huán)境。
第四,擴(kuò)大市場準(zhǔn)入,鼓勵金融服務(wù)外包企業(yè)的設(shè)立和發(fā)展,對從事金融服務(wù)外包業(yè)務(wù)的國資、外資和民營企業(yè)在注冊登記和市場準(zhǔn)入上公平對待,給予支持和便利。工商部門可在企業(yè)的經(jīng)營范圍內(nèi),寫上“從事金融服務(wù)外包業(yè)務(wù)”。對涉及增值服務(wù)的金融信息企業(yè),允許不同所有制企業(yè)經(jīng)營金融服務(wù)外包業(yè)務(wù)。對外商獨(dú)資從事離岸金融外包業(yè)務(wù)的企業(yè)實(shí)行備案制或放寬審批權(quán)限。
第五,建議將金融服務(wù)外包產(chǎn)業(yè)列入國家鼓勵發(fā)展的產(chǎn)業(yè)目錄,同時建議浦東新區(qū)政府牽頭,聯(lián)系銀行、證券、保險等金融監(jiān)管機(jī)構(gòu),建立金融服務(wù)外包行業(yè)協(xié)會,制訂金融服務(wù)外包的行業(yè)標(biāo)準(zhǔn),推動金融服務(wù)外包產(chǎn)業(yè)健康規(guī)范發(fā)展。
第六,對金融服務(wù)外包企業(yè)給予財政扶持。對從事金融服務(wù)外包的企業(yè)經(jīng)認(rèn)定后享受財稅優(yōu)惠政策。對所認(rèn)定企業(yè)的營業(yè)收入實(shí)行免稅;利潤總額所得稅按照15%的比例征收;對企業(yè)的研發(fā)經(jīng)費(fèi)給予一次性補(bǔ)貼;從事數(shù)據(jù)中心等金融服務(wù)外包企業(yè)進(jìn)口自用設(shè)備,免除進(jìn)口關(guān)稅和進(jìn)口環(huán)節(jié)增值稅。
系統(tǒng)的核心是入庫、庫存和出庫三者之間的聯(lián)系,每一個表的修改都將聯(lián)動的影響其它的表,當(dāng)完成入庫或出庫操作時系統(tǒng)會自動地完成庫存的修改。查詢功能也是系統(tǒng)的核心之一,在系統(tǒng)中即有單條件查詢和多條件查詢,也有精確查詢和模糊查詢,系統(tǒng)不僅有靜態(tài)的條件查詢,也有動態(tài)生成的條件查詢,其目的都是為了方便用戶使用。系統(tǒng)有完整的用戶添加、刪除和密碼修改功能,并具備報表打印功能。
系統(tǒng)采用Microsoft Office中的Access 2000來設(shè)計數(shù)據(jù)庫,并使用當(dāng)前優(yōu)秀的開發(fā)工具—Delphi 6.0 ,它有著最為靈活的數(shù)據(jù)庫結(jié)構(gòu),對數(shù)據(jù)庫應(yīng)用有著良好的支持。
論文主要介紹了本課題的開發(fā)背景,所要完成的功能和開發(fā)的過程。重點(diǎn)的說明了系統(tǒng)設(shè)計的重點(diǎn)、設(shè)計思想、難點(diǎn)技術(shù)和解決方案。
關(guān)鍵字:數(shù)據(jù)庫,SQL語言,Delph 6,數(shù)據(jù)庫組件,倉庫管理
目 錄
第一章 引言 ……………………………………………………………………………1
1.1 課題來源 ……………………………………………………………………1
1.2 開發(fā)工具的選擇 ……………………………………………………………2
1.3 所做的主要工作 ……………………………………………………………3
第二章 數(shù)據(jù)庫概論 ……………………………………………………………………4
2.1 數(shù)據(jù)庫的發(fā)展 ………………………………………………………………4
2.1.1 數(shù)據(jù)庫的發(fā)展 …………………………………………………………4
2.1.2 數(shù)據(jù)庫階段的特點(diǎn) ……………………………………………………5
2.1.3 數(shù)據(jù)庫技術(shù) ……………………………………………………………6
2.2 數(shù)據(jù)庫理論基礎(chǔ) ……………………………………………………………7
2.2.1 數(shù)據(jù)庫模型 ……………………………………………………………7
2.2.2 數(shù)據(jù)庫體系結(jié)構(gòu)
……………………………………………………10
2.2.3 數(shù)據(jù)的獨(dú)立性 ………………………………………………………11
2.2.4 范式 …………………………………………………………………11
2.3 SQL語言基礎(chǔ) ……………………………………………………………13
2.3.1 SQL簡介 ……………………………………………………………13
2.3.2 SQL查詢
……………………………………………………………13
2.3.3 SQL數(shù)據(jù)更新
………………………………………………………14
第三章數(shù)據(jù)庫開發(fā)工具 ……………………………………………………………16
3.1 Delphi 6.0 簡介 ……………………………………………………………16
3.2 Delphi 6.0 控件 ……………………………………………………………17
3.2.1 ADO數(shù)據(jù)訪問組件 …………………………………………………17
3.2.2 數(shù)據(jù)控制類DataControl
……………………………………………18
3.2.3 數(shù)據(jù)訪問類DataAccess
……………………………………………18
3.2.4 SQL語言在Delphi中的應(yīng)用
………………………………………19
3.3 Access 簡介
………………………………………………………………21
第四章 系統(tǒng)總體設(shè)計 ………………………………………………………………23
4.1 系統(tǒng)需求分析
……………………………………………………………23
4.2 系統(tǒng)概要設(shè)計
……………………………………………………………25
4.2.1 系統(tǒng)結(jié)構(gòu)設(shè)計
………………………………………………………25
4.2.2 數(shù)據(jù)庫設(shè)計
…………………………………………………………27
4.2.2.1 ER圖設(shè)計 ……………………………………………………27
4.2.2.2 數(shù)據(jù)庫表格設(shè)計………………………………………………29
4.3系統(tǒng)詳細(xì)設(shè)計………………………………………………………………34
第五章 系統(tǒng)應(yīng)用程序設(shè)計 …………………………………………………………37
5.1 系統(tǒng)窗體模塊組成…………………………………………………………37
5.2 數(shù)據(jù)模塊窗體設(shè)置…………………………………………………………38
5.3 主窗體功能模塊的實(shí)現(xiàn)……………………………………………………39
5.4 入庫、出庫窗體模塊的實(shí)現(xiàn)………………………………………………43
5.5 查詢功能的實(shí)現(xiàn)……………………………………………………………51
5.6 系統(tǒng)登陸窗體模塊的實(shí)現(xiàn)…………………………………………………52
5.7 用戶管理功能的實(shí)現(xiàn)………………………………………………………54
5.7.1 用戶管理主窗體 ……………………………………………………54
5.7.2 密碼修改窗體模塊的實(shí)現(xiàn)
…………………………………………54
5.7.3 用戶注冊窗體模塊的實(shí)現(xiàn)
…………………………………………55
5.7.4 用戶注銷窗體模塊的實(shí)現(xiàn)
…………………………………………57
結(jié)束語 …………………………………………………………………………………59
致謝 ……………………………………………………………………………………60
參考文獻(xiàn) ………………………………………………………………………………61
第一章
引 言
§1.1 課題來源
隨著社會經(jīng)濟(jì)的迅速發(fā)展和科學(xué)技術(shù)的全面進(jìn)步,計算機(jī)事業(yè)的飛速發(fā)展,以計算機(jī)與通信技術(shù)為基礎(chǔ)的信息系統(tǒng)正處于蓬勃發(fā)展的時期。隨著經(jīng)濟(jì)文化水平的顯著提高,人們對生活質(zhì)量及工作環(huán)境的要求也越來越高。書籍做為人類的精神食糧,在現(xiàn)代社會中越來越受到重視,大量的書籍出現(xiàn)在市場上,人們有了各種各樣不同的選擇。與此同時,為了管理大量的圖書,圖書倉庫也大量的出現(xiàn),倉庫的管理問題也就提上了日程。隨著圖書的大量增加,其管理難度也越來越大,如何優(yōu)化倉庫的日常管理也就成為了一個大眾化的課題。
在計算機(jī)飛速發(fā)展的今天,將計算機(jī)這一信息處理利器應(yīng)用于倉庫的日常管理已是勢必所然,而且這也將為倉庫管理帶來前所未有的改變,它可以帶來意想不到的效益,同時也會為企業(yè)的飛速發(fā)展提供無限潛力。采用計算機(jī)管理信息系統(tǒng)已成為倉庫管理科學(xué)化和現(xiàn)代化的重要標(biāo)志,它給企業(yè)管理來了明顯的經(jīng)濟(jì)效益和社會效益。主要體現(xiàn)在:
極大提高了倉庫工作人員的工作效率,大大減少了以往入出存流程繁瑣,雜亂,周期長的弊端。
基于倉庫管理的全面自動化,可以減少入庫管理、出庫管理及庫存管理中的漏洞,可以節(jié)約不少管理開支,增加企業(yè)收入。
倉庫的管理的操作自動化和信息的電子化,全面提高了倉庫的管理水平。
隨著我國改革開放的不斷深入,經(jīng)濟(jì)飛速的發(fā)展,企業(yè)要想生存、發(fā)展,要想在激烈的市場競爭中立于不敗之地,沒有現(xiàn)代化的管理是萬萬不行的,倉庫管理的全面自動化、信息化則是其中極其重要的部分。為了加快倉庫管理自動化的步伐,提高倉庫的管理業(yè)務(wù)處理效率,建立倉庫管理系統(tǒng)已變得十分心要。
入庫、庫存、出庫還是現(xiàn)在企業(yè)圖書倉庫管理的常規(guī)基本模式,雖然,最近又出現(xiàn)了很多新的管理模式,如:基于零庫存思想的沃爾瑪特管理方式,但這些新的思想在中國大部分企業(yè)的管理中還是難以實(shí)現(xiàn)的。所以如何設(shè)計好倉庫管理系統(tǒng),盡可能地減少倉庫管理的重復(fù)性和低效性就成為當(dāng)前最為重要的問題。圖書倉庫管理的核心是入庫、庫存和出庫之間的聯(lián)系,如何處理好三者之間的關(guān)系是系統(tǒng)最為關(guān)鍵的部分。另外,員工信息和供應(yīng)商信息管理也是倉庫管理中一個必不可少的部分,它提供著與入庫和出庫相關(guān)的地一些信息,使得整個系統(tǒng)更加完整,更加實(shí)用。
通過對倉庫管理日常工作的詳細(xì)調(diào)查,搜集了大量的資料,從系統(tǒng)結(jié)構(gòu)的組織,功能的實(shí)現(xiàn),技術(shù)的要求以及可行性等多方面進(jìn)行考慮,認(rèn)為本課題是一個適應(yīng)現(xiàn)今圖書倉庫管理需求的計算機(jī)信息管理系統(tǒng),具有一定的實(shí)際開發(fā)價值和使用價值。
§1.2 開發(fā)工具的選擇
自Java誕生以來,隨著Internet技術(shù)的普及和應(yīng)用需求的變化,以第四代語言為主的應(yīng)用開發(fā)產(chǎn)品發(fā)生了較大的變化,它們不僅已成為人們開發(fā)應(yīng)用的開發(fā)工具,而且很多產(chǎn)品已發(fā)展成為一種強(qiáng)有力的應(yīng)用開發(fā)環(huán)境。這些新型的開發(fā)工具通常以一種集成軟件包的形式提供給開發(fā)人員,被稱為Studio(工作室)或Suite(程序組)。例如,微軟的Visual Studio 6.0,Borland公司的Delphi 6.0等數(shù)據(jù)庫輔助開發(fā)工具。
現(xiàn)在,市場上可以選購的應(yīng)用開發(fā)產(chǎn)品很多,流行的也有數(shù)十種。目前在我國市場上最為流行、使用最多、最為先進(jìn)的可用作企業(yè)級開發(fā)工具的產(chǎn)品有:
Microsoft公司的Visual Basic 6.0版
Microsoft公司的Visual C++6.0版
Borland公司的Delphi 6.0版
在目前市場上這些眾多的程序開發(fā)工具中,有些強(qiáng)調(diào)程語言的彈性與執(zhí)行效率;有些則偏重于可視化程序開發(fā)工具所帶來的便利性與效率的得高,各有各的優(yōu)點(diǎn)和特色,也滿足了不同用戶的需求。然而,語言的彈性和工具的便利性是密不可分的,只有便利的工具,卻沒有彈性的語言作支持,許多特殊化的處理動作必需要耗費(fèi)數(shù)倍的工夫來處理,使得原來所標(biāo)榜的效率提高的優(yōu)點(diǎn)失去了作用;相反,如果只強(qiáng)調(diào)程語言的彈性,卻沒有便利的工具作配合,會使一些即使非常簡單的界面處理動作,也會嚴(yán)重地浪費(fèi)程序設(shè)計師的寶貴時間。
而Delphi是一個非常理想選擇。Delphi 6 是操作系統(tǒng)中快速應(yīng)用開發(fā)環(huán)境的最新版本。它也是當(dāng)前Windows平臺上第一個全面支持最新Web服務(wù)的快速開發(fā)工具。無論是企業(yè)級用戶,還是個人開發(fā)者,都能夠利用Delphi 6 輕松、快捷地構(gòu)建新一代電子商務(wù)應(yīng)用。Delphi 6 是惟一支持所有新出現(xiàn)的工業(yè)標(biāo)準(zhǔn)的RAD環(huán)境,包括XML(擴(kuò)展標(biāo)記語言)/XSL(可擴(kuò)展樣式語言),SOAP(簡單對象存取協(xié)議)和WSDL(Web服務(wù)器描述語言)等。
Delphi 6 是可視化的快速應(yīng)用程序開發(fā)語言,它提供了可視化的集成開發(fā)環(huán)境,這一環(huán)境為應(yīng)用程序設(shè)計人員提供了一系列靈活而先進(jìn)的工具,可以廣泛地用于種類應(yīng)用程序設(shè)計。在Delphi 6 的集成開發(fā)環(huán)境中,用戶可以設(shè)計程序代碼、運(yùn)行程序、進(jìn)行程序錯誤的調(diào)試等,可視化的開發(fā)方法降低了應(yīng)用程序開發(fā)的難度。Delphi的基礎(chǔ)編程語言是具有面向?qū)ο筇匦缘腜ascal語言,即Object Pascal 。Object Pascal具有代碼穩(wěn)定、可讀性好、編譯速度快等優(yōu)點(diǎn),并將面向?qū)ο蟮母拍钜浦驳搅薖ascal語言中,使這種基礎(chǔ)語言有了新的發(fā)展空間。
使用Delphi 6.0 ,我們幾乎可以作任何事情,還可以撰寫種各種類型的應(yīng)用程序,動態(tài)鏈接庫(DLL)、CON、或CORBA對象,CGI/ISAPI程序,Microsoft Back Office應(yīng)用程序。程序的規(guī)模小到簡單的個人數(shù)據(jù)庫應(yīng)用,大到復(fù)雜的企業(yè)的多層次分布式系統(tǒng),都可以使用Delphi進(jìn)行開發(fā),其友好的集成開發(fā)界面,可視化的雙向開發(fā)模式,良好的數(shù)據(jù)庫應(yīng)用支持高效的程序開發(fā)和程序運(yùn)行,備受廣大程序開發(fā)人員的好評。尤其是Delphi對數(shù)據(jù)庫應(yīng)用的強(qiáng)大支持,大大提高了數(shù)據(jù)庫應(yīng)用軟件開發(fā)的效率,縮短了開發(fā)周期,深受廣大數(shù)據(jù)庫應(yīng)用程序設(shè)計人員的喜愛。Delphi為數(shù)據(jù)庫應(yīng)用開發(fā)人員提供了豐富的數(shù)據(jù)庫開發(fā)組件,使數(shù)據(jù)庫應(yīng)用開發(fā)功能更強(qiáng)大,控制更靈活,編譯后的程序運(yùn)行速度更快。
§1.3 本文所做工作
引言部分介紹了本系統(tǒng)的課題來源以及對數(shù)據(jù)庫開發(fā)工具的選擇。
第二章介紹了數(shù)據(jù)庫的發(fā)展,關(guān)系數(shù)據(jù)庫,數(shù)據(jù)庫體系結(jié)構(gòu),并系統(tǒng)介紹了SQL語言,為設(shè)計和理解應(yīng)用程序做了鋪墊。
第三章系統(tǒng)介紹了Delphi 6.0及其部分控件,SQL語言在Delphi 6.0中的應(yīng)用,以及Access等。
第四章是本文的主體,按照軟件工程的要求,從需求分析開始,經(jīng)過概要設(shè)計最后到詳細(xì)設(shè)計,完成對整個系統(tǒng)的設(shè)計。
第五章根據(jù)第四章的設(shè)計結(jié)果利用Access 2000和Delphi 6.0進(jìn)行了具體的窗體和應(yīng)用程序設(shè)計。
總結(jié)部分介紹了設(shè)計體會和編程體會,并指出了系統(tǒng)設(shè)計中的不足和改進(jìn)的方向
轉(zhuǎn)貼于 第二章
數(shù)據(jù)庫概論
§2.1
數(shù)據(jù)庫的發(fā)展
數(shù)據(jù)庫處理在信息系統(tǒng)的研究中一直是非常重要的主題,然而,近年來,隨著World Wide Web(WWW)的猛增及Internet技術(shù)的迅速發(fā)展,使得數(shù)據(jù)庫技術(shù)之時成為最熱門技術(shù)之一。數(shù)據(jù)庫技術(shù)能使Internet應(yīng)用超越具有早期應(yīng)用特點(diǎn)的簡單的。同時,Internet技術(shù)提供了一種向用戶數(shù)據(jù)庫內(nèi)容的標(biāo)準(zhǔn)化的訪問方法。這些技術(shù)沒有脫離經(jīng)典數(shù)據(jù)庫技術(shù)的要求。它們只是加重了數(shù)據(jù)庫技術(shù)的重要性。
數(shù)據(jù)庫的設(shè)計和開發(fā)及包括藝術(shù)有包括工程。理解用戶的需求,然后,把它們轉(zhuǎn)變?yōu)橛行У臄?shù)據(jù)庫設(shè)計是一個藝術(shù)過程。把設(shè)計轉(zhuǎn)變?yōu)閷?shí)際的數(shù)據(jù)庫,并且這些數(shù)據(jù)庫帶有功能完備、高效能的應(yīng)用,是一個工程過程。
數(shù)據(jù)庫的目的是幫助人們跟蹤事務(wù)。經(jīng)典的數(shù)據(jù)庫應(yīng)用涉及諸如訂單、顧客、工作、員工、學(xué)生、電話之類的項(xiàng),或其它數(shù)據(jù)量較大、需要密起關(guān)注的事務(wù)。最近,由于數(shù)據(jù)庫的普及,數(shù)據(jù)庫技術(shù)已經(jīng)被應(yīng)用到了新的領(lǐng)域,諸如用于Internet的數(shù)據(jù)庫或用于公司內(nèi)聯(lián)網(wǎng)的數(shù)據(jù)庫。數(shù)據(jù)庫也被越來越多地應(yīng)用于生成和維護(hù)多媒體應(yīng)用程序上。
計算機(jī)的數(shù)據(jù)處理應(yīng)用,首先要把大量的信息以數(shù)據(jù)形式存放在存儲器中。存儲器的容量、存儲速率直接影響到數(shù)據(jù)管理技術(shù)的發(fā)展。從1956年生產(chǎn)出第一臺計算機(jī)到現(xiàn)在,存儲器的發(fā)展,為數(shù)據(jù)庫技術(shù)提供了良好的物質(zhì)基礎(chǔ)。
使用計算機(jī)以后,數(shù)據(jù)處理的速度和規(guī)模,無論是相對于手工方式,還是機(jī)械方式,都有無可比擬的優(yōu)勢。通常在數(shù)據(jù)處理中,計算是比較簡單的而數(shù)據(jù)的管理卻比較復(fù)雜。數(shù)據(jù)管理是指數(shù)據(jù)的收集、整理、組織、存儲、維護(hù)、檢索、傳送等操作,這部分操作是數(shù)據(jù)處理業(yè)務(wù)的基本環(huán)節(jié),而且是任何數(shù)據(jù)處理業(yè)務(wù)中必不可少的共有部分。數(shù)據(jù)管理技術(shù)的優(yōu)劣,將直接影響數(shù)據(jù)處理的效率。
2.1.1 數(shù)據(jù)庫的發(fā)展
數(shù)據(jù)管理技術(shù)的發(fā)展,與硬件(主要是外存)、軟件、計算機(jī)應(yīng)用的范圍有密切的聯(lián)系。數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)過三個階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫階段。
人工管理階段和文件系統(tǒng)階段都有著相當(dāng)多的缺陷,諸如數(shù)據(jù)冗余性 ,數(shù)據(jù)不一致性以及數(shù)據(jù)聯(lián)系弱等等。也正是由于這些原因,促使人們研究新的數(shù)據(jù)管理技術(shù),從而產(chǎn)生了數(shù)據(jù)庫技術(shù)。
20世紀(jì)60年代末發(fā)生的三件大事,層次模型IMS系統(tǒng)的推出、關(guān)于網(wǎng)狀模型DBTG報告的發(fā)表以及關(guān)于關(guān)系模型論文的連續(xù)發(fā)表標(biāo)志著數(shù)據(jù)管理技術(shù)進(jìn)入數(shù)據(jù)庫階段。進(jìn)入70年代以后,數(shù)據(jù)庫技術(shù)得到迅速發(fā)展,開發(fā)了許多有效的產(chǎn)品并投入運(yùn)行。數(shù)據(jù)庫系統(tǒng)克服了文件系統(tǒng)的缺陷,提供了對數(shù)據(jù)更高級更有效的管理。
當(dāng)進(jìn)入數(shù)據(jù)庫階段后,隨著數(shù)據(jù)管理規(guī)模一再擴(kuò)大,數(shù)據(jù)量急劇增加,為了提高效率,開始時,人們只是對文件系統(tǒng)加以擴(kuò)充,在應(yīng)用文件中建立了許多輔助索引,形成倒排文件系統(tǒng)。但這并不能最終解決問題。在20世紀(jì)60年代末,磁盤技術(shù)取得重要進(jìn)展,具有數(shù)百兆容量和快速存取的磁盤陸續(xù)進(jìn)入市場,成本也不高,為數(shù)據(jù)庫技術(shù)的產(chǎn)生提供了良好的物質(zhì)條件。
2.1.2 數(shù)據(jù)庫階段的特點(diǎn)
(1)減少數(shù)據(jù)的重復(fù)(Redundancy can be reduced)
當(dāng)在一個非數(shù)據(jù)庫系統(tǒng)當(dāng)中,每一個應(yīng)用程序都有屬于他們自己的文件,由于無法有系統(tǒng)建立的數(shù)據(jù),因此常常會造成存儲數(shù)據(jù)的重復(fù)與浪費(fèi)。例如:在一家公司當(dāng)中,人事管理程序與工資管理程序或許都會使用到職員與部門的信息或文件,而我們可以運(yùn)用數(shù)據(jù)庫的方法,把這兩個文件整理起來,以減少多余的數(shù)據(jù),過度地占用存儲空間。
(2)避免數(shù)據(jù)的不一致(Inconsistency can avoid)
本項(xiàng)的特色,可以說是延伸前項(xiàng)的一個特點(diǎn),要說明這樣的一個現(xiàn)象,我們可以從下面這個實(shí)例來看:若是在同一家公司當(dāng)中,職員甲在策劃部門工作,且職員甲的記錄同時被存放在數(shù)據(jù)庫的兩個地方,而數(shù)據(jù)庫管理系統(tǒng)卻沒有對這樣重要的情況加以控制,當(dāng)其中一條數(shù)據(jù)庫被修改時,便會造成數(shù)據(jù)的不一致,但是,對于一個健全的數(shù)據(jù)庫管理系統(tǒng)而言,將會對這樣的情況加以控制,但有時并不需要刻意消除這種情形,應(yīng)當(dāng)視該數(shù)據(jù)庫的需求與效率來決定。
(3)數(shù)據(jù)共享(Data shared)
對于數(shù)據(jù)共享的意義,并不是只有針對數(shù)據(jù)庫設(shè)計的應(yīng)用程序,可以使用數(shù)據(jù)庫中的數(shù)據(jù),對于其他撰寫好的應(yīng)用程序,同樣可以對相同數(shù)據(jù)庫當(dāng)中的數(shù)據(jù)進(jìn)行處理,進(jìn)而達(dá)到數(shù)據(jù)共享的目的。
(4)強(qiáng)化數(shù)據(jù)的標(biāo)準(zhǔn)化(Standard can be enforced)
由數(shù)據(jù)庫管理系統(tǒng),對數(shù)據(jù)做出統(tǒng)籌性的管理,對于數(shù)據(jù)的格式與一些存儲上的標(biāo)準(zhǔn)進(jìn)行控制,如此一來,對于不同的環(huán)境的數(shù)據(jù)交換(Data Interchange)上將有很大的幫助,也能提高數(shù)據(jù)處理的效率。
(5)實(shí)踐安全性的管理(Security restriction can be applied)
通過對數(shù)據(jù)庫完整的權(quán)限控制,數(shù)據(jù)庫管理者可以確認(rèn)所有可供用戶存取數(shù)據(jù)的合法途徑渠道,并且可以事先對一些較重要或關(guān)鍵性的數(shù)據(jù)進(jìn)行安全檢查,以確保數(shù)據(jù)存取時,能夠?qū)⑷魏尾划?dāng)損毀的情形降至最低。
(6)完整性的維護(hù)(Integrity can be maintained)
所謂完整性的問題,就是要確認(rèn)某條數(shù)據(jù)在數(shù)據(jù)庫當(dāng)中,是正確無誤的。正如(2)所述,若是無法控制數(shù)據(jù)的不一致性,便會產(chǎn)生完整性不足的問題,所以,我們會發(fā)現(xiàn),當(dāng)數(shù)據(jù)重復(fù)性高的時候,數(shù)據(jù)不完整的情形也會增加,當(dāng)然,若是數(shù)據(jù)庫的功能完整,將會大大地提高數(shù)據(jù)完整性,也會增加數(shù)據(jù)庫的維護(hù)能力與維護(hù)簡便性。
(7)需求沖突會獲得平衡(Conflicting requirements can be balance)
在一個較大型的企業(yè)當(dāng)中,用戶不同的需求,往往會造成系統(tǒng)或數(shù)據(jù)庫在設(shè)計上的困擾,但是一個合適的數(shù)據(jù)庫系統(tǒng),可以通過數(shù)據(jù)庫管理員的管理,將會有效地整理各方面的信息,對于一些較重要的應(yīng)用程序,可以適時地提供較快速的數(shù)據(jù)存取方法與格式,以平衡多個用戶在需求上的沖突。
上述七個方面構(gòu)成了數(shù)據(jù)庫系統(tǒng)的主要特征。這個階段的程序和數(shù)據(jù)間的聯(lián)系可用下圖表示: 2.1.3 數(shù)據(jù)庫技術(shù)
從文件系統(tǒng)發(fā)展到數(shù)據(jù)庫系統(tǒng)是信息處理領(lǐng)域的一個重大變化。在文件系統(tǒng)階段,人們關(guān)注的中心問題是系統(tǒng)功能的設(shè)計,因而程序設(shè)計處于主導(dǎo)地位,數(shù)據(jù)只起著服從程序需要的作用。在數(shù)據(jù)庫方式下,信息處理觀念已為新體系所取代,數(shù)據(jù)占據(jù)了中心位置。數(shù)據(jù)結(jié)構(gòu)的設(shè)計成為信息系統(tǒng)首先關(guān)心的問題,而利用這些數(shù)據(jù)的應(yīng)用程序設(shè)計則退居到以既定的數(shù)據(jù)結(jié)構(gòu)為基礎(chǔ)的外圍地位。
目前世界上已有數(shù)百萬個數(shù)據(jù)庫系統(tǒng)在運(yùn)行,其應(yīng)用已經(jīng)深入到人類社會生活的各個領(lǐng)域,從企業(yè)管理、銀行業(yè)務(wù)、資源分配、經(jīng)濟(jì)預(yù)測一直到信息檢索、檔案管理、普查統(tǒng)計等。并在通信網(wǎng)絡(luò)基礎(chǔ)上,建立了許多國際性的聯(lián)機(jī)檢索系統(tǒng)。我國20世紀(jì)90年代初在全國范圍內(nèi)裝備了12個以數(shù)據(jù)庫技術(shù)為基礎(chǔ)的大型計算機(jī)系統(tǒng),這些系分布在郵電、計委、銀行、電力、鐵路、氣象、民航、情報、公安、軍事、航天和財稅等行業(yè)。
數(shù)據(jù)庫技術(shù)還在不斷的發(fā)展,并且不斷地與其它計算機(jī)技術(shù)相互滲透。數(shù)據(jù)庫技術(shù)與網(wǎng)絡(luò)通信技術(shù)相結(jié)合,產(chǎn)生了分布式數(shù)據(jù)庫系統(tǒng)。數(shù)據(jù)庫技術(shù)與面向?qū)ο蠹夹g(shù)相結(jié)合,產(chǎn)生了面向?qū)ο髷?shù)據(jù)庫系統(tǒng)。
在數(shù)據(jù)庫技術(shù)中有四個名詞,其概念應(yīng)該分清。
(1)數(shù)據(jù)庫(database,DB):DB是統(tǒng)一管理的相關(guān)數(shù)據(jù)的集合。DB能為各種用戶共享,具有最小冗余度,數(shù)據(jù)間聯(lián)系密切,而又有較高的數(shù)據(jù)獨(dú)立性。
(2)數(shù)據(jù)庫管理系統(tǒng)(Database Management System,DBMS):DBMS是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,為用戶或應(yīng)用程序提供訪問DB的方法,包括DB的建立、查詢、更新及各種數(shù)據(jù)控制。DBMS總是基于某種數(shù)據(jù)模型,可以分為層次型、網(wǎng)狀型、關(guān)系型和面向?qū)ο笮虳BMS。
(3)數(shù)據(jù)庫系統(tǒng)(Database System,DBS):DBS是實(shí)現(xiàn)有組織地、動態(tài)地存儲大量關(guān)聯(lián)數(shù)據(jù),方便多用戶訪問的計算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng),即采用了數(shù)據(jù)庫技術(shù)的計算機(jī)系統(tǒng)。
(4)數(shù)據(jù)庫技術(shù):這是一門研究數(shù)據(jù)庫的結(jié)構(gòu)、存儲、管理和使用的軟件學(xué)科。數(shù)據(jù)庫技術(shù)是操作系統(tǒng)的文件系統(tǒng)基礎(chǔ)上發(fā)展起來的。而DBMS本身要在操作系統(tǒng)的支持下才能工作。數(shù)據(jù)庫不僅用到數(shù)據(jù)結(jié)構(gòu)的知識,而且豐富了數(shù)據(jù)結(jié)構(gòu)的內(nèi)容。在關(guān)系數(shù)據(jù)庫中要用到集合論、數(shù)理邏輯的理論。因此,數(shù)據(jù)庫技術(shù)是一門綜合性較強(qiáng)的學(xué)科。
§2.2數(shù)據(jù)庫理論基礎(chǔ)
2.2.1 數(shù)據(jù)庫模型
從20世紀(jì)50年代中期開始,計算機(jī)的應(yīng)用由科學(xué)研究部門逐步擴(kuò)展到企業(yè)、行政部門。至60年代,數(shù)據(jù)處理成為計算機(jī)的主要應(yīng)用。數(shù)據(jù)庫技術(shù)作為數(shù)據(jù)管理技術(shù),是計算機(jī)軟件領(lǐng)域的一個重要分支,產(chǎn)生于60年代末。現(xiàn)已形成相當(dāng)規(guī)模的理論體系和實(shí)用技術(shù)。
模型是對現(xiàn)實(shí)世界的抽象。在數(shù)據(jù)庫技術(shù)中,我們用模型的概念描述數(shù)據(jù)庫的結(jié)構(gòu)與語義,對現(xiàn)實(shí)世界進(jìn)行抽象,表示實(shí)體類型及實(shí)體間聯(lián)系的模型稱為“數(shù)據(jù)模型” 。
目前廣泛作用的數(shù)據(jù)模型可分為兩種類型。
一種是獨(dú)立于計算機(jī)系統(tǒng)的模型,完全不涉及信息在系統(tǒng)中的表示,只是用來描述某個特定組織所關(guān)心的信息結(jié)構(gòu),這類模型稱為“概念數(shù)據(jù)模型” 。要領(lǐng)模型用于建立信息世界的數(shù)據(jù)模型,強(qiáng)調(diào)其語義表達(dá)功能,應(yīng)該概念簡單、清晰,易于用戶理解,它是現(xiàn)實(shí)世界的第一層抽象,是用戶和數(shù)據(jù)庫設(shè)計人員之間進(jìn)行交流的工具。這一其中著名的模型是“實(shí)體聯(lián)系模型” 。
另一種數(shù)據(jù)模型是直接面向數(shù)據(jù)庫的邏輯結(jié)構(gòu),它是現(xiàn)實(shí)世界的第二層抽象。 這類模型涉及到計算機(jī)系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng),又稱為“結(jié)構(gòu)數(shù)據(jù)模型” 。例如,層次、網(wǎng)狀、關(guān)系、面向?qū)ο蟮饶P?。這類模型有嚴(yán)格的形式化定義,以便于在計算機(jī)系統(tǒng)中實(shí)現(xiàn)。
(1)層次模型。用樹型結(jié)構(gòu)表示實(shí)體類型及實(shí)體間聯(lián)系的數(shù)據(jù)模型。樹的結(jié)點(diǎn)是記錄類型,每個非根結(jié)點(diǎn)有且只有一個父結(jié)點(diǎn)。上一層記錄類型和下一層記錄類型間聯(lián)系是1∶N聯(lián)系。
層次模型的特點(diǎn)是記錄之間的聯(lián)系通過指針實(shí)現(xiàn),查詢效率較高。但層次模型有兩個缺點(diǎn):一是只能表示1∶N聯(lián)系,雖然有多種輔助手段實(shí)現(xiàn)了M∶N聯(lián)系,但都較復(fù)雜,用戶不易掌握,二是由于樹型結(jié)構(gòu)層次順序的嚴(yán)格和復(fù)雜,引起數(shù)據(jù)的查詢和更新操作也很復(fù)雜,因此,編寫應(yīng)用程序也很復(fù)雜。
(2)網(wǎng)狀模型。用有向圖結(jié)構(gòu)表示實(shí)體類型及實(shí)體間聯(lián)系的數(shù)據(jù)模型。。1969年DBTG報告提出的數(shù)據(jù)模型是網(wǎng)狀模型的主要代表。有向圖中的結(jié)點(diǎn)是記錄類型,有向邊表示從箭尾一端的記錄類型到箭頭一端的記錄類型間聯(lián)系是1∶N聯(lián)系。
網(wǎng)狀模型的特點(diǎn):記錄之間聯(lián)系通過指針實(shí)現(xiàn),M∶N聯(lián)系也容易實(shí)現(xiàn)(每個M∶N聯(lián)系可拆成兩個1∶N聯(lián)系),查詢效率較高。網(wǎng)狀模型的缺點(diǎn)是編寫應(yīng)用程序比較復(fù)雜,程序員必須熟悉數(shù)據(jù)庫的邏輯結(jié)構(gòu)。由于層次系統(tǒng)和網(wǎng)狀系統(tǒng)的應(yīng)用程序編制比較復(fù)雜,因此,從20世紀(jì)80年代中期起,其市場已被關(guān)系系統(tǒng)所取代。但是使用這兩種模型建立起的許多數(shù)據(jù)庫仍然在正常運(yùn)轉(zhuǎn),只是在外層加了個關(guān)系數(shù)據(jù)庫語言的接口。網(wǎng)狀模型有許多成功的產(chǎn)品,20世紀(jì)70年代的產(chǎn)品大部分網(wǎng)狀系統(tǒng),例如,Honeywell公司的IDS/Ⅱ、HP公司的IMAGE/3000、Burroughs公司的DMSⅡ、Umivac公司的DMS1100、Cullinet公司的IDMS、Cimcom公司的TOTAL等
(3)關(guān)系模型。關(guān)系模型的主要是用二維表格結(jié)構(gòu)表達(dá)實(shí)體集,用外鍵表示實(shí)體間聯(lián)系。關(guān)系模型是由若干個關(guān)系模式組成的集合。關(guān)系模式相當(dāng)于前面提到的記錄類型,它的實(shí)例稱為關(guān)系,每個關(guān)系實(shí)際上是一張二維表格。
關(guān)系模型和層次、網(wǎng)狀模型的最大判別是用關(guān)鍵碼而不是用指針導(dǎo)航數(shù)據(jù),表格簡單用戶易懂,編程時并不涉及存儲結(jié)構(gòu),訪問技術(shù)等細(xì)節(jié)。關(guān)系模型是數(shù)學(xué)化模型。SQL語言是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)化語言,已得到了廣泛的應(yīng)用。20世紀(jì)70年代對關(guān)系數(shù)據(jù)庫的研究主要集中在理論和實(shí)驗(yàn)系統(tǒng)的開發(fā)方面。80年代初才形成產(chǎn)品,但很快得到廣泛的應(yīng)用和普及,并最終取代了層次、網(wǎng)狀數(shù)據(jù)庫產(chǎn)品?,F(xiàn)在市場上典型的關(guān)系DBMS產(chǎn)品有DB2、ORACLE、SYBASE、INFORMIX和微機(jī)型產(chǎn)品Foxpro、Access等。
關(guān)系模型和網(wǎng)狀、層次模型的最大區(qū)別是:關(guān)系模型用表格數(shù)據(jù)而不是通過指針鏈來表示和實(shí)現(xiàn)實(shí)體間聯(lián)系。關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)簡單、易懂。只需用簡單的查詢語句就可對數(shù)據(jù)庫進(jìn)行操作。
關(guān)系模型是數(shù)學(xué)化的模型,可把表格看成一個集合,因此集合論、數(shù)理邏輯等知識可引入到關(guān)系模型中來。關(guān)系模型已是一個成熟的有前途的模型,已得到廣泛應(yīng)用。
(4)面向?qū)ο竽P?。目前,關(guān)系數(shù)據(jù)庫的使用已相當(dāng)普遍,但是,現(xiàn)實(shí)世界中仍然存在著許多含有復(fù)雜數(shù)據(jù)結(jié)構(gòu)的應(yīng)用領(lǐng)域,例如,CAD數(shù)據(jù)、圖形數(shù)據(jù)等,而關(guān)系模型在這方面的處理能力就顯得力不從心。因此,人們需要更高級的數(shù)據(jù)庫技術(shù)來表達(dá)這類信息。面向?qū)ο蟮母拍钭钤绯霈F(xiàn)在程序設(shè)計語言中,隨后迅速滲透到計算機(jī)領(lǐng)域的每一個分支。面向?qū)ο髷?shù)據(jù)庫是面向?qū)ο蟾拍钆c數(shù)據(jù)庫技術(shù)相結(jié)合的產(chǎn)物。
面向?qū)ο竽P湍芡暾孛枋霈F(xiàn)實(shí)世界的數(shù)據(jù)結(jié)構(gòu),具有豐富的表達(dá)能力,但模型相對較復(fù)雜,涉及的知識面也廣,因此面向?qū)ο髷?shù)據(jù)庫尚未達(dá)到關(guān)系數(shù)據(jù)庫那樣的普及程度。
2.2.2 數(shù)據(jù)庫體系結(jié)構(gòu)
數(shù)據(jù)庫的體系結(jié)構(gòu)分三級:內(nèi)部級(internal),概念級(conceptual)和外部級(external)。這個三級結(jié)構(gòu)有時也稱為“三級模式結(jié)構(gòu)”,或“數(shù)據(jù)抽象的三個級別”,最早是在1971年通過的DBTG報告中提出,后來收入在1975年的美國ANSI/SPARC報告中。雖然現(xiàn)在DBMS的產(chǎn)品多種多樣,在不同的操作系統(tǒng)支持下工作,但是大多數(shù)系統(tǒng)在總的體系結(jié)構(gòu)上都具有三級模式的結(jié)構(gòu)特征。從某個角度看到的數(shù)據(jù)特性稱為“數(shù)據(jù)視圖”(data view)。
外部級最接近用戶,是單個用戶所能看到的數(shù)據(jù)特性。單個用戶使用的數(shù)據(jù)視圖的描述稱為“外模式”。
概念級涉及到所有用戶的數(shù)據(jù)定義,是全局的數(shù)據(jù)視圖。全局?jǐn)?shù)據(jù)視圖的描述稱為“概念模式”。
內(nèi)部級最接近于物理存儲設(shè)備,涉及到實(shí)際數(shù)據(jù)存儲的結(jié)構(gòu)。物理存儲數(shù)據(jù)視圖的描述稱為“內(nèi)模式”。
數(shù)據(jù)庫的三級模式結(jié)構(gòu)是數(shù)據(jù)的三個抽象級別。它把數(shù)據(jù)的具體組織留給DBMS去做,用戶只要抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計算機(jī)中的表示和存儲,這樣就減輕了用戶使用系統(tǒng)的負(fù)擔(dān)。
三級結(jié)構(gòu)之間往往差別很大,為了實(shí)現(xiàn)這三個抽象級別的聯(lián)系和轉(zhuǎn)換,DBMS在三級結(jié)構(gòu)之間提供兩個層次的映象(mappings):外模式/模式映象,模式/內(nèi)模式映象。此處模式是概念模式的簡稱。
2.2.3 數(shù)據(jù)的獨(dú)立性
由于數(shù)據(jù)庫系統(tǒng)采用三級模式結(jié)構(gòu),因此系統(tǒng)具有數(shù)據(jù)獨(dú)立性的特點(diǎn)。在數(shù)據(jù)庫技術(shù)中,數(shù)據(jù)獨(dú)立性是指應(yīng)用程序和數(shù)據(jù)之間相互獨(dú)立,不受影響。數(shù)據(jù)獨(dú)立性分成物理數(shù)據(jù)獨(dú)立性和邏輯數(shù)據(jù)獨(dú)立性兩級。
(1)物理數(shù)據(jù)獨(dú)立性
如果數(shù)據(jù)庫的內(nèi)模式要進(jìn)行修改,即數(shù)據(jù)庫的存儲設(shè)備和存儲方法有所變化,那么模式/內(nèi)模式映象也要進(jìn)行相當(dāng)?shù)男薷模垢拍钅J奖M可能保持不變。也就是對內(nèi)模式的修改盡量不影響概念模式,當(dāng)然,對于外模式和應(yīng)用程序的影響更小,這樣,我們稱數(shù)據(jù)庫達(dá)到了物理數(shù)據(jù)獨(dú)立性。
(2)邏輯數(shù)據(jù)獨(dú)立性
如果數(shù)據(jù)庫的概念模式要進(jìn)行修改,譬如增加記錄類型或增加數(shù)據(jù)項(xiàng),那么外模式/模式映象也要進(jìn)行相應(yīng)的修改,使外模式盡可能保持不變。也就是對概念模式的修改盡量不影響外模式和應(yīng)用程序,這樣,我們稱數(shù)據(jù)庫達(dá)到了邏輯數(shù)據(jù)獨(dú)立性。
現(xiàn)有關(guān)系系統(tǒng)產(chǎn)品均提供了較高的物理獨(dú)立性,而對邏輯獨(dú)立性的支持尚有欠缺,例如,對外模式的數(shù)據(jù)更新受到限制等。
2.2.4 范式
建立起一個良好的數(shù)據(jù)指標(biāo)體系,是建立數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫的最重要的一環(huán)。一個良好的數(shù)據(jù)指標(biāo)體系是建立DB的必要條件,但不是充分條件。我們完全可以認(rèn)為所建指標(biāo)體系中的一個指標(biāo)類就是關(guān)系數(shù)據(jù)庫中的一個基本表,而這個指標(biāo)類下面的一個個具體指標(biāo)就是這個基本表中的一個字段。但如果直接按照這種方式建庫顯然還不能算最佳。對于指標(biāo)體系中數(shù)據(jù)的結(jié)構(gòu)在建庫前還必須進(jìn)行規(guī)范化的重新組織。
在數(shù)據(jù)的規(guī)范化表達(dá)中,一般將一組相互關(guān)聯(lián)的數(shù)據(jù)稱為一個關(guān)系(relation),而在這個關(guān)系下的每個數(shù)據(jù)指標(biāo)項(xiàng)則被稱為數(shù)據(jù)元素(data element),這種關(guān)系落實(shí)到具體數(shù)據(jù)庫上就是基本表,而數(shù)據(jù)元素就是基本表中的一個字段(field)。規(guī)范化表達(dá)還規(guī)定在每一個基本表中必須定義一個數(shù)據(jù)元素為關(guān)鍵字(key),它可以唯一地標(biāo)識出該表中其它相關(guān)的數(shù)據(jù)元素。在規(guī)范化理論中表是二維的,它有如下四個性質(zhì):
在表中的任意一列上,數(shù)據(jù)項(xiàng)應(yīng)屬于同一個屬性(如圖中每一列都存放著不同合同記錄的同一屬性數(shù)據(jù))。
表中所有行都是不相同的,不允許有重復(fù)組項(xiàng)出現(xiàn)(如圖中每一行都是一個不同的合同記錄)。
在表中,行的順序無關(guān)緊要(如圖中每行存的都是合同記錄,至于先放哪一個合同都沒關(guān)系)。
在表中,列的順序無關(guān)緊要,但不能重復(fù)(如圖中合同號和合同名誰先誰后都沒關(guān)系,但二者不可重復(fù)或同名)。
在對表的形式進(jìn)行了規(guī)范化定義后,數(shù)據(jù)結(jié)構(gòu)還有五種規(guī)范化定義,定名為規(guī)范化模式,稱為范式。在這五種范式中,一般只用前三種,對于常用系統(tǒng)就足夠了。而且這五種范式是“向上兼容”的,即滿足第五范式的數(shù)據(jù)結(jié)構(gòu)自動滿足一、二、三、四范式,滿足第四范式的數(shù)據(jù)結(jié)構(gòu)自動滿足第一、二、三范式,……,依此類推。
第一范式(first normal form,簡稱1st NF)就是指在同一表中沒有重復(fù)項(xiàng)出現(xiàn),如果有則應(yīng)將重復(fù)項(xiàng)去掉。這個去掉重復(fù)項(xiàng)的過程就稱之為規(guī)范化處理。在本文所討論的開發(fā)方法里,1st NF實(shí)際上是沒有什么意義的。因?yàn)槲覀儼匆?guī)范化建立的指標(biāo)體系和表的過程都自動保證了所有表都滿足1st NF。
第二范式(second normal form,簡稱 2nd NF)是指每個表必須有一個(而且僅一個)數(shù)據(jù)元素為主關(guān)鍵字(primary key),其它數(shù)據(jù)元素與主關(guān)鍵字一一對應(yīng)。例如,在圖l9.7中如果我們將合同號定義為主關(guān)鍵字(其它數(shù)據(jù)元素中的記錄數(shù)據(jù)都有可能重名,故不能作為主關(guān)鍵字),故只要知道了一個合同記錄的合同號,就可以唯一地在同一行中找到該合同的任何一項(xiàng)具體信息。通常我們稱這種關(guān)系為函數(shù)依賴(functional depEndence)關(guān)系。即表中其它數(shù)據(jù)元素都依賴于主關(guān)鍵字,或稱該數(shù)據(jù)元素唯一地被主關(guān)鍵字所標(biāo)識。
第三范式(third normal form,簡稱 3rd NF)就是指表中的所有數(shù)據(jù)元素不但要能夠唯一地被主關(guān)鍵字所標(biāo)識,而且它們之間還必須相互獨(dú)立,不存在其它的函數(shù)關(guān)系。也就是說對于一個滿足了 2nd NF的數(shù)據(jù)結(jié)構(gòu)來說,表中有可能存在某些數(shù)據(jù)元素依賴于其它非關(guān)鍵宇數(shù)據(jù)元素的現(xiàn)象,必須加以消除。
為防止數(shù)據(jù)庫出現(xiàn)更新異常、插入異常、刪除異常、數(shù)據(jù)冗余太大等現(xiàn)象,關(guān)系型數(shù)據(jù)庫要盡量按關(guān)系規(guī)范化要求進(jìn)行數(shù)據(jù)庫設(shè)計。
§2.3 SQL語言基礎(chǔ)
2.3.1 SQL簡介
用戶對數(shù)據(jù)庫的使用,是通過數(shù)據(jù)庫管理系統(tǒng)提供的語言來實(shí)現(xiàn)的。不同的數(shù)據(jù)庫管理系統(tǒng)提供不同的數(shù)據(jù)庫語言。關(guān)系數(shù)據(jù)庫管理系統(tǒng)幾乎都提供關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言——SQL。
SQL 的全稱是Structured Query Language,即結(jié)構(gòu)化查詢語言。SQL語句可以從關(guān)系數(shù)據(jù)庫中獲得數(shù)據(jù),也可以建立數(shù)據(jù)庫、增加數(shù)據(jù)、修改數(shù)據(jù)。1986年ANSI采用SQL語言作為關(guān)系數(shù)據(jù)庫系統(tǒng)的標(biāo)準(zhǔn)語言,后被國際化標(biāo)準(zhǔn)組織(ISO)采納為國際標(biāo)準(zhǔn)。SQL語言使用方便、功能豐富、簡潔易學(xué),是操作數(shù)據(jù)庫的工業(yè)標(biāo)準(zhǔn)語言,得到廣泛地應(yīng)用。例如關(guān)系數(shù)據(jù)庫產(chǎn)品DB2、ORACLE等都實(shí)現(xiàn)了SQL語言。同時,其它數(shù)據(jù)庫產(chǎn)品廠家也紛紛推出各自的支持SQL的軟件或者與SQL的接口軟件。這樣SQL語言很快被整個計算機(jī)界認(rèn)可。
SQL語言是一種非過程化語言,它一次處理一個記錄集合,對數(shù)據(jù)提供自動導(dǎo)航。SQL語言允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對單個記錄進(jìn)行操作。SQL語言不要求用戶指定數(shù)據(jù)的存取方法,而是使用查詢優(yōu)化器,由系統(tǒng)決定對指定數(shù)據(jù)存取的最快速手段。當(dāng)設(shè)計者在關(guān)系表上定義了索引時,系統(tǒng)會自動利用索引進(jìn)行快速檢索,用戶不需知道表上是否有索引或者有什么類型的索引等細(xì)節(jié)。
SQL語言可以完成許多功能,例如:
查詢數(shù)據(jù)
在數(shù)據(jù)庫表格中插入、修改和刪除記錄
建立、修改和刪除數(shù)據(jù)對象
控制對數(shù)據(jù)和數(shù)據(jù)對象的存取
確保數(shù)據(jù)庫的一致性和完整性等
2.3.2 SQL查詢
數(shù)據(jù)查詢是關(guān)系運(yùn)算理論在SQL語言中的主要體現(xiàn),SELECT 語句是SQL查詢的基本語句,當(dāng)我們在對一個數(shù)據(jù)庫進(jìn)各種各樣的操作時,使用的最多的就是數(shù)據(jù)查詢,在以SQL為基礎(chǔ)的關(guān)系數(shù)據(jù)庫中,使用的最多的就是SELECT查詢語句。
SELECT語句的完整句法如下:
SELECT 目標(biāo)表的列名或列表達(dá)式序列
FROM 基本表和(或)視圖序列
[WHERE 行條件表達(dá)式]
[GROUP BY 列名序列]
[HAVING 組條件表達(dá)式]
[ORDER BY列名 [ASC│DEAC]…]
我在SELECT語句中還使用了大量的保留字和通配符以進(jìn)行各種各樣的條件查詢。在系統(tǒng)中有大量的查詢按鈕,其使用了大量的查詢語句,而且這些查詢語句大部分使用的是模糊查詢,所以大量的使用了模式匹配符LIKE(判斷值是否與指定的字符通配格式相符)。在包含LIKE的查詢語句中可以使用兩個通配符:%(百分號):與零個或多個字符組成的字符串匹配;_(下劃線):與單個字符匹配。系統(tǒng)中的條件判斷往往包含多個條件,這時就需要使用邏輯運(yùn)算符NOT、AND、OR(用于多條件的邏輯連接),謂詞ALL以及保留字DISTINCT等等。做為SELECT語句還有很多的使用方法,這里就不再敘述。
2.3.3 SQL數(shù)據(jù)更新
使用數(shù)據(jù)庫的目的是為了有效地管理數(shù)據(jù),而數(shù)據(jù)的插入、刪除和修改則是必不可少的一個功能。在本系統(tǒng)中就大量地使用了數(shù)據(jù)插入、刪除和修改這三種操作,現(xiàn)做一個簡單地介紹。
數(shù)據(jù)插入
往數(shù)據(jù)庫的基本表中插入數(shù)據(jù)使用的是INSERT語句,其方式有兩種:一種是元組值的插入,另一種是查詢結(jié)果的插入。在本系統(tǒng)中使用的是前一種方式,其句法如下:
INSERT INTO 基本表名(列表名)VALUES(元組值)
數(shù)據(jù)刪除
往數(shù)據(jù)庫的基本表中刪除數(shù)據(jù)使用的是DELETE語句,其句法如下:
DELETE FROM 基本表名 [WHERE 條件表達(dá)式]
在些作一點(diǎn)說明,刪除語句實(shí)際上是“SELECT * FROM 基本表名 [WHERE 條件表達(dá)式]”和DELETE操作的結(jié)合,每找到一個元組,就把它刪除。此外,DELETE語句只能從一個基本表中刪除元組,WHERE子句中條件可以嵌套,也可以是來自幾個基本表的復(fù)合條件。
數(shù)據(jù)修改
當(dāng)需要修改基本表中元組的某些列值時,可以用UPDATE語句實(shí)現(xiàn),其句法如下:
UPDATE基本表名
SET列名=值表達(dá)式[,列名=值表達(dá)式…]
[WHERE條件表達(dá)式]
在Delphi中使用SQL語句是很方便的,一般來說,都是通過TQuery組件來使用SQL語言的。有一點(diǎn)要進(jìn)行說明,雖然通過TQuery組件來使用SQL語言很方便,但考慮到自己對不同組件的理解程度、個人習(xí)慣以及其它各個方面,在本系統(tǒng)中我采用的是ADO組件來對數(shù)據(jù)庫進(jìn)行操作。最簡單的方法比如在TADOQuery組件的SQL屬性中就可以鍵入SQL語句,至于詳細(xì)的使用方法在后面進(jìn)行介紹。
轉(zhuǎn)貼于 第三章
數(shù)據(jù)庫開發(fā)工具
§3.1 Delphi 6.0 簡介
Delphi類可以粗略地分成兩部分:一部分是組件類,這些組件類通常以某種方式出現(xiàn)在組件面板上,當(dāng)用戶從組件面板上點(diǎn)取一個類的圖標(biāo)后,在程序中就自動生成了該類的對象(非可視組件除外);另一部分是功能類,這此功能類的對象通常出現(xiàn)在程序代碼中,起著不可代替的作用,但是這些功能類在組件面板上是找不到的。在Delphi中,每一個類的祖先都是Tobject類,整個類的層次結(jié)構(gòu)就像一棵倒掛的樹,在最頂層的樹根即為Tobject類。這樣,按照面向?qū)ο缶幊痰幕舅枷?,就使得用戶可用Tobject類這個類型代替任何其它類的數(shù)據(jù)類型。實(shí)際上在Delphi的類庫中,Tobject類派生出了為數(shù)相當(dāng)眾多的子類,它們形成了一個龐大的體系,通常情況下,如果不自行開發(fā)組件,就不必了解整個類的體系結(jié)構(gòu),只用到類層次樹的葉結(jié)點(diǎn)就足夠了。
凡是做過程序開發(fā)的人都知道從來沒有單純的數(shù)據(jù)應(yīng)用程序,也就是說,數(shù)據(jù)庫應(yīng)用程序必須和用戶界面(可以是圖形界面,也可以是命令接口)元素相結(jié)合,只講界面或只講數(shù)據(jù)庫本身都構(gòu)不成數(shù)據(jù)庫應(yīng)用程序,因而用Delphi 6.0開發(fā)數(shù)據(jù)庫應(yīng)用程序就隱含著界面開發(fā)。Delphi6中的VCL組件可用圖3-1來說明。組件在Delphi程序的開發(fā)中是最顯眼的角色。大家知道,在編寫程序時一般都開始于在組件面板上選擇組件并定義組件間的相互作用。但也有一些組件不在組件面板上,例如Tform和Tapplication(典型的非可視組件)。組件是Tcomponents派生出來的子類,可以流的形式存放在DFM文件中,具有事件和Publish屬性。
窗口組件類是窗口化的可視化組件類,在Delphi的類庫中占有最大的份額。在實(shí)際編程中,窗口組件類的對象都有句柄,可以接受輸入焦點(diǎn)和包含其它組件。
圖形組件與窗口組件并列,是另一大類組件。圖形組件不是基于窗口的,因而不能有窗口句柄,不能接受輸入焦點(diǎn)和包含其它組件。從圖8-43中可以看出,圖形組件的基類是TgraphicControl,在實(shí)際編程中,它們必須寄生于它們的宿主——窗口組件類的對象,由它們的擁有者負(fù)責(zé)其顯示,而且它們還能觸發(fā)一些和鼠標(biāo)活動相關(guān)的事件。圖形控件最典型的例子是Tlabel和TspeedButton。由此可以看出圖形組件的功能很弱,有讀者會問圖形組件的用處何在呢?其實(shí)使用圖形組件的最大好處在于節(jié)省資源,正是因?yàn)樗鼈兊墓δ茌^弱,所以使用的系統(tǒng)資源就要少。在一個應(yīng)用程序中,如果能在不影響其功能的前提下合理大量地使用圖形組件,將會大減少程序?qū)ο到y(tǒng)資源的消耗。
非可視組件是與可視組件相并列的另一類組件,非可視組件在程序運(yùn)行中是不可見的(除各種對話框組件之外,事實(shí)上有人認(rèn)為對話框組件不能歸入非可視組件,應(yīng)該是另一種介于可視與非可視之間的組件)。
§3.2 Delphi 6.0 控件
用Delphi6開發(fā)數(shù)據(jù)庫應(yīng)用,重點(diǎn)是和各種數(shù)據(jù)庫組件打交道,當(dāng)然也要使用其它的一些組件,現(xiàn)在就我在系統(tǒng)設(shè)計中所使用的重要組件給與簡單介紹。
3.2.1 ADO數(shù)據(jù)訪問組件
ADO數(shù)據(jù)對象(Active Data Objects)實(shí)際是一種提供訪問各種數(shù)據(jù)類型的鏈接機(jī)制。ADO設(shè)計為一種極簡單的格式,通過ODBC的方法同數(shù)據(jù)庫接口中,可以使用任何一種ODBC數(shù)據(jù)源,即不止適合于SQL Server、Oracle、Access等數(shù)據(jù)庫應(yīng)用程序,也適合于Excel表格、文本文件、圖形文件和無格式的數(shù)據(jù)文件。ADO是基于OLE-DB之上的技術(shù),因此ADO通過其內(nèi)部的屬性和方法提供統(tǒng)一的數(shù)據(jù)訪問接口方法。ADO使您的客戶端應(yīng)用程序能夠通過OLE DB提供訪問和操作在數(shù)據(jù)庫服務(wù)器中的數(shù)據(jù)。ADO支持用于建立C/S和Web的應(yīng)用程序的主要功能。其主要優(yōu)點(diǎn)是易于使用、高速度、低內(nèi)存支出和占用磁盤空間較少。ADO同時具有遠(yuǎn)程數(shù)據(jù)服務(wù)(RDS)功能,通過RDS可以在一次往返過程中實(shí)現(xiàn)將數(shù)據(jù)從服務(wù)器移動到客戶端應(yīng)用程序和Web頁、在客戶端對數(shù)據(jù)進(jìn)行處然后將更新結(jié)果返回服務(wù)器的操作。
Delphi 6.0繼續(xù)對Microsoft的ADO訪問能力的支持。這種能力是通過一組新組件實(shí)現(xiàn)的,這些組件是在企業(yè)版的ADO組件頁中,在組件面版的ADO頁上可以找到這些組件。利用在前面章節(jié)提到的TdataSet抽象類,ADO組件可以不通過BDE而直接實(shí)現(xiàn)ADO連接。這意味著只需要很少的代碼就可以實(shí)現(xiàn)該連接并且性能得到提高。
利用ADO數(shù)據(jù)訪問組件,可以只使用ADO結(jié)構(gòu)與數(shù)據(jù)庫取得聯(lián)系并對其中的數(shù)據(jù)進(jìn)行操作,而在這些過程中完全不需要使用BDE。大多數(shù)的ADO連接和數(shù)據(jù)集組件都是與基于BDE的連接和數(shù)據(jù)集組件相類似的。TADOConnection組件與基于BDE的應(yīng)用程序中的Tdatabase組件類似。TADOTable與Ttable,TADOQuery與Tquery,以及TADOStoreProc和TstoredProc之間都具有這種類似的對應(yīng)關(guān)系。使用這些ADO組件的方式與我們常使用的數(shù)據(jù)訪問組件(基于BDE)都有許多相同之處。TTADODataSet沒有直接的BDE對應(yīng)組件,但它提供了許多與Ttable和Tquery相同的功能。同樣,TADOCommand也沒有相對應(yīng)的BDE組件,它是在Delphi/ADO環(huán)境中完成特定功能的組件。Delphi 6.0通過ADO數(shù)據(jù)集訪問組件,可以不借助BDE數(shù)據(jù)引擎而是通過微軟的OLEDB來訪問更為廣泛的數(shù)據(jù)庫中的數(shù)據(jù)。ADO數(shù)據(jù)集訪問組件與常用的數(shù)據(jù)訪問組件是并列的關(guān)系。
在系統(tǒng)中我主要使用的是ADOTablet和ADOQuery兩個組件。
3.2.2 數(shù)據(jù)控制類DataControl
數(shù)據(jù)控制類負(fù)責(zé)數(shù)據(jù)庫數(shù)據(jù)的顯示,并把用戶對數(shù)據(jù)的修改傳回。這里的絕大多數(shù)組件,如DBText, DBEdit, DBMemo, DBImage, DBListBox, DBComboBox, DBCheckBox, DBRadioGroup, DBLookupListBox, DBLookupCombox, DBCtrGrid的功能和對應(yīng)的非數(shù)據(jù)感知組件相同,如TEdit框,TRadioGroups單選按鈕組等,只不過在顯示數(shù)據(jù)庫數(shù)據(jù)時要用而已。
在系統(tǒng)中主要使用數(shù)據(jù)網(wǎng)格控件DBGrid和數(shù)據(jù)庫導(dǎo)航器控件DBNavigator。
3.2.3 數(shù)據(jù)訪問類DataAccess
數(shù)據(jù)庫應(yīng)用系統(tǒng)中數(shù)據(jù)訪問是一個首要問題,包括單用戶和 C/S系統(tǒng),都必須聯(lián)系一些數(shù)據(jù)庫和數(shù)據(jù)表文件。Delphi 6 提供了專門用于數(shù)據(jù)訪問的基類控件。主要包括數(shù)據(jù)源控件DataSource、客戶數(shù)據(jù)集控件ClientDataSet、數(shù)據(jù)集提供器控件DataSetProvider等等。
Tdatabase:當(dāng)一個基于BDE的數(shù)據(jù)庫應(yīng)用程序需要一個永久數(shù)據(jù)庫連接時,需要定制向一個數(shù)據(jù)庫服務(wù)器的連接時,需要事務(wù)控制和特殊的數(shù)據(jù)庫別名時就得用到Tdatabase對象。特別是當(dāng)連接到一個遠(yuǎn)程的SQL數(shù)據(jù)庫服務(wù)器時,如果要利用BDE進(jìn)行數(shù)據(jù)庫事務(wù)處理,那么,TDatabase對象的威力就體現(xiàn)出來了。在一個應(yīng)用程序中為每一個數(shù)據(jù)庫連接顯示的聲明Tdatabase對象要根據(jù)需要而定,不是必需的。對一個數(shù)據(jù)庫連接,如果沒有顯示的聲明并實(shí)例化TDatabase對象,系統(tǒng)就會產(chǎn)生一個帶有默認(rèn)屬性的TDatabase對象。
TdataSource對象用于在DataSet對象(包括Tquery,TstoredProc,Ttable等)和數(shù)據(jù)感知組件之間提供一個連接的紐帶,以便在窗體上顯示數(shù)據(jù)庫中的數(shù)據(jù),在數(shù)據(jù)庫中導(dǎo)航定位與編輯數(shù)據(jù)集中的數(shù)據(jù)。如果一個DataSet對象中的數(shù)據(jù)想在數(shù)據(jù)感知組件中顯示和修改,它就必須和TdataSource對象相聯(lián)系。同樣,一個數(shù)據(jù)感知組件如果想和數(shù)據(jù)源相聯(lián)系以便顯示和操縱數(shù)據(jù),就必須以TDataSource對象為中介。
用Delphi6作數(shù)據(jù)庫應(yīng)用開發(fā)概括來說如下:先利用數(shù)據(jù)存取組件和實(shí)際的數(shù)據(jù)庫建立連接,并用Tsession對象和Tdatabase對象管理這些連接。然后以Tdatasource對象為中介,用數(shù)據(jù)感知組件向用戶顯示數(shù)據(jù)庫的內(nèi)容并接受用戶的查詢和修改等操作。
3.2.4 SQL語言在Delphi中的應(yīng)用
在Delphi中使用SQL語言非常方便,一般來說,都是通過Tquery組件來使用SQL語言的。可以在TQuery組件的SQL屬性中設(shè)置SQL語句。設(shè)計程序時,在該組件的屬性對話框中選擇SQL屬性,單擊帶省略號的按鈕,就可以打開String List Editor對話框,然后我們就可以在對話框中添加SQL語句。還可以使用Delphi的SQL Builder來自動生成SQL語句,這樣可以避免手工編寫SQL而可能造成的語法錯誤。
靜態(tài)SQL語句在程序設(shè)計時便已固定下來,它不包含任何參數(shù)和變量。
動態(tài)SQL語句,也被稱作參數(shù)化的語句,在其中間包含著表示字段名或表名的參數(shù),例如下面的語句是一條動態(tài)SQL語句:
Select * From Students Where StudentCode =: StudentCode;
其中的變量StudentCode便是一個參數(shù)變量,它由一個冒號引導(dǎo),在程序運(yùn)行過程中,必須要為該參數(shù)賦值,該條SQL語句才能正確執(zhí)行,每次運(yùn)行應(yīng)用程序時可以為該參數(shù)變量賦予不同的值。為參數(shù)賦值有三種方法:
①根據(jù)參數(shù)在SQL語句中出現(xiàn)的順序,設(shè)置TQuery部件的Params屬性值為參數(shù)賦值。
②直接根據(jù)SQL語句中各參數(shù)的名字,調(diào)用ParamByName方法來為各參數(shù)賦值。
③將TQuery部件的DataSource屬性設(shè)置為另一個數(shù)據(jù)源,這樣將另一個數(shù)據(jù)源中與當(dāng)前TQuery部件的SQL語句中的參數(shù)名相匹配的字段值賦給其對應(yīng)的參數(shù)。利用這種方法也能實(shí)現(xiàn)所謂的連接查詢,創(chuàng)建主要—明細(xì)型數(shù)據(jù)庫應(yīng)用。
在程序運(yùn)行過程中,要想設(shè)置TQuery部件的SQL屬性,必須首先調(diào)用Close方法,關(guān)閉TQuery部件,然后再調(diào)用Clear方法清除SQL屬性中現(xiàn)存的SQL命令語句, 最后再調(diào)用Add方法為SQL屬性設(shè)置新的SQL命令語句。例如:
Query1.Close {關(guān)閉Query1)
Query1.SQL.Clear {清除SQL屬性中的SQL命令語句}
Query1.SQL.Add(‘Select * From Students‘);
Query1.SQL.Add(‘ Where Name ="Lucy" ‘);
在為TQuery部件設(shè)置SQL屬性時調(diào)用Close方法總是很安全的,如果TQuery部件已經(jīng)被關(guān)閉了,調(diào)用Close方法時不會產(chǎn)生任何影響。在應(yīng)用程序中為SQL屬性設(shè)置新的SQL 命令語句時,必須要調(diào)用Clear方法以清除SQL屬性中現(xiàn)存的SQL命令語句,如果不調(diào)用Clear方法,便調(diào)用Add方法向SQL屬性中設(shè)置SQL命令語句,那么新設(shè)置的SQL命令語句會追加在現(xiàn)存SQL命令語句后面, 在程序運(yùn)行時常常會出現(xiàn)出乎意料的查詢結(jié)果甚至程序無法運(yùn)行下去。
在這里要特別注意的,一般情況下TQuery部件的SQL屬性只能包含一條完整的SQL語句,它不允許被設(shè)置成多條SQL語句。當(dāng)然有些數(shù)據(jù)庫服務(wù)器也支持在TQuery部件的SQL屬性中設(shè)置多條SQL語句,只要數(shù)據(jù)庫服務(wù)器允許這樣,我們在編程時可以為 SQL 屬性設(shè)置多條SQL語句。
在為TQuery部件設(shè)置完SQL屬性的屬性值之后,也即編寫好適當(dāng)?shù)腟QL程序之后,可以有多種方式來執(zhí)行SQL程序。
在設(shè)計過程中,設(shè)置完TQuery部件的SQL屬性之后將其Active屬性的值置為True, 這樣便可以執(zhí)行SQL屬性中的SQL程序,如果應(yīng)用中有與TQuery部件相連的數(shù)據(jù)瀏覽部件( 如TDDGrid TDBEdit等)那么在這些數(shù)據(jù)瀏覽部件中會顯示SQL程序的執(zhí)行結(jié)果。
在應(yīng)用程序運(yùn)行過程中,通過程序調(diào)用TQuery部件的Open方法或ExecSQL 方法可以執(zhí)行其SQL屬性中的SQL程序。Open方法和ExecSQL方法是不一樣的。Open方法只能用來執(zhí)行SQL語言的查詢語句(Select命令), 并返回一個查詢結(jié)果集,而ExecSQL方法還可以用來執(zhí)行其它常用的SQL語句(如INSERT, UPDATE, DELETE等命令),例如:
Query1.Open (這樣會返回一個查詢結(jié)果集)
如果調(diào)用Open方法,而沒有查詢結(jié)果時,會出錯。此時應(yīng)該調(diào)用ExecSQL 方法來代替Open方法。如:
Query1.ExecSQL (沒有返回結(jié)果)
當(dāng)然在設(shè)計應(yīng)用程序時,程序設(shè)計人員是無法確定TQuery部件中的SQL 語句是否會返回一個查詢結(jié)果的。對于這種情況應(yīng)當(dāng)用Try…Except模塊來設(shè)計程序。在 Try 部分調(diào)用Open方法,而在Except部分調(diào)用ExceSQL方法,這樣才能保證程序的正確運(yùn)行。
Delphi中用ADOQuery來使用SQL語句同樣十分方便。在ADOQuery組件中首先通過ConnectionString屬性值來聯(lián)接數(shù)據(jù)源,然后就通過雙擊SQL…屬性值來寫入SQL語句。在Delphi中調(diào)用數(shù)據(jù)庫,就可以調(diào)用ADOQuery組件,通過修改其中的SQL…屬性中的SQL語句來實(shí)現(xiàn)對數(shù)據(jù)庫的各項(xiàng)操作。
值得注意的是,ADOQuery組件只有在激活的情況下才可以被正確地使用,這樣就提出了一個問題,也就是說,在每次修改ADOQuery組件的SQL…屬性時都必須先行進(jìn)行關(guān)閉,待清除掉SQL…中所有的SQL語句后才可以添加新的SQL語句。而且,在每一次修改完成以后,還應(yīng)該記得重新將ADOQuery激活。其它的使用方法與TTQuery有許多的相似之處。
§3.3 Access 簡介
建立一個數(shù)據(jù)庫我們有多種選擇,現(xiàn)在市場上有各種各樣的數(shù)據(jù)庫,而且每一種數(shù)據(jù)庫都有其自身的特點(diǎn),不能說哪一種更好,只能在其中尋找一種能更好地適應(yīng)系統(tǒng)需求、更好地滿足用戶的要求以及適應(yīng)開發(fā)人員的習(xí)慣。在本系統(tǒng)中,做為圖書倉庫管理系統(tǒng)是一個比較小的應(yīng)用系統(tǒng),它所產(chǎn)生和處理的數(shù)據(jù)量也比較小。因此,沒有必要使用像SQL Server和Oracle這樣的大型數(shù)據(jù)庫。我首先想到的數(shù)據(jù)庫是Borland公司的Paradox數(shù)據(jù)庫。另外,Microsoft Office中的Access數(shù)據(jù)庫在計算機(jī)上的應(yīng)用比較普及,是開發(fā)小型數(shù)據(jù)庫系統(tǒng)的比較理想的選擇,所以,在本系統(tǒng)中我選擇了Access數(shù)據(jù)庫。
Access做為一個數(shù)據(jù)庫管理系統(tǒng),它被集成在Microsoft Office中。Access數(shù)據(jù)庫處理的基本結(jié)構(gòu),采取關(guān)系型數(shù)據(jù)庫模式。與其他的數(shù)據(jù)庫系統(tǒng)相比,Access更加簡單易學(xué),一個普通的計算機(jī)用戶可以很快地掌握它。Access 2000的功能十分強(qiáng)大,利用它可以方便地實(shí)現(xiàn)對信息保存、維護(hù)、查詢、統(tǒng)計、打印、交流、,而且它可以十分方便地與Office其他組件交流數(shù)據(jù),這些功能對一個一般用戶而言已經(jīng)足夠了。
轉(zhuǎn)貼于 第四章 系統(tǒng)總體設(shè)計
軟件系統(tǒng)的總體設(shè)計大約要經(jīng)歷可行性分析和項(xiàng)目開發(fā)計劃,需求分析,概要設(shè)計,詳細(xì)設(shè)計,編碼,測試以及維護(hù)等七個階段??尚行苑治龊晚?xiàng)目開發(fā)計劃在前面已經(jīng)敘述,下面所要做的是進(jìn)行軟件需求分析,概要設(shè)計和詳細(xì)設(shè)計。編碼過程將在下一節(jié)論述,而測試和維護(hù)過程不在本文敘及。
§4.1 系統(tǒng)需求分析
在經(jīng)過前一階段的分析之后,我確定了我的開發(fā)課題為圖書倉庫管理?,F(xiàn)在所要做的是要準(zhǔn)確定義系統(tǒng)必須做什么以及系統(tǒng)必須具備的功能。
軟件需求分析中我采用結(jié)構(gòu)化分析方法(Structured Analysis,簡稱SA),SA是面向數(shù)據(jù)流進(jìn)行需求分析的方法,像所有的軟件分析方法(如面向?qū)ο蠓治龇椒?、IDEF方法等等)一樣,SA也是一種建?;顒?,它使用簡單易讀的符號,根據(jù)軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,描繪滿足功能要求的軟件模型。
在系統(tǒng)中我采用數(shù)據(jù)流圖(DFD)這種半形式化的描述方式表達(dá)需求。它是一種功能模型,以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動和處理的過程,只反映系統(tǒng)必須完成的邏輯功能。它有四種基本圖形符號:
:箭頭,表示數(shù)據(jù)流;
〇:圓或橢圓,表示加工;
:雙杠,表示數(shù)據(jù)存儲;
:方框,表示數(shù)據(jù)的源點(diǎn)或終點(diǎn)。
為了表達(dá)較為復(fù)雜問題的數(shù)據(jù)處理過程,用一張數(shù)據(jù)流圖是不夠的,要按照問題的層次結(jié)構(gòu)進(jìn)行逐步分解,并以一套分層的數(shù)據(jù)流圖反映這種結(jié)構(gòu)關(guān)系。在這里我一共使用了三層數(shù)據(jù)流圖,即頂層圖,0層圖和1層圖(也是底層圖)。
在多層數(shù)據(jù)流圖中,頂層流圖僅包含一個加工,它代表被開發(fā)系統(tǒng),它的輸入流是該系統(tǒng)的輸入數(shù)據(jù)了,輸出流是該系統(tǒng)的輸出數(shù)據(jù);底層流圖是指其加工不需要再做分解的數(shù)據(jù)流圖,中間層流圖表示對其上層父圖的細(xì)化,它的每一步加工可能繼續(xù)細(xì)化成子圖。
經(jīng)過對系統(tǒng)的分析首先得到系統(tǒng)的頂層DFD,如下: 一步細(xì)化得到系統(tǒng)的0層DFD,如下:
再進(jìn)一步細(xì)化每一個數(shù)據(jù)加工功能,得到系統(tǒng)的1層DFD圖。
在這里只給出有關(guān)入庫管理和出庫管理的1層數(shù)據(jù)流圖,它們是系統(tǒng)的關(guān)鍵部分,也是主要的部分。通過以上對數(shù)據(jù)流圖的分析之后,我們已大體地了解了系統(tǒng)的功能和目標(biāo),接下來所要做的就是系統(tǒng)功能模塊的劃分和數(shù)據(jù)庫的設(shè)計,也就是系統(tǒng)的概要設(shè)計。
§4.2 系統(tǒng)概要設(shè)計
在軟件需求分析階段,搞清楚了軟件“做什么”的問題,形成了目標(biāo)系統(tǒng)的邏輯模型?,F(xiàn)在我們所要做的就是要把軟件“做什么”的邏輯模型變換為“怎么做”的物理模型,即著手實(shí)現(xiàn)軟件的需求。首先,我們需要描述的是系統(tǒng)的總的體系結(jié)構(gòu)。
4.2.1 系統(tǒng)結(jié)構(gòu)設(shè)計
系統(tǒng)的概要設(shè)計中最重要的就是系統(tǒng)的模塊化。模塊化是指解決一個復(fù)雜問題時自項(xiàng)向下逐層把軟件系統(tǒng)劃分成若干個模塊的過程。每個模塊完成一個特定的功能,所有的模塊按某種方法組織起來,成為一個整體,完成整個系統(tǒng)所要求的功能。
將系統(tǒng)劃分為多個模塊是為了降低軟件系統(tǒng)的復(fù)雜性,提高可讀性、可維護(hù)性,但模塊的劃分不能是任意的,應(yīng)盡量保持其獨(dú)立性。也就是說,每個模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單,即盡量做到高內(nèi)聚低耦合,提高模塊的獨(dú)立性,為設(shè)計高質(zhì)量的軟件結(jié)構(gòu)奠定基礎(chǔ)。
在系統(tǒng)的概要設(shè)計中我采用結(jié)構(gòu)化設(shè)計(Structure Design,簡稱SD),SD以需求分析階段產(chǎn)生的數(shù)據(jù)流圖DFD為基礎(chǔ),按一定的步驟映射成軟件結(jié)構(gòu)。我首先將整個系統(tǒng)化分為幾個小問題,小模塊,在系統(tǒng)中,我設(shè)計了用戶管理、庫存管理、入庫管理、出庫管理、員工管理和供應(yīng)商管理6個小模塊。然后,進(jìn)一步細(xì)分模塊,添加細(xì)節(jié)。比如,用戶管理我又將其分為用戶注冊、用戶注銷、密碼修改;庫存管理分為庫存記錄查詢、庫存記錄修改、庫存記錄打印等等。
以下就是系統(tǒng)的結(jié)構(gòu)圖:(在這里為了表達(dá)方便我將結(jié)構(gòu)圖分開來表達(dá)。)
在得到系統(tǒng)的第一層功能模塊圖后,經(jīng)過進(jìn)一步地細(xì)化,得一系統(tǒng)的子功能模塊圖:
4.2.2 數(shù)據(jù)庫設(shè)計
在信息世界中,信息從客觀事物出發(fā)流經(jīng)數(shù)據(jù)庫,通過決策機(jī)構(gòu)最后又回到客觀世界,信息的這一循環(huán)經(jīng)歷了三個領(lǐng)域:信息世界,數(shù)據(jù)世界,現(xiàn)實(shí)世界。現(xiàn)實(shí)世界的事物反映到人的頭腦中,人的大腦對它有個認(rèn)識過程,經(jīng)過分析(選擇、命名、分類等)進(jìn)入信息世界。這些信息再進(jìn)一步加工、編碼,然后進(jìn)數(shù)據(jù)世界,而軟件系統(tǒng)的開發(fā)工作需要考慮這兩個方面的問題,也就是要考慮系統(tǒng)開發(fā)所需要的數(shù)據(jù),以及如何對這些數(shù)據(jù)進(jìn)行操作。這兩個問題貫穿了整個軟件系統(tǒng)的開發(fā)過程,這也就是數(shù)據(jù)庫的設(shè)計問題,軟件設(shè)計的一個核心。
4.2.2.1 ER圖設(shè)計
在系統(tǒng)設(shè)計的開始,我首先考慮的是如何用數(shù)據(jù)模型來數(shù)據(jù)庫的結(jié)構(gòu)與語義,以對現(xiàn)實(shí)世界進(jìn)行抽象。目前廣泛使用的數(shù)據(jù)模型可分為兩種類型,一種是獨(dú)立于計算機(jī)系統(tǒng)的“概念數(shù)據(jù)模型”,如“實(shí)體聯(lián)系模型”;另一種是直接面向數(shù)據(jù)庫邏輯結(jié)構(gòu)的“結(jié)構(gòu)數(shù)據(jù)模型”。在本系統(tǒng)中我采用“實(shí)體聯(lián)系模型”(ER模型)來描述數(shù)據(jù)庫的結(jié)構(gòu)與語義,以對現(xiàn)實(shí)世界進(jìn)行第一次抽象。ER模型直接從現(xiàn)實(shí)世界抽象出實(shí)體類型及實(shí)體間聯(lián)系,然后用ER圖來表示數(shù)據(jù)模型。它有兩個明顯的優(yōu)點(diǎn):接近于人的思維,容易理解;與計算機(jī)無關(guān),用戶容易接受。但ER模型只能說明實(shí)體間語義的聯(lián)系,不能進(jìn)一步說明詳細(xì)的數(shù)據(jù)結(jié)構(gòu),它只是數(shù)據(jù)庫設(shè)計的第一步。
ER圖是直觀表示概念模型的工具,它有四個基本成分:
矩形框,表示實(shí)體類型(考慮問題的對象)。
菱形框,表示聯(lián)系類型(實(shí)體間的聯(lián)系)。
橢圓形框,表示實(shí)體類型和聯(lián)系類型的屬性。對于關(guān)鍵碼的屬性,在屬性名下劃一橫線。
直線,聯(lián)系類型與其涉及的實(shí)體類型之間以直線連接。
本系統(tǒng)為圖書倉庫管理,主要管理圖書的入庫、出庫以及庫存等事項(xiàng)。倉庫根據(jù)需要可以查詢圖書供應(yīng)商的信息,同時還需要了解在入庫和出庫中員工的參與情況。依據(jù)倉庫管理的實(shí)際情況,考慮了多方面的因素以后,確定系統(tǒng)的ER圖如下:
(為了表達(dá)的方便,在這里我沒有在一張圖上表達(dá)出所有的關(guān)系,而是用一張總體ER圖,和幾張實(shí)體屬性關(guān)系圖來表達(dá)數(shù)據(jù)庫的結(jié)構(gòu)。)
在該數(shù)據(jù)庫中,我設(shè)計了三個實(shí)體,分別是庫存、員工和供應(yīng)商以及兩個聯(lián)系類型入庫和出庫。在本系統(tǒng)中庫存是核心,也是基本,沒有了庫存其它的也就沒有什么意義了。員工記錄的添加是考慮到責(zé)任問題,也就是說,在倉庫管理的實(shí)際運(yùn)用中,出現(xiàn)了責(zé)任不清的現(xiàn)象,特別是由于倉庫的進(jìn)出圖書數(shù)量都比較大時產(chǎn)生了一系列問題,所以在設(shè)計數(shù)據(jù)庫時,我特別考慮到這一點(diǎn),加入了員工記錄這一實(shí)體。供應(yīng)商信息的添加主要出于對圖書來源問題的思考。通過添加供應(yīng)商信息可以比較清楚地了解圖書的進(jìn)貨渠道,從圖書的質(zhì)量到供應(yīng)商的信譽(yù)都可以進(jìn)行了解,同時可以為以后的圖書進(jìn)購提供一定有用的信息。
入庫聯(lián)系類型將庫存信息、供應(yīng)商信息和員工信息聯(lián)系在一起,可以方便地實(shí)現(xiàn)三個實(shí)體之間的聯(lián)接,而出庫聯(lián)系類型則將庫存信息和員工信息較好地聯(lián)接起,同時這兩個聯(lián)系類型又都具有各自特有的屬性。
下面就是各實(shí)體及聯(lián)系類型的屬性圖:(帶#號的屬性為關(guān)鍵字段)4.2.2.2 數(shù)據(jù)庫表格設(shè)計
在完成系統(tǒng)的ER圖之后,需要將ER模型轉(zhuǎn)化為關(guān)系模型,也就是說,要設(shè)計出數(shù)據(jù)庫所需要的表格。在這里,我選用的是關(guān)系數(shù)據(jù)庫。因?yàn)殛P(guān)系數(shù)據(jù)庫中的二維表格可以很清楚地描述數(shù)據(jù)之間的聯(lián)系。
在這里不得不提到一個概念——范式。其實(shí)在上一節(jié)的ER圖設(shè)計中,已經(jīng)運(yùn)用了范式的思想,不僅如此,在數(shù)據(jù)庫的表格設(shè)計中更離不開范式的思想,它是數(shù)據(jù)庫設(shè)計的基礎(chǔ),如果不注意這個問題將會導(dǎo)致一系列問題的出現(xiàn)。
我在系統(tǒng)中定義的表格都嚴(yán)格地按照范式的思想和要求去完成,數(shù)據(jù)庫中的所有表格都達(dá)到了三范式的要求。根據(jù)系統(tǒng)ER圖,針對本系統(tǒng)的特點(diǎn),在對所搜集的數(shù)據(jù)進(jìn)行規(guī)范化之后,定義了如下六張表格,分別是庫存信息表,入庫信息表,出庫信息表,員工信息表,供應(yīng)商信息表和密碼信息表。通過對這六張表格的操作可以較好地完成系統(tǒng)設(shè)計的各項(xiàng)功能,六張表格之間有著不同程度的聯(lián)系。(說明:在以下數(shù)據(jù)表中,K代表主鍵,#代表外鍵,字段值不為空。)
BookRecord 表(庫存信息表)
字段名稱 數(shù)據(jù)類型 說明
K BookID 數(shù)字 圖書編號
BookName 文本 圖書名
Author 文本 作者
Publisher 文本 出版社
PubDate 日期/時間 出版日期
Price 貨幣 價格
BookType 文本 圖書類型
Number1 數(shù)字 庫存數(shù)量
Addation 文本 備注
圖4.13 庫存信息表
庫存信息表主要用于記錄倉庫中現(xiàn)存放的所有圖書的詳細(xì)信息,包括圖書編號、書名、作者、出版社、圖書類型等有關(guān)圖書的各類信息,它即是該數(shù)據(jù)庫的主表,也是系統(tǒng)主界面的主要內(nèi)容。
在該表中圖書編號是主鍵,它按圖書入庫的先后次序來編寫,每當(dāng)有圖書入庫,系統(tǒng)自動給出圖書編號,這樣我們按圖書編號來查找圖書是比較方便的。考慮到編號比較難于記憶,所以使用了出版社和圖書類型兩個字段,在系統(tǒng)中我提供了出版社和圖書類型的分類查找,而且全部采用自動生成,每當(dāng)系統(tǒng)中有新的出版社類型和圖書類型,彈出菜單會自動添中新類型,這樣就可以比較方便地實(shí)現(xiàn)按出版社和按圖書類型查找。此外,庫存數(shù)量也是一個比較關(guān)鍵的字段,該字段是在系統(tǒng)初始化時就給定的,每當(dāng)有圖書入庫或出庫操作,系統(tǒng)就會自動修改圖書的庫存數(shù)量,以保持?jǐn)?shù)據(jù)的一致性。做為備注有一點(diǎn)說明,我的數(shù)據(jù)庫中備注的數(shù)據(jù)類型是文本,而不是備注類型,主要考慮到該字段的長度并不大,而且在Delphi中文本數(shù)據(jù)類型的處理也比較方便一點(diǎn)。
Employee 表(員工信息表)
字段名稱 數(shù)據(jù)類型 說明
K EmployeeID 數(shù)字 員工編號
EmployeeName 文本 員工姓名
Sex 文本 性別
BornDate 日期/時間 出生日期
Grade 文本 職稱
WorkDate 日期/時間 工作日期
Telephone 文本 聯(lián)系電話
Address 文本 聯(lián)系地址
圖4.14 員工信息表
員工信息表主要用于記錄有關(guān)員工的各類信息,包括姓名、職稱、出生日期、聯(lián)系電話、聯(lián)系地址等。它主要用來為系統(tǒng)提供員工的有關(guān)信息,因?yàn)樵谙到y(tǒng)中,入庫和出庫操作均與員工有著一定的聯(lián)系,在查詢?nèi)霂煨畔⒑统鰩煨畔r,有時需要查找有關(guān)此項(xiàng)記錄有關(guān)的員工信息,在系統(tǒng)中我是通過入庫記錄與員工記錄(出庫記錄和員工記錄)之間的聯(lián)接查詢來完成的。另外,作為一個倉庫也有必要了解其所屬員工的一些基本情況,以便查詢。
Shopkeeper 表(供應(yīng)商信息表)
字段名稱 數(shù)據(jù)類型 說明
K ShopkeeperID 數(shù)字 供應(yīng)商編號
ShopkeeperName 文本 供應(yīng)商姓名
Address 文本 地址
PostNo 數(shù)字 郵編
OfficePhone 文本 辦公電話
HomePhone 文本 住宅電話
Email 文本 E-mail
PayType 文本 付款方式
圖4.15 供應(yīng)商信息表
供應(yīng)商信息表主要用于記錄有關(guān)供應(yīng)商的各類信息,包括姓名、地址、電話、付款方式等。它主要用來為系統(tǒng)提供供應(yīng)商的有關(guān)信息,在系統(tǒng)中入庫記錄是與供應(yīng)商記錄相聯(lián)系的,通過入庫記錄可以查找相關(guān)的供應(yīng)商信息。在供應(yīng)商信息中,考慮當(dāng)實(shí)際情況,我特別加入了Email和付款方式這兩個字段,因?yàn)樵诋?dāng)今信息世界中,多種多樣的通訊方式和多種多樣的付款方式是必然的,是數(shù)據(jù)庫中必須與以記錄。
InRecord 表(入庫信息表)
字段名稱 數(shù)據(jù)類型 說明
K InID 數(shù)字 入庫編號
# BookID 數(shù)字 圖書編號
# EmployeeID 數(shù)字 員工編號
# ShopkeeperID 數(shù)字 供應(yīng)商編號
Number 數(shù)字 入庫數(shù)量
BuyDate 日期/時間 入庫日期
圖4.16 入庫信息表
OutRecord 表(出庫信息表)
字段名稱 數(shù)據(jù)類型 說明
K OutID 數(shù)字 出庫編號
# BookID 數(shù)字 圖書編號
# EmployeeID 數(shù)字 員工編號
Number2 數(shù)字 出庫數(shù)量
OutDate 日期/時間 出庫日期
圖4.17 出庫信息表
入庫信息表主要用于記錄有關(guān)入庫的詳細(xì)信息,包括入庫數(shù)量、入庫日期以及圖書、員工、供應(yīng)商三方的編號,以便查詢。出庫信息表主要用于記錄有關(guān)出庫的詳細(xì)信息,包括出庫數(shù)量、出庫日期以及圖書、員工的編號。出庫信息表和入庫信息表一樣,其實(shí)它們都屬于聯(lián)系類型,系統(tǒng)通過這兩個表可以聯(lián)接上其它的表為用戶提供多種條件的聯(lián)接查詢。值得提出的一點(diǎn)是入庫記錄和出庫記錄的添加不僅僅是單表操作,由于它們都與庫存記錄相聯(lián)系,所以,無論您是添中入庫記錄還是添加出庫記錄,都必須同時修改庫存記錄,以保持?jǐn)?shù)據(jù)的一致性,否則將引發(fā)系統(tǒng)出錯而這些我都讓其在系統(tǒng)中自動完成。無論您是添加入庫記錄,還是添加出庫記錄,系統(tǒng)都將自動修改庫存中圖書的數(shù)量,而且,在您出庫的數(shù)量大于庫存數(shù)量時,系統(tǒng)還會自動提示錯誤,這樣就可以防止一定錯誤的發(fā)生。
在入庫信息表和出庫信息表中我還定義了幾個外鍵,它提供了一種表示幾個關(guān)系聯(lián)系的方法。比如,系統(tǒng)中通過在入庫信息表中定義的外鍵 BookID、EmployeeID和ShopkeeperID可以將庫存信息表、員工信息表和供應(yīng)商信息表聯(lián)系在一起,從而方便地實(shí)現(xiàn)聯(lián)接查詢,而且,引入外鍵的定義是實(shí)體完整性約束的一個主要方面。
Key 表(密碼信息表)
字段名稱 數(shù)據(jù)類型 說明
K KeyName 文本 用戶姓名
KeyNo 文本 用戶密碼
圖4.18 密碼信息表
密碼信息表主要用于記錄所有的用戶名和用戶密碼。它是在用戶登陸時用來確定用戶和密碼的正確性,以防止非法用戶登陸。
通過以上設(shè)計已經(jīng)完成了系統(tǒng)的概要設(shè)計,當(dāng)我們有了系統(tǒng)的功能模塊圖和數(shù)據(jù)庫之后,就需要著手去實(shí)現(xiàn)每一個模塊,為每一個功能設(shè)計程序流程圖,這也就是系統(tǒng)的詳細(xì)設(shè)計。
§4.3 系統(tǒng)詳細(xì)設(shè)計
在前面的概要設(shè)計中,已將系統(tǒng)劃分為多個模塊,并將它們按照一定的原則組裝起來,同時確定了每個功能及模塊之間的外部接口?,F(xiàn)在所要做的就是確定每個模塊具體執(zhí)行過程,也可以說是“過程設(shè)計”。
在處理過程設(shè)計時我采用的是結(jié)構(gòu)化程序設(shè)計(簡稱SP)方法。需要指出的是系統(tǒng)的詳細(xì)設(shè)計并不是指具體的編程序,而是將概要設(shè)計階段產(chǎn)生的系統(tǒng)功能模塊圖細(xì)化成很容易產(chǎn)生程序的圖紙。因此詳細(xì)設(shè)計的結(jié)果基本決定了最終程序的質(zhì)量。為軟件的質(zhì)量,延長軟件的生存期,軟件的可測試性、可維護(hù)性提供重要的保障。詳細(xì)設(shè)計的目標(biāo)不僅是邏輯上正確地實(shí)現(xiàn)每個模塊的功能,還應(yīng)使設(shè)計出的處理過程清晰易讀。
由前一階段產(chǎn)生的系統(tǒng)功能模塊圖,我為系統(tǒng)的主要部分設(shè)計了如下程序流程圖:通過以上步驟,基本上完成了對整個系統(tǒng)的總體設(shè)計,接下來所要做的就是軟件的編碼工作。系統(tǒng)總體設(shè)計的好壞直接影響著下一步工作,只有在這一階段設(shè)計出好的模塊圖和程序流程圖,才能更有利于編碼,產(chǎn)生好的軟件系統(tǒng)。
第五章 系統(tǒng)應(yīng)用程序設(shè)計
§5.1 系統(tǒng)窗體模塊組成
§5.2 數(shù)據(jù)模塊窗體的設(shè)置
在編寫數(shù)據(jù)庫應(yīng)用程序時,經(jīng)常要遇到這樣的情況,即好多組件、窗體同時訪問相同的數(shù)據(jù)源,如果為每一個組件或者窗體都設(shè)置一個數(shù)據(jù)源將是十分耗時的工件,而且要保證這些數(shù)據(jù)源的確是相同的也需花一番功夫。那么,能不能將這些數(shù)據(jù)源集中管理,最好是做成一個統(tǒng)一的模塊,需要時就將該模塊引入而不必直接操作數(shù)據(jù)源本身呢?數(shù)據(jù)模塊(DataModule)是解決這個問題最好的答案。簡單說來,數(shù)據(jù)模塊是用來集中管理數(shù)據(jù)源的一個窗體,該窗體可被需要的地方隨時引入。
圖5.2給出了本程序的數(shù)據(jù)模塊(datamoduleform)窗體圖,除報表窗體外所有的數(shù)據(jù)存取組件和數(shù)據(jù)源組件都在此數(shù)據(jù)模塊中進(jìn)行了定義。值得一提的是,設(shè)置了數(shù)據(jù)庫Database組件,該組件引入了系統(tǒng)所需的唯一的數(shù)據(jù)庫tsxs,Database組件的DatabaseName屬性設(shè)置為tsckgl。tsxs數(shù)據(jù)庫已在ODBC配置程序中進(jìn)行了設(shè)置。其他的數(shù)據(jù)存取組件都是基于此數(shù)據(jù)庫組件創(chuàng)建的,這樣做的好處是,當(dāng)數(shù)據(jù)庫的別名或者其他信息改變之后,只需修改Tdatabase組件的AliasName屬性即可。
另外,在本系統(tǒng)的數(shù)據(jù)模塊窗體圖中,我大多采用的AODQuery組件而沒有采用BDE組,這主要是基于對ADO組件的了解。在Delphi的學(xué)習(xí)中我對ADO組件了解的更加清楚,使用也較BDE更為熟練,而且,ADO組件的功能也較BDE更為強(qiáng)大,所以在這里大多采用ADO組件來進(jìn)行數(shù)據(jù)庫聯(lián)接。同時我也使用了BDE組件中的Table,因?yàn)樵谀承r候BDE有著其自身特有的優(yōu)越性。 主窗體功能模塊的實(shí)現(xiàn)
file://主窗體程序代碼
public
file://在程序的起始部分,定義快捷按鈕點(diǎn)擊事件
Procedure Popup1Handler(Sender:Tobject);
Procedure Popup2Handler(Sender:TObject);
**********************************************************************
procedure Tmainform.Popup1Handler(Sender: TObject);
begin
file://快捷按鈕1(點(diǎn)“按出版社分類”按鈕產(chǎn)生)的點(diǎn)擊事件
with datamoduleform.MainQuery do
begin
file://打開數(shù)據(jù)模塊窗體的MainQuery,對BookRecord表進(jìn)行操作
close;
file://關(guān)閉MainQuery
SQL.Clear;
file://清除SQL屬性中的SQL命令語句
SQL.Add(‘select * from BookRecord where Publisher=:Pub‘); file://添加新的SQL語句
Parameters.ParamByName(‘Pub‘).Value:=(Sender as TMenuItem).Caption;
open;
file://重新打開MainQuery
end;
end;
**********************************************************************
procedure Tmainform.SpeedButton1Click(Sender: TObject);
Var s1,s2,s3,s4,s5 :String;
file://設(shè)立5個變量以方便實(shí)現(xiàn)模糊查詢
begin
file://主窗口庫存查詢按鈕事件
with datamoduleform.MainQuery do
begin
close;
SQL.Clear;
SQL.Add(‘select * from BookRecord‘);
SQL.Add(‘where BookID Like :BookID and BookName Like :Name and Author Like :Author and Publisher Like :pub and BookType Like :BookType‘);
file://使用Like語句來實(shí)現(xiàn)模糊查詢
if Edit1.Text‘‘ then s1:=‘%‘+Edit1.Text+‘%‘ else s1:=‘%‘;
Parameters.ParamByName(‘BookID‘).Value:=s1;
file://給變量s1賦值
if Edit2.Text‘‘ then s2:=‘%‘+Edit2.Text+‘%‘ else s2:=‘%‘;
Parameters.ParamByName(‘Name‘).Value:=s2;
file://給變量s2賦值
if Edit3.Text‘‘ then s3:=‘%‘+Edit3.Text+‘%‘ else s3:=‘%‘;
Parameters.ParamByName(‘Author‘).Value:=s3;
file://給變量s2賦值
if Edit4.Text‘‘ then s4:=‘%‘+Edit4.Text+‘%‘ else s4:=‘%‘;
Parameters.ParamByName(‘Pub‘).Value:=s4;
file://給變量s2賦值
if Edit5.Text ‘‘ then s5:=‘%‘+Edit5.Text+‘%‘ else s5:=‘%‘;
Parameters.ParamByName(‘BookType‘).Value:=s5;
file://給變量s2賦值
open;
if FieldValues[‘BookID‘]=NULL
file://判斷是否找到記錄
then begin
Messagedlg(‘沒有找到你所需要的記錄!‘,mtInformation,[mbOK],0);
Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit4.Text:=‘‘;Edit5.Text:=‘‘;
close;
SQL.Clear;
SQL.Add(‘select * from BookRecord‘);
file://這里相當(dāng)于一個刷新功能
open;
end;end;
end;
**********************************************************************
procedure Tmainform.SpeedButton3Click(Sender: TObject);
begin
file://庫存表刷新按鈕事件
with datamoduleform.MainQuery do
begin
close;
SQL.Clear;
SQL.Add(‘select * from BookRecord‘);
open;
end;
end;
**********************************************************************
procedure Tmainform.SpeedButton11Click(Sender: TObject);
var PopupItem:TMenuItem;
begin
file://自動生成快捷按鈕1的內(nèi)容
with datamoduleform.BookQuery do
begin
file://從數(shù)據(jù)庫中選擇出版社類型
close;
SQL.Clear;
SQL.Add(‘select distinct Publisher from BookRecord‘);
open;
PopupMenu1:=TPopupMenu.Create(Self); file://自動生成快捷菜單
PopupMenu1.AutoHotkeys:=maManual;
file://自定義熱鍵
while Not Eof do
begin
file://根據(jù)出版社內(nèi)容生成菜單子項(xiàng)
PopupItem:=TMenuItem.Create(Self);
PopupItem.Caption:=FieldByName(‘Publisher‘).AsString;
PopupMenu1.Items.Add(PopupItem);
PopupItem.onClick:=Popup1Handler;
file://確定菜單子項(xiàng)的點(diǎn)擊事件
Next;
end; end;
PopupMenu1.Popup(384,67);
file://在指定位置顯示快捷菜單1
end;
**********************************************************************
procedure Tmainform.FormActivate(Sender: TObject);
begin
file://系統(tǒng)初始化,在進(jìn)入mainform時自動添加數(shù)據(jù)源
mainform.DBGrid1.DataSource:=datamoduleform.MainSource;
mainform.DBNavigator1.DataSource:=datamoduleform.MainSource;
mainform.DBGrid2.DataSource:=datamoduleform.EmpSource;
mainform.DBNavigator2.DataSource:=datamoduleform.EmpSource;
mainform.DBGrid3.DataSource:=datamoduleform.ShopSource;
mainform.DBNavigator3.DataSource:=datamoduleform.ShopSource;
mainform.DBGrid4.DataSource:=datamoduleform.InSource;
mainform.DBNavigator4.DataSource:=datamoduleform.InSource;
mainform.DBGrid5.DataSource:=datamoduleform.OutSource;
mainform.DBNavigator5.DataSource:=datamoduleform.OutSource;
end;
**********************************************************************
procedure Tmainform.FormCreate(Sender: TObject);
begin
file://系統(tǒng)初始化,定義界面大小,以適應(yīng)不同分辯率
Width:=800;Height:=600;
end;
**********************************************************************
procedure Tmainform.Timer1Timer(Sender: TObject);
begin
file://在狀態(tài)欄顯示時間
StatusBar1.Panels[2].Text:=DateToStr(Date);
StatusBar1.Panels[4].Text:=TimeToStr(Time);
end;
§5.4 入庫、出庫窗體模塊的實(shí)現(xiàn)
圖5.4 系統(tǒng)入庫管理窗體
圖5.5 系統(tǒng)出庫管理窗體
procedure Tinoutform.SpeedButton4Click(Sender: TObject);
begin
file://入庫管理查找按鈕事件
with datamoduleform.BookQuery do
file://入庫查詢處理
begin
close;
SQL.Clear;
SQL.Add(‘select * from BookRecord where BookID=:BookID‘);
Parameters.ParamByName(‘BookID‘).Value:=Edit13.Text;
open;
if FieldValues[‘BookID‘]NULL
then
begin
Edit1.Text:=‘‘;
Edit1.ReadOnly:=true;Edit1.Color:=clMenu;
Edit6.Text:=FieldValues[‘BookName‘]; file://顯示圖書名
Edit6.ReadOnly:=true;Edit6.Color:=clMenu; file://設(shè)置顯示框不可更改屬性
Edit7.Text:=FieldValues[‘Author‘];
Edit7.ReadOnly:=true;Edit7.Color:=clMenu;
Edit8.Text:=FieldValues[‘Publisher‘];
Edit8.ReadOnly:=true;Edit8.Color:=clMenu;
Edit9.Text:=FieldValues[‘PubDate‘];
Edit9.ReadOnly:=true;Edit9.Color:=clMenu;
Edit10.Text:=FieldValues[‘Price‘];
Edit10.ReadOnly:=true;Edit10.Color:=clMenu;
Edit11.Text:=FieldValues[‘BookType‘];
Edit11.ReadOnly:=true;Edit11.Color:=clMenu;
Edit12.Text:=FieldValues[‘Number1‘];
Edit12.ReadOnly:=true;Edit12.Color:=clMenu;
If FieldValues[‘Addation‘]NULL
then Edit25.Text:=FieldValues[‘Addation‘]
else Edit25.Text:=‘‘;
Edit25.ReadOnly:=true;Edit25.Color:=clMenu;
end
else
begin
file://在沒有查找到的情況下,清空所有顯示框
Edit1.ReadOnly:=false;Edit1.Text:=‘‘;Edit1.Color:=clMenu;
Edit6.ReadOnly:=false;Edit6.Text:=‘‘;Edit6.Color:=clMenu;
Edit7.ReadOnly:=false;Edit7.Text:=‘‘;Edit7.Color:=clMenu;
Edit8.ReadOnly:=false;Edit8.Text:=‘‘;Edit8.Color:=clMenu;
Edit9.ReadOnly:=false;Edit9.Text:=‘‘;Edit9.Color:=clMenu;
Edit10.ReadOnly:=false;Edit10.Text:=‘‘;Edit10.Color:=clMenu;
Edit11.ReadOnly:=false;Edit11.Text:=‘‘;Edit11.Color:=clMenu;
Edit12.ReadOnly:=false;Edit12.Text:=‘‘;Edit12.Color:=clMenu;
Edit25.ReadOnly:=false;Edit25.Text:=‘‘;Edit25.Color:=clMenu;
MessageDlg(‘沒有找到你所需要的記錄!‘,mtInformation,[mbOK],0);
Edit13.Text:=‘‘;Edit13.SetFocus;
end;
end;
with datamoduleform.InQuery do file://自動入庫編號的獲取
begin
close;
SQL.Clear;
SQL.Add(‘select * from InRecord where InID>=All(select InID from InRecord)‘);
open;
file://找到入庫編號中最大的一個
Edit26.ReadOnly:=false;
Edit26.Text:=FieldValues[‘InID‘]+1; file://最大的入庫編號加1形成新的入庫編號
Edit26.ReadOnly:=true;Edit26.Color:=clMenu; file://設(shè)置編號的不可更改性
end;
end;
**********************************************************************
procedure Tinoutform.SpeedButton1Click(Sender: TObject);
var s:integer;
begin
file://入庫管理添加按鈕事件
if Edit1.TextNULL
then MessageDlg(‘請輸入完整的入庫信息和圖書信息,然后單擊確定按鈕。‘,
mtInformation,[mbok],0)
else begin
if (Edit2.Text=‘‘) or (Edit3.Text=‘‘) or (Edit4.Text=‘‘) or (Edit5.Text=‘‘)
then begin
MessageDlg(‘請輸入完整的入庫信息!‘,mtInformation,[mbok],0);
Edit2.SetFocus;
end
else begin
with datamoduleform.InQuery do
file://將找到的圖書信息顯示
begin
close;
SQL.Clear;
SQL.Add(‘insert into InRecord values(:InID,:BookID,:EmpID,:ShopID,
:Number,:InDate)‘); file://向入庫信息表中插入記錄
Parameters.ParamByName(‘InID‘).Value:=Edit26.Text; file://向Edit框取值
Parameters.ParamByName(‘BookID‘).Value:=Edit13.Text;
Parameters.ParamByName(‘EmpID‘).Value:=Edit2.Text;
Parameters.ParamByName(‘ShopID‘).Value:=Edit3.Text;
Parameters.ParamByName(‘Number‘).Value:=Edit4.Text;
Parameters.ParamByName(‘InDate‘).Value:=Edit5.Text;
execSQL;
end;
Edit12.ReadOnly:=False;
S:=StrToInt(Edit12.Text)+StrToInt(Edit4.Text); file://計算入庫后庫存圖書數(shù)量
Edit12.Text:=IntToStr(s);
file://將修改后的庫存圖書數(shù)量顯示
Edit12.ReadOnly:=true;
with datamoduleform.BookQuery do
file://修改庫存記錄中圖書數(shù)量
begin
close;
SQL.Clear;
SQL.Add(‘update BookRecord set Number1=:Number where
BookID=:BookID‘);
Parameters.ParamByName(‘Number‘).Value:=s;
Parameters.ParamByName(‘BookID‘).Value:=Edit13.Text;
execSQL;
file://提交SQL語句
MessageDlg(‘記錄已成功添加!‘,mtInformation,[mbOK],0);
Edit13.SetFocus;
end;
end;
end;
end;
**********************************************************************
procedure Tinoutform.SpeedButton2Click(Sender: TObject);
begin
file://入庫管理確定按鈕事件
if (Edit2.Text=‘‘) or (Edit3.Text=‘‘) or (Edit4.Text=‘‘) or (Edit5.Text=‘‘)
or (Edit6.Text=‘‘) or (Edit7.Text=‘‘) or (Edit8.Text=‘‘) or (Edit9.Text=‘‘)
or (Edit10.Text=‘‘) or (Edit11.Text=‘‘) or (Edit25.Text=‘‘)
then begin
file://判斷輸入信息的完整性
MessageDlg(‘請輸入所需的全部入庫信息!‘,mtInformation,[mbok],0);
Edit2.SetFocus;
end
else
begin
with datamoduleform.InQuery do
file://入庫信息添加
begin
close;
SQL.Clear;
SQL.Add(‘insert into InRecord values(:InID,:BookID,:EmpID,:ShopID,
:Number,:InDate)‘);
file://向入庫信息表中插入記錄
Parameters.ParamByName(‘InID‘).Value:=Edit26.Text;
Parameters.ParamByName(‘BookID‘).Value:=Edit1.Text;
Parameters.ParamByName(‘EmpID‘).Value:=Edit2.Text;
Parameters.ParamByName(‘ShopID‘).Value:=Edit3.Text;
Parameters.ParamByName(‘Number‘).Value:=Edit4.Text;
Parameters.ParamByName(‘InDate‘).Value:=Edit5.Text;
execSQL;
end;
with datamoduleform.BookQuery do
begin
close;
SQL.Clear;
file://在完成入庫信息的添加后,修改庫存記錄
SQL.Add(‘insert into BookRecord values(:BookID,:BookName,:Author,
:Publisher,:PubDate,:Price,:BookType,:Number,:Addration)‘);
Parameters.ParamByName(‘BookID‘).Value:=Edit1.Text;
Parameters.ParamByName(‘BookName‘).Value:=Edit6.Text;
Parameters.ParamByName(‘Author‘).Value:=Edit7.Text;
Parameters.ParamByName(‘Publisher‘).Value:=Edit8.Text;
Parameters.ParamByName(‘PubDate‘).Value:=Edit9.Text;
Parameters.ParamByName(‘Price‘).Value:=Edit10.Text;
Parameters.ParamByName(‘BookType‘).Value:=Edit11.Text;
Parameters.ParamByName(‘Number‘).Value:=Edit4.Text;
Parameters.ParamByName(‘Addration‘).Value:=Edit25.Text;
execSQL;
end;
MessageDlg(‘記錄添加成功!‘,mtInformation,[mbok],0);
end;
end;
**********************************************************************
procedure Tinoutform.SpeedButton11Click(Sender: TObject);
begin
file://新書入庫按鈕事件
Edit13.Text:=‘‘;Edit13.Color:=clMenu;
with datamoduleform.InQuery do file://自動入庫編號的獲取
begin
close;
SQL.Clear;
SQL.Add(‘select * from InRecord where InID>=All(select InID from InRecord)‘);
open;
Edit26.Text:=FieldValues[‘InID‘]+1;
Edit26.ReadOnly:=true;Edit26.Color:=clMenu;
end;
with datamoduleform.BookQuery do
file://自動圖書編號的獲取
begin
close;
SQL.Clear;
SQL.Add(‘select * from BookRecord where BookID>=All(select BookID from BookRecord)‘);
file://找到庫存圖書編號中最大的一個
open;
Edit1.ReadOnly:=false;
Edit1.Text:=FieldValues[‘BookID‘]+1; file://顯示自動生成的圖書編號
Edit1.ReadOnly:=true;Edit1.Color:=clMenu;
end;
Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit4.Text:=‘‘;Edit5.Text:=‘‘;
Edit6.ReadOnly:=false;Edit6.Text:=‘‘;Edit6.Color:=clWindow;
Edit7.ReadOnly:=false;Edit7.Text:=‘‘;Edit7.Color:=clWindow;
Edit8.ReadOnly:=false;Edit8.Text:=‘‘;Edit8.Color:=clWindow;
Edit9.ReadOnly:=false;Edit9.Text:=‘‘;Edit9.Color:=clWindow;
Edit10.ReadOnly:=false;Edit10.Text:=‘‘;Edit10.Color:=clWindow;
Edit11.ReadOnly:=false;Edit11.Text:=‘‘;Edit11.Color:=clWindow;
Edit12.ReadOnly:=false;Edit12.Text:=‘‘;Edit12.Color:=clMenu;
Edit25.ReadOnly:=false;Edit25.Text:=‘‘;Edit25.Color:=clWindow;
end;
procedure Tinoutform.SpeedButton22Click(Sender: TObject);
var s:integer;
begin
file://出庫管理確定按鈕事件
if (Edit24.Text=‘‘) or (Edit27.Text=‘‘) or (Edit28.Text=‘‘)
then begin
MessageDlg(‘請輸入完整的出庫信息!‘,mtInformation,[mbok],0);
Edit24.SetFocus;
end
else begin
if Edit27.Text>Edit21.Text
file://檢查出庫數(shù)量是否小于庫存數(shù)量
then begin
MessageDlg(‘庫存中的圖書數(shù)量不夠!‘,mtInformation,[mbok],0);
Edit27.Text:=‘‘;Edit27.SetFocus;
end
else begin
with datamoduleform.OutQuery do
begin
close;
SQL.Clear;
SQL.Add(‘insert into OutRecord values(:OutID,:BookID,:EmpID,
:Number,:OutTime)‘);
file://添加出庫記錄
Parameters.ParamByName(‘OutID‘).Value:=Edit23.Text;
Parameters.ParamByName(‘BookID‘).Value:=Edit14.Text;
Parameters.ParamByName(‘EmpID‘).Value:=Edit24.Text;
Parameters.ParamByName(‘Number‘).Value:=Edit27.Text;
Parameters.ParamByName(‘OutTime‘).Value:=Edit28.Text;
execSQL;
end;
Edit21.ReadOnly:=False;
s:=StrToInt(Edit21.Text)-StrToInt(Edit27.Text); file://計算出庫后庫存圖書數(shù)量
Edit21.Text:=IntToStr(s);
file://顯示出庫后庫存圖書數(shù)量
Edit21.ReadOnly:=True;
with datamoduleform.BookQuery do
begin
file://修改庫存圖書數(shù)量
close;
SQL.Clear;
SQL.Add(‘update BookRecord set Number1=:Number where BookID=:BookID‘);
Parameters.ParamByName(‘Number‘).Value:=s;
Parameters.ParamByName(‘BookID‘).Value:=Edit14.Text;
execSQL;
end;
MessageDlg(‘出庫記錄添加成功!‘,mtInformation,[mbok],0);
Edit14.Text:=‘‘;Edit14.SetFocus;
end;
end;
end;
§5.5 查詢功能的實(shí)現(xiàn)
查詢功能包括員工信息查詢,供應(yīng)商信息查詢,入庫信息查詢和出庫信息查詢。由于每一個功能的實(shí)現(xiàn)都差不太多,而且其窗體也差不太多,所以在這里只給出員工信息查詢窗體及其源代碼。
圖5.6 員工信息查詢窗體
procedure Tfindempform.SpeedButton1Click(Sender: TObject);
Var s1,s2,s3 :String;
begin
file://員工記錄查詢窗體查找按鈕事件
with datamoduleform.EmpQuery do
begin
close;
SQL.Clear;
SQL.Add(‘select * from Employee‘);
SQL.Add(‘where EmployeeID Like :EmpID and EmployeeName Like :Name and Grade Like :Grade‘);
file://實(shí)現(xiàn)模糊查詢功能
if Edit1.Text‘‘ then s1:=‘%‘+Edit1.Text+‘%‘ else s1:=‘%‘;
Parameters.ParamByName(‘EmpID‘).Value:=s1;
if Edit2.Text‘‘ then s2:=‘%‘+Edit2.Text+‘%‘ else s2:=‘%‘;
Parameters.ParamByName(‘Name‘).Value:=s2;
if Edit3.Text‘‘ then s3:=‘%‘+Edit3.Text+‘%‘ else s3:=‘%‘;
Parameters.ParamByName(‘Grade‘).Value:=s3;
open;
if FieldValues[‘EmployeeID‘]NULL
then findempform.Close
file://在找到記錄的情況下關(guān)閉查找窗口
else
begin
MessageDlg(‘沒有找到你所需要的記錄!‘,mtInformation,[mbOK],0);
Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit1.SetFocus;
close; SQL.Clear;
SQL.Add(‘select * from Employee‘);
file://刷新員工信息窗口
open;
end; end;
end;
§5.6 系統(tǒng)登陸窗體模塊的實(shí)現(xiàn)
由于系統(tǒng)登陸窗體中有一幅彩圖,在這里不便給出,而只給出了系統(tǒng)的實(shí)現(xiàn)。
var keyname: string; file://定義了一個全局變量,在key2中有調(diào)用
procedure Tkeyform.SpeedButton1Click(Sender: TObject);
var s:string;
file://登陸窗口登陸按鈕事件
begin
if (Edit1.Text=‘‘) then begin
MessageDlg(‘清輸入登陸姓名和密碼!‘,mtInformation,[mbok],0);
Edit1.SetFocus;
end
else begin
datamoduleform.KeyTable.Active:=true;
if not datamoduleform.KeyTable.Locate(‘KeyName‘,Edit1.Text,[])
file://判斷登陸名是否存在
then begin
MessageDlg(‘登陸名錯誤,請重新輸入!‘,mtInformation,[mbok],0);
Edit1.Text:=‘‘; Edit1.SetFocus;
end
else begin
with datamoduleform.KeyQuery do
begin
close; SQL.Clear;
SQL.Add(‘select * from Key where KeyName=:KeyName‘);
Parameters.ParamByName(‘KeyName‘).Value:=Edit1.Text;
open;
s:=FieldValues[‘KeyNo‘];
end;
if sEdit2.Text file://判斷登陸密碼是否正確
then begin
MessageDlg(‘登陸密碼錯誤,請重新輸入!‘,mtInformation,[mbok],0);
Edit2.Text:=‘‘; Edit2.SetFocus;
end
else begin
keyname:=Edit1.Text;
keyform.Hide;
mainform.Show;mainform.WindowState:=wsMaximized;
end; end; end;
end;
§5.7 用戶管理功能的實(shí)現(xiàn)
5.7.1 用戶管理主窗體
圖5.7 用戶管理主窗體
5.7.2 密碼修改窗體模塊的實(shí)現(xiàn)
圖5.8 密碼修改窗體
procedure Tkey2form.SpeedButton1Click(Sender: TObject);
begin
file://密碼修改窗口修改按鈕事件
if (Edit1.Text=‘‘)or(Edit2.Text=‘‘)or(Edit3.Text=‘‘)
then begin
MessageDlg(‘請輸入完整的信息。‘,mtInformation,[mbok],0);
Edit1.SetFocus;
end
else begin
if Not datamoduleform.KeyTable.Locate(‘KeyNo‘,Edit1.Text,[])
then begin
MessageDlg(‘原密碼輸入錯誤,不能修改新密碼!‘,mtInformation,[mbok],0);
Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit1.SetFocus;
end
else begin
if Edit2.TextEdit3.Text
then begin
MessageDlg(‘兩次密碼輸入不同,請重新輸入新密碼!‘,mtInformation,[mbok],0);
Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit2.SetFocus;
end
else begin
file://在數(shù)據(jù)庫中修改密碼
with datamoduleform.KeyQuery do
begin
close; SQL.Clear;
SQL.Add(‘update key set KeyNo=:KeyNo where KeyName=:KeyName‘);
Parameters.ParamByName(‘KeyName‘).Value:=keyname;
Parameters.ParamByName(‘KeyNo‘).Value:=Edit2.Text;
execSQL;
MessageDlg(‘密碼修改成功!‘,mtInformation,[mbok],0);
key2form.Close;
end; end; end; end;
end;
5.7.3 用戶注冊窗體模塊的實(shí)現(xiàn)
圖5.9 用戶注冊窗體
procedure Tkey3form.SpeedButton1Click(Sender: TObject);
begin
file://用戶注刪窗口注刪按鈕事件
if (Edit1.Text=‘‘)or(Edit2.Text=‘‘)or(Edit3.Text=‘‘)
then begin
MessageDlg(‘請輸入完整的信息!‘,mtInformation,[mbok],0);
Edit1.SetFocus;
end
else begin
if datamoduleform.KeyTable.Locate(‘KeyName‘,Edit1.Text,[])
file://判斷用戶名是否存在,系統(tǒng)不允許用戶名重復(fù)
then begin
MessageDlg(‘用戶名已存在,請輸入新的用戶名和密碼!‘,
mtInformation,[mbok],0);
Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit1.SetFocus;
end
else begin
if Edit2.TextEdit3.Text
then begin
MessageDlg(‘您輸入的兩個密碼不相同,請重新輸入!‘,mtInformation,[mbok],0);
Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit2.SetFocus;
end
else begin
with datamoduleform.KeyQuery do
file://在數(shù)據(jù)庫中添加該用戶
begin
close;
SQL.Clear;
SQL.Add(‘insert into Key values(:KeyName,:KeyNo)‘);
Parameters.ParamByName(‘KeyName‘).Value:=Edit1.Text;
Parameters.ParamByName(‘KeyNo‘).Value:=Edit2.Text;
execSQL;
end;
MessageDlg(‘新用戶添加成功,您可以繼續(xù)添加用戶,或按“取消”退出?!?,mtInformation,[mbok],0);
Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit3.Text:=‘‘;Edit1.SetFocus;
end; end; end;
end;
5.7.4 用戶注銷窗體模塊的實(shí)現(xiàn)
圖5.10 用戶注銷窗體
procedure Tkey4form.SpeedButton1Click(Sender: TObject);
var s:string;
begin
file://用戶注銷窗口注銷按鈕事件
if (Edit1.Text=‘‘)or(Edit2.Text=‘‘)
then MessageDlg(‘請輸入完整的信息!‘,mtInformation,[mbok],0)
else begin
if Not datamoduleform.KeyTable.Locate(‘KeyName‘,Edit1.Text,[])
file://判斷用戶名是否存在,用戶名必須存在,才可以刪除
then begin
MessageDlg(‘您所輸入的用戶名不存在,請重新輸入或按“取消”退出?!?,
mtInformation,[mbok],0);
Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit1.SetFocus;
end
else begin
with datamoduleform.KeyQuery do
begin
close;
SQL.Clear;
SQL.Add(‘select * from Key where KeyName=:KeyName‘);
Parameters.ParamByName(‘KeyName‘).Value:=Edit1.Text;
open;
s:=FieldValues[‘KeyNo‘];
end;
if sEdit2.Text file://判斷該用戶名下的密碼是否正確
then begin
MessageDlg(‘您所輸入的密碼不正確,請重新輸入或按“取消”退出。‘,
mtInformation,[mbok],0);
Edit2.Text:=‘‘;Edit2.SetFocus;
end
else begin
file://從數(shù)據(jù)庫中刪除該用戶
with datamoduleform.KeyQuery do
begin
close;
SQL.Clear;
SQL.Add(‘delete from Key where KeyName=:KeyName‘);
Parameters.ParamByName(‘KeyName‘).Value:=Edit1.Text;
execSQL;
end;
MessageDlg(‘用戶已成功刪除,您可以繼續(xù)刪除用戶,或按“取消”退出?!?/p>
mtInformation,[mbok],0);
Edit1.Text:=‘‘;Edit2.Text:=‘‘;Edit1.SetFocus;
end; end; end;
end;
結(jié)束語
本系統(tǒng)是一個面向小型圖書企業(yè),具有一定實(shí)用性的數(shù)據(jù)庫信息管理系統(tǒng)。它主要完成對圖書倉庫的一系列管理,包括入庫、出庫、庫存以及員工和供應(yīng)商信息管理。本系統(tǒng)采用當(dāng)前流行的面向?qū)ο蟮拈_發(fā)工具—Delphi來完成整個系統(tǒng)的設(shè)計,在數(shù)據(jù)庫的設(shè)計上利用了Access的便利性和實(shí)用性。
本系統(tǒng)具有相當(dāng)?shù)膶?shí)用功能。在查詢方面,系統(tǒng)實(shí)現(xiàn)了多條件任意字段的模糊查詢,同時在分類查詢上實(shí)現(xiàn)了動態(tài)生成,系統(tǒng)可以自動識別用戶不同的輸入。在圖書入庫、出庫和庫存三者之間建立了良好的鏈接關(guān)系,某一部分地修改均會自動引發(fā)系統(tǒng)對與其相關(guān)的部分進(jìn)行連鎖修改。在用戶管理方面,系統(tǒng)較好地實(shí)現(xiàn)了用戶注冊,用戶注銷和密碼修改等各項(xiàng)功能。
系統(tǒng)在設(shè)計過程中不可避免地遇到了各種各樣的問題,由于整個系統(tǒng)完全都是由個人設(shè)計的,有關(guān)Delphi許多細(xì)節(jié)問題都要靠自己去摸索,加之本人水平有限,并沒有完全地理解Delphi的強(qiáng)大功能,而且還存在著許多不足之處。如:
受開發(fā)條件和開發(fā)時間的限制,本系統(tǒng)只利用了本地數(shù)據(jù)庫Access,它同應(yīng)用程序處于同一系統(tǒng)中,能存儲的數(shù)據(jù)量也有一定限制,并沒有發(fā)揮出Delphi其數(shù)據(jù)庫方面的優(yōu)勢;
報表打印功能尚不夠全面完善,不能實(shí)現(xiàn)動態(tài)報表;
在一些數(shù)據(jù)輸入時沒有及時的進(jìn)行數(shù)據(jù)格式校驗(yàn),不能保證數(shù)據(jù)輸入的絕對正確性。
由于時間關(guān)系,系統(tǒng)功能實(shí)現(xiàn)不夠完善,使用不是很方便,比如,沒有實(shí)現(xiàn)多條記錄的連鎖刪除和添加以及數(shù)據(jù)的導(dǎo)入功能。
這些都是需要完善的地方,該系統(tǒng)離實(shí)際使用也還有相當(dāng)?shù)木嚯x,需要我進(jìn)行不斷地補(bǔ)充和完善。
通過本次畢業(yè)設(shè)計我學(xué)到了不少新的東西,也發(fā)現(xiàn)了大量的問題,有些在設(shè)計過程中已經(jīng)解決,有些還有待今后慢慢學(xué)習(xí)。只要學(xué)習(xí)就會有更多的問題,有更多的難點(diǎn),但也會有更多的收獲。
考 文 獻(xiàn)
[1] 鄭榮貴、黃平、谷會東,Delphi 6.0數(shù)據(jù)庫開發(fā)與應(yīng)用,中科多媒體電子出版社,2002
[2] 伍俊良,Delphi 6控件應(yīng)用實(shí)例教程,北京希望電子出版社,2002
[3] 盧國俊,Delphi 6數(shù)據(jù)庫開發(fā),電子工業(yè)出版社,2002
[4] 邊萌,Delphi 編程起步,機(jī)械工業(yè)出版社,2002