真人一对一直播,chinese极品人妻videos,青草社区,亚洲影院丰满少妇中文字幕无码

0
首頁 精品范文 畢業設計致謝語

畢業設計致謝語

時間:2023-05-29 18:24:56

開篇:寫作不僅是一種記錄,更是一種創造,它讓我們能夠捕捉那些稍縱即逝的靈感,將它們永久地定格在紙上。下面是小編精心整理的12篇畢業設計致謝語,希望這些內容能成為您創作過程中的良師益友,陪伴您不斷探索和進步。

畢業設計致謝語

第1篇

論文格式要求 一、基本要求 紙型:A4紙單面打印 字體:中文全部用宋體,英文全部用Times New Roman 頁面設置:頁邊距上2.54cm,下2.54cm,左3.0cm,右2.0cm 行距:多倍行距,1.3倍,段前段后都為“0行” 中文摘要:摘要單獨放一頁,“摘要”兩個字居中,三號加粗居中           內容字號與正文字號一致 關鍵詞:“關鍵詞”(小四號加粗居左)3~5個(小四號不加粗),之間用一空格隔開 (備注:英文摘要要求同中文摘要) 二、正文:正文另起一頁,一級標題小三號加粗居左,二級標題四號加粗居左,三級標題小四加粗居左,若有四級標題,同樣小四加粗居左。“致謝”另起一頁居中。另外,從摘要開始插入頁碼。 三、前言的要求:前言不單獨占一頁,后應緊跟正文其它內容。如果前言內容較多,“前言”前可加級標題1,并且居左,如果內容就一兩段話,可以不寫“1前言”等字,直接放一兩段話即可。 頁眉:1.5cm,論文題目(小五居中)     頁腳:1.75cm(頁碼五號居中) 四、目錄 “目錄”三號加粗居中,行距1.3倍,各級標題均采用小四號,不出現四級標題,摘要及一級標題需加粗,其余不要加粗。格式如下: 目 錄 摘要································································································· 1       1 前言······························································································ 1       1.1主要營養素及食物來源··································································· 1        1.1.1蛋白質······················································································ 1        1.1.2糖類························································································· 1 參考文獻·························································································· 1       致謝································································································· 1 五、參考文獻:另起一頁,“參考文獻”三號加粗居中 內容格式如下:M表示論著,J表示期刊 [1] 中國保健科學技術學會.各類人群營養指導[M].北京:中國食品出版社,1988. [2]高玉峰,劉艷榮,鄭紀寧.大學生十余年膳食結構變化[J].承德醫學院學報,2001,18(22):130. 六、致謝:另起一頁,“致謝”三號加粗居中 七、裝訂順序 1封皮2畢業設計任務書 3目錄 4摘要 5正文 6參考文獻7致謝 8評審表一、評審表二、答辯情況記錄、總成績評定表、                                               (空三行)     河南質量工程職業學院畢業設計(論文)  (三號不加粗居中)   黃酒的生產工藝及其穩定性的研究 (小一號加粗居中)                 系    別:食品化工系 專    業:食品營養與檢測 班    級:06級食檢3班 學生姓名:耿佳佳         指導教師:王霞                                                                                                 完成日期:2008-11-23             (留四行)         河南質量工程職業學院 畢業設計(論文)任務書   班 級 05食檢*班 宋體5號字 學生姓名 宋體5號字 指導教師 宋體5號字 設計(論文)題目 宋體小四號字 主要 研究 內容 宋體小四號字     主要技 術指標 或研究 目標   宋體小四號字       基本 要求 宋體小四號字(一般是學生寫畢業論文應達到什么樣的目的比如:) 1學會查閱文獻資料 2 掌握書寫論文的基本要求,能獨立完成論文寫作 3 能夠獨立進行研究工作 4 掌握基本的計算機排版   主要參 考資料 及文獻   宋體小四號字(如果參考文獻太多的話,這里只寫出重要的幾個)       河南質量工程職業學院畢業設計(論文)評審表一 (指導教師用) 班級: 宋體5號字           姓名:宋體5號字         學號:宋體5號字 評價內容 具    體    要    求 分值 評分 調查論證 能獨立查閱文獻和調研;能提出并較好地論述課題的實施方案;有收集、加工各種信息及獲取新知識的能力。 10   實驗方案設計與實驗技能 能正確設計實驗方案,獨立進行實驗工作。 20   分析與解決問題的能力 能運用所學知識和技能去發現與解決實際問題;能正確處理實驗數據;能對課題進行理論分析,得出有價值的結論。 20   工作量、 工作態度 按期圓滿完成規定的任務,工作量飽滿,難度較大;工作努力,遵守紀律;工作作風嚴謹務實。 20   質   量 綜述簡練完整,有見解;立論正確,論述充分,結構嚴謹合理;實驗正確,分析處理科學;文字通順,技術用語準確,符號統一,編號齊全,書寫工整規范,圖表完備、整潔、正確;論文結果有應用價值。 20   創   新 工作中有創新意識;對前人工作有改進或突破,或有獨特見解。 10   成    績 100     指導教師評語:                       指導教師簽名:                                                  年     月     日  

注:各專業可根據自己的具體情況,制定出適合本專業的畢業設計(論文)的具體要求和評分標準。   河南質量工程職業學院畢業設計(論文)評審表二 (評閱人用) 班級:宋體5號字            姓名: 宋體5號字          學號:宋體5號字 評價內容 具體要求 分值 評分 資料利用 查閱文獻有一定廣泛性;有綜合歸納資料的能力和自己的見解。 15   論文質量 綜述簡練完整,有見解;立論正確,論述充分,結果嚴謹合理;實驗正確,分析處理科學;文字通順,技術用語準確,符號統一,編號齊全,書寫工整規范,圖表完備、整潔、正確;論文結果有應用價值。 50   工作量、難度 工作量飽滿,難度較大。 25   創   新 對前人工作有改進或突破,或有獨特見解。 10   成   績 100     評閱人評語:                                                                                                                           評閱人簽名:                                年     月     日

注:各專業可根據自己的具體情況,制定出適合本專業的畢業設計(論文)的具體要求和評分標準。     河南質量工程職業學院 畢業設計(論文)答辯情況記錄 (答辯委員會或答辯小組用)   班級:宋體5號字           姓名:宋體5號字            學號:宋體5號字                                 答 辯 題 目 對學生回答問題的評語 正確 基本正確 經提示回答 不正確 未回答                                                                                                                                                                                                   答辯委員會(或小組)評語:               成績:                                   答辯負責人簽名:                                                                                            年     月     日  

  河南質量工程職業學院 畢業設計(論文)總成績評定表   班級 宋體5號字 姓名 宋體5號字 學號         宋體5號字 設計(論文)題目   宋體5號字   成 績  指導教師評分 評閱人評分 答辯評分 總成績             系畢業設計(論文)領導小組審核意見:                                                                                                                     小組組長簽名:   年    月    日  

注:畢業設計(論文)總成績中,指導教師評分占40%,評閱人評分占20%,答辯評分占40%。       展開閱讀全文

第2篇

為幫助廣大計算機專業畢業生實現畢業設計目標,保證畢業設計實踐環節工作的順利進行,現將各環節做如下提示,以幫助廣大首次從事畢業設計的畢業生對畢業設計的過程有1個大致的了解。

1、計算機專業實踐環節形式:

畢業設計

2、畢業設計實踐環節應注意的事項

1、“畢業設計”實踐環節在全部畢業學分中占有1定學分;

2、“畢業設計”實踐環節從起步到畢業答辯結束歷時至少4周以上;

3、“畢業設計”實踐環節包括兩部分內容:

① 完成“畢業設計”所開發的應用程序;

② 針對所開發的應用程序書寫“畢業設計”說明書(即論文);

3、畢業設計實踐環節應先完成的工作

在畢業設計實踐環節之前,應向有關主管設計工作的單位或老師上報如下材料:

①《畢業設計實踐環節安排意見》(包括領導小組名單,畢業班專業、級別、性質、工作計劃安排、實踐環節工作步驟,指導教師名單,學生分組名單).

②《畢業設計(論文)審批表》1式兩份(要求認真審核、填寫指導教師資格,包括職稱、從事專業、有何論著,每人指導學生不得超過1定人數,兼職(或業余)指導教師指導學生數根據情況酌減)。

4、關于“畢業設計”工作的過程步驟

1、“畢業設計”題目的選擇,選題時應遵循以下原則:

①選題必須符合計算機專業的綜合培養要求;

②應盡可能選擇工程性較強的課題,以保證有足夠的工程訓練;

③畢業設計工作要有1定的編程量要求,以保證有明確的工作成果;

④選題原則上1人1題,結合較大型任務的課題,每個學生必須有畢業設計的獨立子課題;

⑤選題應盡量結合本地、本單位的教學、科研、技術開發項目,在實際環境中進行。

總之選題要體現綜合性原則、實用性原則、先進性原則、量力性原則等

選題時要達到以下目標:

①選題與要求提高綜合運用專業知識分析和解決問題的能力;

②掌握文獻檢索、資料查詢的基本方法和獲取新知識的能力;

③掌握軟硬件或應用系統的設計開發能力;

④提高書面和口頭表達能力;

⑤提高協作配合工作的能力。

2、“畢業設計”題目審核

有關單位將畢業學生選擇的題目填寫在同1個“畢業設計(論文)審批表”中的“畢業設計安排表”相應欄目中,審核通過后方可開展下1步工作。

3、“畢業設計”應用程序開發實施(大致用時安排)

①需求分析階段(約1周時間完成)

②系統分析階段(約1周時間完成),同時完成畢業設計說明書前兩章資料整理工作。

③系統設計階段(約1周時間完成)

④代碼實現階段(約3周時間完成)同時完成畢業設計說明書第3章、第4章資料整理工作。

⑤系統調試階段(約2周時間完成),同時完成畢業設計說明書第5章資料整理工作。

⑥投入運行階段(約1周時間完成),同時完成畢業設計說明書中第6章資料整理工作。

⑦畢業設計說明書的整理定稿階段(約2周時間完成)

摘要及關鍵詞

Abstract and Keywords

目錄

正文

第1章 引言

1、本課題的研究意義

2、本論文的目的、內容及作者的主要貢獻

第2章 研究現狀及設計目標

1、相近研究課題的特點及優缺點分析

2、現行研究存在的問題及解決辦法

3、本課題要達到的設計目標

第3章 要解決的幾個關鍵問題

1、研究設計中要解決的問題

2、具體實現中采用的關鍵技術及復雜性分析

第4章 系統結構與模型

1、設計實現的策略和算法描述

2、編程模型及數據結構

第5章 系統實現技術

1、分模塊詳述系統各部分的實現方法

2、程序流程

第6章、性能測試與分析

1、測試實例(測試集)的研究與選擇

2、測試環境與測試條件

3、實例測試(表格與曲線)

4、性能分析

第7章 結束語

致謝

參考文獻

⑧完成畢業設計及畢業設計說明書的撰寫工作后定稿大多要以A4紙打印并裝訂成冊。

4、“畢業設計”的上報及內容的存儲方式

各位學生的設計成果要以指導教師所在的組為單位,把設計成果包括(論文、源程序、可執行程序、答辯稿等),以光盤或軟盤等形式上報給指導老師。然后指導教師以組為單位,以各位學生姓名建立文件夾,并把相應學生的畢業設計(包括:應用程序系統、畢業設計說明書和答辯時的幻燈片演講稿)保存其中,每組1張(或多張)光盤,以方便答辯之用。

5、畢業答辯前學生要與指導教師聯系,確定具體答辯時間及要求。

6、評審階段

有的學校也大致把畢業設計實施過程分為以下幾個階段(供參考):

①制定課題任務

②資料收集和文獻閱讀

③制定和論證技術方案

④完成系統或模塊設計

⑤編程與測試

⑥總結撰寫論文

第3篇

1選題

為培養學生的創新設計和實驗實踐能力,使學生能夠正確而恰當地選題,在大學第7學期中期便可公布畢業設計(論文)課題,讓學生有充分的時間去選題,避免盲目選題。選題后,安排學生與導師見面,在導師的指導下,查閱相關文獻,獨立撰寫開題報告,包括“選題的依據和意義”、“國內外的研究概況”、“主要研究線路”、“擬解決的關鍵技術”及“時間分配”等幾方面,在此過程中,學生對課題有了更加深刻的了解,同時能夠很好地梳理思路,做到心中有數,對后面要做的研究工作打下理論基礎。

2實驗研究

實驗研究是畢業設計(論文)的重點,因此,做好實驗研究對畢業設計(論文)的成功與否有莫大關系。首先,學校、導師及學生通力協作配合是做好實驗研究的基礎。在實驗過程中,不可避免地要用到化學或生物試劑、科研儀器等,而這均需要經費支持。因此,為了保證畢業設計(論文)的質量,這就要求學校能加對學生畢業設計(論文)的投入,使得學生的科研實驗有充分的經費保障;對于導師而言,帶領學生進行畢業設計(論文)是一項費時而又繁瑣的事情,所以導師在帶教過程中,應投入較大的精力與熱情去輔導學生。因為學生是初進科研實驗室,有許多事情尚不清楚,這就要求導師給予學生精心指導。在學生方面,需要學生有較高的熱情,堅忍不拔的精神及虛心向上的態度。其次,分階段指導是做好實驗研究的關鍵。我們可以將整個實驗研究過程分為三個階段,即實驗初期的任務下達、實驗中期的考核和實驗末期的驗收。在實驗初期階段,學生雖然對課題有了一定的理解,但只是停留在紙面上,尚未進入實驗狀態。因此,在學生進入實驗室之前,導師可以給學生做一次實驗安全講座,特別是進入藥物化學實驗室,實驗安全是非常重要的事情。進入實驗室后,導師可以先讓學生做一些基本操作實驗,使學生對實驗室的儀器操作有充分的了解。在此過程中,導師還可安排學生繼續閱讀課題相關文獻,使其對課題有更加深入的了解,并與導師共修訂制定研究方案,為后面的研究工作打下基礎;實驗中期,學生可以獨立開展課題相關實驗,對于實驗中遇到的問題,導師可以給予分析解決,或指導學生查閱文獻,獨立去發現并解決問題。在實驗研究過半時,學校可以對學生進行一次中期檢查,包括“對分配工作完成的進度情況”、“工作態度情況”、“學生前期已完成的工作的質量情況”及“存在的問題與建議”等,讓學校和導師對學生的實驗狀況有充分的了解,以便及時調整學生的畢業設計(論文)。實驗后期的指導主要是導師帶領學生整理實驗研究的結果,包括數據的整理與分析、實驗結果的討論、實驗存在的問題及擬解決的方法等。讓學生做到有始有終,盡善盡美。

3畢業論文的撰寫

實驗研究結束后,學生開始撰寫畢業論文,這是畢業設計(論文)的一個重要環節。寫出論點明確、概念清楚、格式規范、文筆流暢的論文,需要學生能對自己在整個畢業設計(論文)期間所做的工作進行高度地概括和總結。但是,在帶教大學生畢業設計(論文)過程中,我們發現,多數學生沒有撰寫論文的經驗,常常是不知如何撰寫,甚至有些學生連參考文獻的格式都不明白。這就要求帶教導師能夠從頭開始,一點一滴去教導。首先要培養學生良好的學術道德。在論文撰寫過程中,特別是論文中的綜述部分,很多學生都是從文獻中大段大段拷貝黏貼而來。對于這樣的論文,導師應及時退回,并批評指正。還有些學生,為了論文數據的豐富,用實驗室里師兄師姐做過的數據,甚至是篡改數據,這都需要帶教導師嚴格把關,防止此種學術不道德現象的發生;其次論文的內容的撰寫。在論文寫作過程中,我們常常發現,有些學生實驗研究做的非常好,實驗數據結果也很多,但是在論文里很難體現出來。對學生來講,如何組織材料和歸納分析結果,仍是一件困難的事情。因此需要在撰寫之前,學生應與指導教師探討行文思路,擬定寫作提綱,然后結合實驗資料進行論文撰寫;第三點是論文格式的規范要求。本學院給每位參加畢業設計(論文)的學生均發放一本《本科生畢業設計(論文)撰寫規范》。在此規范中,從論文的封面、目錄、中英文摘要、正文、圖表、參考文獻及致謝等均有嚴格的規范,帶教導師在指導過程中,應對學生嚴格要求,讓學生養成良好的作風及嚴謹的工作態度。一份好的畢業論文應包括充分調研文獻、合理設計實驗方案、開展實驗研究、數據合理真實、討論詳實充分。在論文的撰寫過程中,學生科技論文寫作水平得到了大幅度提高,對科學研究的嚴謹性與嚴密性也有了更為深刻的認識。

4論文答辯

論文答辯是大學生畢業設計(論文)的最后一個環節。學生答辯委員會由3-5名答辯委員及1名答辯秘書組成,學生做好PPT,并熟悉答辯內容,講解規定8-10分鐘,回答問題5分鐘。在學生答辯過程中,答辯委員從論文選題依據是否充分,論文設計是否合理,數據是否真實及回答問題是否正確等幾方面,全面評價學生畢業設計(論文)及答辯的質量。如有不合格的學生,可進行第二輪答辯。通過論文答辯嚴格控制畢業設計(論文)的質量,同時也提高學生對畢業設計(論文)的重視程度。

5結束語

綜上所述,畢業設計(論文)是本科生教學的重要環節,通過這一環節,提高了學生的實踐動手能力,嚴謹的工作作風,堅忍不拔的科研精神和不斷創新的思維。因此,在高校畢業生日益擴增的情況下,如何保質保量地讓學生完成畢業設計(論文)是我們需要高度重視的問題。

作者:鄭友廣 安琳 薛云生 劉毅 單位:徐州醫學院

第4篇

關鍵詞 本科 畢業設計 教學方法

中圖分類號: G424文獻標識碼:A

Study on Teaching Methods of Graduation Project in

Institutions of Higher Learning

WANG Jingli

(College of Optoelectronic Engineering, Nanjing University of

Posts and Telecommunications, Nanjing, Jiangsu 210003)

AbstractGraduation project in institution of higher learning is an important teaching to realize the training objective of the undergraduate. In this course, students will be trained further in scientific method, engineering design and practical skills, and will synthesize their knowledge learned in college. The students can develop their capabilities in analyzing and solving problems if teachers apply teaching methods more flexibly, which is necessary for the students in future. In the paper, some new teaching methods and teaching ideas are proposed on the basis of years of teaching experience.

Key wordsthe undergraduate; graduation project; teaching methods

高等學校學生的畢業設計通常安排在大學期間的最后學習階段,是培養學生綜合運用所學知識處理實際問題的一個教學過程,也是學生在教師指導下獨立進行科學研究或工程實踐并取得成果的過程。在該階段,學生將進一步受到科學研究方法、工程設計方法與實踐技能的基本訓練,并通過獨立完成某一課題,提高分析問題和解決問題的能力,從而實現個人實踐能力、科學研究能力、創新能力與綜合素質的全面提升。

高校教師注重該階段教學方法的靈活應用,不僅有助于調動學生的積極性和創造性,使其能夠更好地完成該階段的學習任務,且對提高本科畢業設計的質量和水平也具有重要意義,應該引起足夠重視。本文總結了作者多年指導畢業設計的若干經驗,并在此基礎上,提出了一些新的教學方法和思路。

1 課題的全貌展示

畢業設計的第一步以學生選定課題,教師下達畢業設計任務書作為開始。以筆者的經驗看,在該步驟中,學生由于不熟悉課題,對任務書布置的任務理解初淺,從而導致了兩種可能:一是輕視課題,從思想上放松了對自己的要求;二是產生畏難情緒,低估了自己完成課題的能力。

為了幫助學生更好地進入畢業設計課題,教師在下達任務書之后,可以與學生進行簡短的交流,筆者認為向學生展示課題的全貌很重要。展示課題全貌包括:(1)向學生簡要介紹所做課題,包括:為什么要做這個課題,做這個課題有什么實際意義,以及課題的國內外發展情況等。在該過程中,筆者通常會涉及跟該課題相關的幾個發展方向,并且鼓勵學生選擇某一感興趣的方向作為切入點,在之后的課題調研階段,有所側重地查找相關文獻資料。(2)幫助學生分解任務,制定切合實際的實施方案。由于學生初次接觸課題,無法一下抓住重點與難點,教師可明確告知學生課題的難點所在,并幫助學生合理規劃各項任務所需時間。事實證明,通過向學生展示課題全貌,有利于學生明確學習任務,合理安排執行時間,并令其逐步對所做課題產生濃厚興趣,有助于課題的逐級展開。

2 科研基本功――文獻調研

學生進入課題之后,面臨的第一個問題就是獨立查閱文獻,結合課題進行各種調研。盡管本科階段,學生已經接受了科技情報檢索環節的訓練,但是由于針對性不強,欠缺實踐經驗,學生仍在這一步表現得無所適從,不知如何下手。

筆者認為作為科研的必備基本功之一,文獻查閱非常重要,不僅對全面了解課題有益,而且在文獻的查閱、整理、分類、閱讀和總結過程中,特別容易出現創新性想法。在該步驟中,筆者建議采用一對一的教輔方式,教師以某一課題為例,指導學生如何高效地利用學校采購的各類數據庫,如何選擇恰當的搜索關鍵詞縮小查找范圍,如何從搜索到的大量文獻中迅速挑選出跟課題相關的各類資料,以及如何對所下載的文獻進行分類整理等。通常,經過一至二次有針對性的訓練后,學生基本可以掌握文獻查閱的要點,且能夠比較快的查找到所需資料,從而為完成課題打下了堅實基礎。

3 各類相關軟件的靈活運用

受到畢業設計經費、畢業設計場地、教育資源以及硬件設備等的限制,不可避免會使得部分課題編程仿真所占比重較大。遇到該類課題,學生存在較為普遍的問題就是:獨立編程能力較差,尤其是非計算機專業的學生,此類現象更加明顯。一旦在仿真編程這部分耗費過多的時間精力,勢必會影響學生進一步產生創新性想法。

筆者認為,如果能夠將學生從繁瑣的編程工作中解放出來,那么學生就會有更多的時間用于思考和創新。以筆者所涉及的科研方向(光子晶體光纖、太赫茲波導設計等)為例,如果需要設計具有某種特性的光子晶體光纖,學生首先需要明確光子晶體光纖的概念,然后以求解麥克斯韋方程組為基礎,經過復雜的推導過程,最終才能獲得光在波導中傳輸的規律及特性。由于整個過程邏輯性強、物理概念抽象、公式推導繁瑣、編程實現具有一定難度,很容易使得學生興趣不足。因此,筆者認為此環節中各類相關軟件的靈活運用就顯得尤為重要。例如,有關上述光子晶體光纖的設計可采用瑞典COMSOL公司開發的有限元計算軟件COMSOL Multiphysics進行建模仿真。①由于該款軟件具有很多顯著特點,例如:可輕松實現多物理場的直接耦合分析、完全開放的架構、任意獨立函數控制的求解參數、專業的計算模型庫、內嵌的豐富CAD建模工具、強大的網絡剖分能力、大規模計算能力、豐富的后處理功能等,從而使得學生比較容易掌握。事實證明,通過相關軟件的靈活運用,能夠簡化分析過程和純粹的數學推導,將抽象的理論用更為直觀的方式顯示出來,從而幫助學生更加深刻的理解相關基本理論,重視其中的物理意義、現象和原理。而且,隨著編程壓力的減少,學生可將更多的精力投入到思考和創新上,有益于獲得更多有價值的結果。

4 科技論文的撰寫

隨著課題接近尾聲,學生又開始面臨新問題――科技論文的撰寫。學生初次嘗試此類論文寫作,容易出現:文體選擇不當、用語不嚴謹、邏輯混亂、重現象輕分析、參考文獻引用不規范等問題,所以教師在該步驟的指導很有必要。

筆者建議教師可在學生撰寫論文前,就寫作過程中容易出錯的地方,有針對性地輔導學生,并向其交代清楚科技論文寫作的基本注意事項。通常在開始寫論文前,筆者會要求學生先擬定論文提綱,包括:設計題目及其各個章節的安排和要點。擬定提綱有助于安排好全文的邏輯結構,構建論文的基本框架。其次,注意論文的基本格式,畢業設計論文應該包括以下幾部分內容:(1)設計題目。題目要求簡短、明確,能夠概括畢設論文的內容、專業特點等。(2)摘要和關鍵詞。摘要要涵蓋課題研究的基本觀點、主要研究內容、研究方法、結果和結論。學生在摘要寫作時,容易出現單一羅列各章內容,邏輯性不強,且重點不突出等問題,需要多加指導和訓練。關鍵詞要求選取題目和論文內容中具有實質意義、能夠作為標引和檢索文獻主要概念的名詞或詞組。(3)目錄。(4)正文。這是畢業設計論文的核心部分,包括課題發展動態的介紹、理論分析、仿真計算、實驗方法、個人的分析和討論、得出的結論等,需要附上有關公式、仿真圖、實驗圖、數據表格、照片等。有關這部分內容的寫作,要求理論正確、概念清晰、邏輯性強、層次分明、文字簡潔流暢、數據真實可靠、公式推導和計算無誤。在正文撰寫時,學生最難把握的是對仿真或實驗數據的分析和討論,并從中總結出規律。基于此,筆者通常會在該步驟中,幫助學生一起分析其得出的各類數據,并啟發學生運用所學知識尋找各類現象背后的理論依據,進行合理分析,從而得出準確的結論;(5)結束語。這是對論文主體的總結,應該完整且精煉,闡述本文所做的創新性工作及其所做工作的意義,對論文中某些不足和問題應給予客觀說明,并且可以提出下一步的研究方向。(6)致謝。(7)參考文獻。需要提醒學生注意參考文獻的格式,通常在參考文獻中應該列出主要參考書籍的作者、書名、出版社、出版年及其版本,若引用期刊論文時應該列出作者、期刊名、出版年、期刊卷數、期數、頁碼等。

5 總結

本文中,筆者就高校本科畢業設計環節的教學方法進行了總結和探討。首先,作者強調畢設初期下達任務書后,對學生展示課題全貌的重要性,它有利于學生迅速進入課題,并能激發其對課題的濃厚興趣。其次,作者認為文獻調研是科研的基本功,此環節一對一的教輔方式,有利于學生迅速掌握查找文獻的技巧,并為完成課題打下堅實基礎。再次,作者認為各類相關軟件的靈活運用,能夠將學生從繁瑣的編程工作中解放出來,有利于學生將更多精力投入到思考和創新上,有益于獲得更有價值的結果。最后,作者認為有必要對學生就科技論文的撰寫進行針對性指導,幫助學生掌握此類文體的寫作,還就畢設論文寫作常犯錯誤提出了各類解決方法。筆者期望通過對高校本科畢業設計環節教學方法的探討,能夠更好地幫助學生完成該階段學習任務,提高本科畢業設計的質量和水平!

第5篇

  畢業設計(論文)必須要自動生成目錄(不要手工錄入)(在自動生成的目錄上按住CTRL鍵并單擊鼠標可以跟蹤鏈接),格式如下: 四號字,黑體,加粗,單倍行距,居中。目錄單獨占一頁

     

目   錄 (本行空一行)(以下目錄清單為:小四號宋體,單倍行距。顯示到3級目錄即可) 1. 引言 2. 流量工程 3. MPLS流量工程 4. MPLS流量工程研究進展 4.1 LSP建立方法 4.1.1 預規劃路徑法 5. 結束語 致謝 參考文獻 小二黑,加粗居中。單倍行距。

  基于MPLS的流量工程研究進展  

(空一行)       軟件工程專業 小四楷,加粗居中

  120642009001           姚某某       指導教師:鄒某某  

(空一行) 【摘要】MPLS已成為IP網絡的核心技術,基于MPLS的流量工程技術對提高網絡資源利用率、改善網絡性能具有十分重要的意義。本文分析MPLS流量工程技術中面臨的問題,概述解決這些問題的最新研究進展,并進行分類,提出MPLS流量工程結構模型,以及MPLS流量工程研究的認識和建議。 小五楷加粗。單倍行距

  【關鍵詞】MPLS, 流量工程, LSP  

(空一行) 1.     四號黑體,單倍行距,段前段后均空0.5行 引言 漢字為五宋;

英文為五號“Times New Roman” 單倍行距   隨著互聯網的迅速發展,互聯網應用的逐漸增多,流量增長呈指數級迅速發展趨勢。傳統IP網絡可滿足傳統業務(如Email、Web)的傳輸要求,不能提供QoS保證。但是,………………,傳統IP網絡也無法滿足的這種傳輸過程的可預見性要求。  

…………………… 2.     引用參考文獻 流量工程 流量工程是映射業務流到實際網絡拓撲的過程,是均衡網絡鏈路、路由器以及交換機上負載的強有力工具[2]。通過管理和控制網絡流量分布,可減少關鍵節點或鏈路的擁塞,提高資源利用率。流量工程技術不但可以……,而且……。流量工程通常包括各種技術的應用、網絡測量規則、各種問題的模型化、流量控制,以及如何將這些理論和技術應用到實踐中來獲取一些特定指標的性能[3]。 …………………… 3.     MPLS流量工程 正文…………………… 4.     小四黑,單倍行距,段前段后均空0.5行 MPLS流量工程研究進展 4.1         LSP建立方法 五號黑體,單倍行距,段前段后均空0.5行

  通常應用約束路由的方法建立LSP。約束路由是一種命令驅動并具有資源預留能力的路由算法,它能夠和現有的IGP共存。約束路由根據流量主干屬性、資源屬性、拓撲信息等,……………………,將有助于對網絡的性能優化,減少手工配置和人工干預。  

4.1.1 預規劃路徑法 預規劃路徑可分為三個步驟[7],這些步驟都是離線完成的。第一,路徑查找:為每對出口/入口路由器之間查找所有可能路由,這些路由作為備選LSP路由;第二,路由選擇:從路徑集合中選出兩個子集…… (1)流量預測法 要有表序號和表名,放在表格上方。表格用三線表

  文[12]提出一種動態路由算法,該算法的主要思想是…………。算法分為兩個階段:預處理階段和在線路由階段。兩階段的算法以對照表形式列于表4-1。  

表4-1 預處理階段和在線路由階段算法對照 預處理 在線路由 <預處理算法描述> ………… ………… <在線路由算法描述> ………… ………… (2)關鍵鏈路法 通常情況下,根據MPLS網絡的拓撲結構、各鏈路的剩余帶寬建立LSP,而不考慮入口/出口路由器的位置。事實上,如果不考慮入口/出口路由器的位置,會出現什么情況呢?考慮圖4-1所示網絡結構。 要有圖序號和圖名,放在示意圖的下方

   

五號黑體

  圖4-1 資源使用產生沖突的例子  

(空二行) 5. 結束語 ……………………………… (空一行) 致謝(注:文獻綜述不寫致謝) 漢字為五號宋;

英文為五號“Times New Roman”。單倍行距。 實心的句點,半角的冒號和逗號   起止頁碼 感謝……………………  

(空一行) 參考文獻 [1] Yufei Wang,Zheng Wang. Explicit Routing algorithms for Internet Traffic Engineering[C]. Proceedings of IEEE International Conference on Computer Communications and Networks, 1999:228-239. [2] Chuck Smeria. Traffic Engineering for the New Public Network[R]. White Paper, Part Number: 200004-004 09/2000, Juniper Network, Inc.. [3] D. Awduche et al. Requirement for Traffic Engineering Over MPLS[S]. RFC 2702, September 1999. [4] D. Awduche. MPLS and Traffic Engineering in IP Networks[J]. IEEE Communications Magazine, 1999,37(12):42-47. [5] 王靜華,張新家. 基于MPLS流量工程的約束路由的研究[J].計算機工程與設計, 2005,26(9):2386-2388. 期刊名。期刊不要寫出城市

  [6] 張輝譯. 基于MPLS的流量工程[M]. 北京:人民郵電出版社, 2003:88-92.  

[7] ………… 卷號

第6篇

 

外國語學院英語專業學生畢業論文要求

一、畢業論文的目的

畢業論文是教學計劃的最后一個重要環節,是落實教育培養目標的重要組成部分,其主要目的是培養學生綜合運用所學的知識和語言技能,理論聯系實際,獨立分析和解決有關專業問題的實際能力,使學生得到從事本專業外語學術論文寫作的基本訓練。畢業論文的基本教學要求是:

1、通過畢業論文提高學生綜合運用、擴展語言知識和專業知識的能力,培養學生獨立分析問題、解決問題的能力。

2、通過撰寫畢業論文,幫助學生接受科學研究、分析方法的初步訓練。

3、培養學生正確的寫作思想,理論聯系實際的工作作風,嚴肅認真的科學態度。

4、使學生在外文資料查閱、閱讀和翻譯,語言表達、寫作能力,計算機文字處理等基本技能方面得到進一步的訓練和提高。

二、畢業論文題目的確定

(一) 方式:

1、由教研室安排教師做“怎樣寫畢業論文的報告”,詳細介紹撰寫論文的每一個環節和具體要求。

2、學生在指導教師指定的范圍內選擇和初步確定論文的方向。

3、由論文指導教師根據教學要求提供論文選題,在教研室匯總后向學生公布,供學生選題參考。

4、學生可根據自己所學專業,按學院所提供各專業論文參考選題確定題目,也可自選題目,必須報指導教師,征得同意后方可開題。原則上學生不得跨專業選題。

(二) 范圍

英美語言文學、文化、語言學(語法、詞法、修辭、語義、文體等)、翻譯、國際商貿、國際商務、旅游、外語教學法等。

三、畢業論文寫作要求

1、論文長度不少于3,000英文單詞。

2、論文結構包括:

1) 標題 (title)

2) 作者署名 (name of the author and tutor)

3) 摘要 (abstract)(150—200詞,中英文均要)

4) 關鍵詞 (key words)(中英文均要)

5) 正文 (body)

6) 參考文獻 (bibliography)

3、摘要(Abstract)通常為一個段落,長度不超過300個單詞。

Abstract通常要回答如下問題:

(1)What is the general knowledge of your topic in the academic field?

(2)What research topic is the paper to focus on?

(3)What method or material do you use to support your main point of view?

(4)What conclusion will you draw?

(5)What is the main contribution of the paper?

4、關鍵詞(Keywords)3至5個。除專有名詞外,其他詞不用大寫,詞與詞之

間以分號隔開。

關鍵詞應能反映論文的主要內容,因此常出現在標題與摘要中,多為名詞,如用investigation 而不用investigate。

5、引言(Introduction)

6、在引言(Introduction)與結語(Conclusion)之間的正文部分應分若干章節。章節編號方法應采用分級阿拉伯數字編號方法,第一級為“1”、“2”、“3”等,第二級為“2.1”、“2.2”、“2.3”等,第三級為“2.2.1”、“2.2.2”、“2.2.3”等,但分級阿拉伯數字的編號一般不超過四級,兩級之間用下角圓點隔開,每一級的末尾不加標點。

各層標題均單獨占行書寫。第一級標題居中書寫;第二級標題序數頂格書寫,后空一格接寫標題,末尾不加標點;第三級和第四級標題均空兩格書寫序數,后空一格書寫標題。第四級以下單獨占行的標題順序采用A.B.C……和a.b.c.兩層,標題均空兩格書寫序數,后空一格寫標題。正文中對總項包括的分項采用⑴、⑵、⑶…單獨序號,對分項中的小項采用①、②、③…的序號或數字加半括號,括號后不再加其他標點。

7、如有注釋,應為尾注。注釋應編號,并置于參考文獻之前。

8、參考文獻數目不得少于5篇。排列采用以下格式:

1)參考期刊排列順序為:作者,題目,期刊名稱,出版年,卷(期),頁碼

2)參考專著排列順序為:作者,書名,出版地,出版社,出版年,頁碼

9、論文為Word形式打印稿,紙型為A4,單倍行距,英文用Times New Roman

字體,中文用宋體。

10、字號要求:大標題為3號字加黑,小標題為4號字加黑,正文、注釋與

參考文獻為5號字。

11、論文寫作過程中,應自覺主動與指導教師聯系,虛心接受教師指導。

12、按要求打印裝訂并上交。裝訂順序為:

1)畢業論文封面

2)扉頁(畢業設計/論文任務書)

3)畢業論文指導書

4)目錄

5)中文摘要(含關鍵詞)

6)英文摘要(含關鍵詞)

7)正文

8)致謝

9)參考文獻

13、進度安排:

1、確定選題 第 1 周 ( 09年 2月 22日前)

2、論文提綱 第 2 周 ( 09年 3月 1日前)

3、完成初稿 第3-5周 ( 09年 3月 22日前)

4、完成定稿 第 6 周 ( 09年 3月 29日前)

5、上交論文 第7周 ( 09年 4月 5日前)

14、注意:

1、目錄用Word文檔自動生成,用1.5倍行距,4號宋體。

2、中文摘要、英文摘要各占一頁,按一級標題標示。

四、上交要求

學生按任務書上規定的時間,以班級為單位交輔導員處,輔導員匯總后上交學院。

中州大學外國語學院

參考樣文如下

目 錄

中文摘要 1

ABSTRACT 2

1 引言 2

2 企業文化的內涵 3

2.1 文化和企業的定義 3

2.1.1 企業組織的法律形態 3

2.1.2 企業組織的管理形態 4

2.2 企業文化 4

2.3 認識企業文化 5

2.4 企業文化的功能 6

3 企業文化對組織創新的影響 7

3.1 組織創新的內容 7

3.2 企業文化對組織創新的影響 7

3.2.1 影響組織結構創新 7

3.2.2 影響組織流程創新 8

3.2.3 組織制度創新 8

4 結語 9

參考文獻 9

致謝 10

摘要

隨著經濟全球化和知識經濟時代的到來,國內企業改革的深入發展, 眾多企業對傳統的組織結構進行了大膽的創新。同時,人們逐漸認識到企業文化是一個成功企業不可或缺的一部分,是影響企業經營業績的根本,企業文化決定了企業的競爭地位。本文主要討論了企業文化對企業組織創新的影響。文中首先給出了企業和文化的定義及其內涵,其次提出了企業文化的內容和主要功能,最后揭示了組織創新的內容,論述了企業文化在組織結構、組織流程、組織制度等三方面對企業組織創新的影響。企業文化與創新相互影響,相互促進,共同對企業的發展產生影響。

關鍵詞:文化;企業文化;組織創新

Abstract(用Time New Roman 字體)

Along with the economic globalization and arrival of knowledge-based economy ages, the thorough development of the local business enterprise reform, numerous business enterprises carried on the innovation of the brave to the traditional organization structure. At the same time, the people know that the corporate culture is a gradually successfully a necessary part of the business enterprise, is a root that affects the business enterprise management accomplishment, the corporate culture comes to a decision the competition position of the business enterprise. This text mainly discusses the corporate culture to organize the creative influence to the business enterprise. Give first in the text definition and its contents of the business enterprise and culture, put forward contents and main functions of corporate culture the next in order, announced to public the creative contents of organization finally, discuss the corporate culture to organize the creative influence to the business enterprise in the aspects of organizing the structure, organize process, organize system wait third. The corporate culture and innovation affects mutually, promoting mutually, common to the development creation influence of the business enterprise.

Key Words: culture,corporate culture,System innovation

1 引言

不管您意識到與否,文化每時每刻都在對政治、經濟、社會、生活產生著潛在的影響,發揮著不可忽視的作用。本文通過對企業文化的基本內涵、企業文化的重要性以及企業文化的影響,試圖讓人們認知、認識企業文化。讓人們明確,只有繼承和發揚中華民族的優秀傳統文化,吸收和借鑒人類先進文化,才能建立起優秀的中國企業文化,重視企業文化的影響,據此才能建立起比較完善的社會主義市場經濟體制,實現興企、富民、強國的目標。

2 企業文化的內涵

2.1 文化和企業的定義

文化,從廣義上說,是人類在社會實踐過程中獲得的物質、精神的生產力和創造的物質、精神的總和。從狹義上講,是指人類精神生產力和精神產品,包括一切社會意識形式:如自然科學、技術科學和社會意識形態等。作為一種歷史現象,文化的發展有歷史繼承性;作為社會意識形態,文化是一定社會政治和經濟的反映,同時又對一定社會的政治和經濟產生巨大的影響。

作為經濟組織實體的企業,為了實現其以行政組織手段替代市場交易來協調生產的功能,就需要有一定的組織形態。

一般地說,企業組織形態包括兩個相互關聯的方面,其一是企業組織的法律形態,其二是企業組織的管理形態。

2.1.1 企業組織的法律形態

在企業的長期發展過程中企業組織逐步形成三種主要的法律形態,這就是業主制企業,合伙制企業和公司制企業,這種界定的依據是法律認可的企業產權制度,感情。。。。。。

(以下略)

4 結語

二十一世紀,一個最響亮的詞語就是創新。創新已成為社會發展、經濟增長的最關鍵動力,而企業文化又與創新有著緊密的聯系,所以,企業若要獲得長足的發展就必須將企業文化與創新思想相融合,發展現今社會所需要的企業文化,并促進企業文化的建設,同時不斷地進行組織創新、技術創新,使企業文化與創新協調發展,相互促進。

致謝

本論文得以完成,首先應該感謝。。。老師。正是她在本論文的寫作過程中的悉心指導、熱情鼓勵,在繁忙的工作中抽出時間來為我修改論文,我才能順利完成我的雙學位論文。

作為中州大學的一名畢業生,我更要感謝管理工程系給了我能夠學習不同學科知識的機會。在兩年的工商管理專業學習過程中,任課老師們的學識淵博、治學嚴謹、人品高尚無時不在影響著我。學習的時間是短暫的,但老師們的影響卻是我終生收益不盡的。在此對我的老師們深表感謝!

在論文寫作過程中,我的一些同學、朋友也給了我巨大的幫助與鼓勵。在此一并感謝!

在我的成長、學習過程中,能夠在大學階段同時學習到工科、管理兩個學科的知識,是我一生的榮幸與財富。我相信,在未來的日子里我會更加努力學習,充分利用所學知識,回報社會、師長。

參考文獻

[1] 羅仲偉.托起輝煌.廣州:廣東旅游出版社,1997年

[2] 埃德加•沙因.企業文化與領導.北京:中國友誼出版公司,1989年

[3] 威廉•道芬內斯,科林•L•普賴斯.21世紀CEO的經營歷理念.北京:華夏出版社,1998年

[4] 杰克琳•謝瑞頓,詹姆斯•L•斯特恩.企業文化:排除企業成功的潛在障礙.上海:上海人民出版社,1998年

[5] 艾倫•迪爾,阿倫肯•尼迪.企業文化.北京:三聯書店,1989年

[6] 埃爾文格•羅赫拉.企業組織.北京:經濟管理出版社1991年

[7] 竇立夫.論組織效率變革策略 (科學學研究),1995(2)

[8] 連燕華.企業組織創新的案例研究.科學學研究),1992(2)

[9] 梁鎮,趙國杰.企業管理創新.北京:中國經濟出版社,1996年

[10] 林毅夫等.現代企業制度的內涵與國有企業改革方向.經濟研究,1997(3)

[11] P F•德魯克.創新與組織.中外科技政策與管理,1995(12)

[12] 許慶瑞.技術創新管理. 杭州:浙江大學出版社,1990年

[13] 顏光桐,劉正周等.企業再造.上海:上海財經大學出版社,1998

[14] 周振華. 企業改制.上海:上海人民出版社,1996年

[15] 張德,劉冀生.中國企業文化-現在與未來.北京:中國商業出版社,1991年

第7篇

1.論文類型

不同的院系,不同的專業,畢業論文通常有不同的類型。就物信系物理類師范本科而言,畢業論文通常有下面幾種類型:

1.1理論型論文經過文獻調研后,對物理學某一領域的某一理論問題有一定見解,產生出一個題目(課題),利用自己所學的專業知識和數學工具,得出一個(些)有用(或者有潛在的價值)的結論。例如:解決了一個眾所周知的問題;糾正了某些流行教材或雜志上理論的錯誤且提出了解決修正方案;或自己提出有意義的模型、定義、定理或命題等,最后形成論文。

1.2實驗型論文對某進行改進或新設計實驗,比如更換了測量原理,改進了測量方法,使測量精度更高,測量手段更方便更科學等,最后形成論文。

1.3應用型產品嚴格說來這算畢業設計。主要依據所學的知識,開發一個新產品或已有產品的改進。最后形成的開發報告加上所開發的樣品即為畢業設計的結果。

1.4軟件產品完成一個不太大的實際項目或在某一個較大的項目中設計并完成一個模塊(如應用軟件、工具軟件及CAI課件等),然后以工程項目總結或科研報告、或已發表的論文的綜合擴展等形式完成論文。

就物理類本科畢業論文的幾種類型而言,前兩種類型最為常見。

2.選題

2.1有科研項目的老師通常愿意從項目中選取本科生能完成的模塊,交給學生作,然后以第一種形式寫成論文。教師熟悉項目,項目有實用背景,一般而言,多數學生經過努力都能完成。

2.2學生自選題目,學生自己的知識或對一些問題有自己獨到的看法和理解;有些學生已聯系好畢業后的工作單位,工作單位要求學生作某方面的項目,或已交給學生某方面的項目,經過指導教師認可,認為可做出合格的畢業論文,則可作這方面題目。這種方式下,學生積極性高,責任心較強,學以致用,一般論文的質量較好且成文后篇幅較大。

2.3教師根據需求,擬定題目。例如,為了教學或者行政的需要而開發的信息管理系統、防黃防黑系統等,可能開始做出的軟件還不很完善,但有了雛形,經過修改后,一般是能夠應用的。有的系統經過下一屆本科生畢業實習的改進,就可能更實用了,一些對路的、有用戶的軟件還有可能進一步發展為產品。

同學們最好自己能夠擬定畢業論文題目,如果自己無法選題,則只有指導教師幫忙擬定題目。

3.文獻調研

依據各自畢業論文選題的不同,在搜集整理論文的素材、組織安排論文的結構方面,應有所不同,做到有的放矢。實際上論文選題與文獻調研是交叉進行的,它們之間是互相影響的,論文選題可以在文獻調研的基礎上修正,文獻調研可促使你更準確地選題。

文獻調研注意以下幾個方面的問題:

1)關注背景關注內容--別人進行某方面的研究,內容到了什么層次?你能否對該研究作一些推進?

2)關注手段關注方法--已有的研究采用了什么方法?該方法是否還可以更新?是否可以把該方法移植到其它方面?比如實驗論文的實驗方法和手段,理論型論文的數學方法等。

3)關注時間--有時這比較重要,你查的文獻越新,越接近目前研究的現狀。

文獻調研的一些方法:如何找到文章的閃光點?

先看題目和關鍵詞,感興趣后再看文章的摘要,然后關注全文,有必要時要仔細研讀,一般來說,做畢業論文時至少要仔細研讀10篇以上的參考文獻(包括經典著作和外文文獻)。

傳統方法:到圖書館去,查閱教材,專著,期刊,各種論文集(包括本科、碩、博畢業論文集)等,將查得的文章復印,然后仔細研讀;

電子方法:首先要學會利用關鍵詞進行檢索。關鍵詞的選取非常重要,依據習慣,可以采用先小后大、也可以采用先大后小的方式逐漸找到自己需要的東西。

網上可以利用的資源

免費的公開的:各大搜索引擎,比如:網易,搜狐,新浪,AOL(美國在線),YAHOO(雅虎)等。

專業網站:一般是要收費的。比如:中國期刊網(CNKI)-我校正在試用,在給定的IP范圍內用戶名和密碼均為syyx,萬方數據,維普資訊-我校已經購買其鏡像。還有就是科研單位網站(比如中科院的各個所),大學網站(圖書館及學報),個人學術網站等。

幾個推薦網站:

維普資訊:http://dx3.tydata.com/index.asp,校園網內電腦可以由學校數字圖書館直接進入其鏡像網站,可以下載全文。

萬方網據:http://wanfangdata.com.cn,查閱資料請打開數字化期刊。可以免費檢索及查閱摘要。

中國期刊網數字圖書館:http://cnki.net/index.htm,校園網內電腦可以試用(進入其主網站,限制IP),用戶名和密碼均為syyx,可以下載全文。她應該算是國內目前內容最齊全的中文文獻數據庫。

文獻印預本網站:http://arxiv.org/,英文網站,包括的內容非常廣泛,有物理、數學、非線性科學、計算機科學及數量生物學等。就物理而言,其內容也包羅萬象。文章可以全文免費下載,一般下載PDF格式,其它的格式你們不知道怎么閱讀。

另外還有專業的著名網站,比如:aps.org(美國物理學會-非常專業的物理評論-PhysicalReview、物理評論快報-PhysicalReviewLetter在此),aip.org(美國物理研究所,上面在多種物理雜志,比如:今日物理-PhysicalToday,數學物理通報-Math.Phys.Lett.)。

4.論文格式及目錄系統

每個作者有自己的風格,格式不必強求一致,但科技論文不能象寫小說劇本那樣,一般不能用倒敘,插敘,不設懸念,不用意識流,多線索方式等。一般格式如下:

題目(封面)

扉頁

摘要(中英文,300-1000字)

關鍵詞(3-5個,方便別人檢索和分類,關鍵詞要能夠體現論文的中心)

目錄(目錄可以用Word的自動功能,“插入—索引和目錄”功能實現,可自動編頁自動更新)

正文部分

1.前言、引言或導言(背景,動機,前人工作)

1.1

1.1.1

(1)

(a)

1.2

(在這一部分要突出自己文獻調研所讀過的資料,可以看出你對本研究到底了解有多少)

2.選題的特色,擬采用什么方法、方案和手段解決什么問題。

3.題目的研究過程(實驗,數學手段等,一定要詳細,具體,而且要求準確無差錯)

4.結論,分析與討論

5.結束語(全文的總結,有時題目比較單一時,這部分內容包含在第4項中,此時該部分可以省略)

參考文獻

附錄(比如:你在讀本期間發表的論文,在什么學術會議上發表了什么文章等能夠證明你學術水平的東東)

致謝(你可以在此處對你論文寫作提供了幫助的人提出感謝)

5.寫作技巧和注意事項

5.1學術論文要求文字流暢,層次清晰,詞藻不能過分華麗,即便你想寫得生動,但用詞的前提是準確不過分夸張。

5.2標題要能反映內容。如有新意更好。例如,下面題目是個不好的題目:“原子物理中某些問題的研究”,論防火墻技術”等,其中的“某些問題”不如換成最中心的詞匯。論防火墻技術題目太大太泛,根本不適合本科生作,那是寫專著的題目。

5.3學術刊物上論文摘要一般300字左右,需要較高的綜合能力。而學生畢業論文摘要原則上占一頁(1000字左右),因此活動空間較大,要好寫一些。

摘要可以在全文寫完后再寫。要簡明。實際上摘要都是在全文寫完后再寫的。

中英文摘要應一致,要突出自己的工作,要提供幾個keywords。

寫英文摘要時,可先用英文的習慣和用語寫摘要(可以借助于電子詞典),然后英譯漢,用中文摘要去將就英文摘要。反過來,如果先寫好中文摘要,再漢譯英,則很難把英文摘要寫得地道。

為了使得英文表達地道、準確,可以讀十幾篇相關研究方向的論文的摘要,注意一些表達詞的使用。

平行的內容宜用平行的句型。不要搞成一句主動,一句被動,讀起來語感會非常糟糕。

5.4前言部分要寫問題背景,動機,要說明自己工作的工作有用,有意義(才能鼓勵讀者讀下去),通常在介紹國內外工作后,用“但是”一轉,指出前人工作的不足,引出自己的工作。在前言中簡述自己作的主要結果,(例如明確地列出幾條,說明本文的主要工作,主要成果)。前言部分的末尾介紹文章的組織情況,各節內容。

5.5突出特色,一個項目中工作很多,有些是同行皆知,自己也無創新的,可以略寫,要多寫自己遇到的特殊困難和創造的特殊解決方法。使人家讀了能學到東西,看到作者的創意。為了突出特色,還可以在一節中分成小標題寫,一個問題一小段,與計算機相關的論文中還可以把數據結構和程序片段夾敘夾議呈現出來,比只用漢字解釋得更清楚。

5.6上升到理論,一般碩士論文會要求這一點。如果本科生能夠在畢業論文中得出有意義的定理或命題,一般會認為是好成果。可能會被推薦到雜志上發表,或在考研、求職中得到承認。

5.7各部分應詳略得當。一般地,畢業論文應該主要寫作者的見解和工作,把自己的創新寫深寫透。綜述要有述有評有比較,一般地介紹相關工作(前人的成果)部分不應該超過總篇幅的1/6。

5.8完整的論文應包括結果、結論及分析(圖表或曲線)。

5.9結論,小結。說明解決了什么問題,有什么創新,下一步工作主要內容和思路等。

6.參考文獻及引用

參考文獻是論文寫作中的重要一環,帶著問題讀文獻或雜志上的論文,不但注意學習學術內容,同時也注意學習選題方法、格式、標準的套話、起承轉合的語言和方式,參考文獻的寫法,字體的運用等等。在論文中明確給出參考文獻的出處,既代表著對前人成果的繼承,也代表了對他人研究成果的尊崇,是科學研究中應培養的正確的科學態度和做人準則。

參考文獻的寫法:按參考文獻在論文中出現的順序,用編碼的方式給出,如[1],[2],等。參考文獻包括專著、學術期刊、學術會議、技術報告等。

7.怎樣作答辯用PowerPoint

本科生畢業論文答辯時間一般10-30分鐘,把自己的工作在15分鐘內講出來,是對綜合能力、表達能力的挑戰。這種能力在學生的一生中非常重要。(求職,面試,申請項目,總結等等)。作好PowerPoint幻燈片是答辯好的重要環節。一般有下列要點:

(1)每頁8—10行字或一幅圖。只列出要點,關鍵技術。

(2)畢業論文要突出自己的工作,不要在背景,前人工作上花過多時間。篇幅可以大致分配如下:

提綱:1頁,

背景:1—2頁,

提出問題,分析問題:5頁,

解決問題,10—15頁,

小結:1頁,主要成果,工作,程序量,效益等等。

(3)演講者大約一分鐘講2頁。聽眾一分鐘可以看完4—5頁。因此不能完全照著念。要用口語化的語言,講演式的語言。

(4)充分利用圖形,可以在較短時間內傳遞較多信息。

(5)有些細節,如算法,可以全部用小字寫在一頁上,用紅色標出特別重要的幾個句子,講解時可以快速"閃"過(20秒),"算法如此頁","要點是...",,講思想,介紹方法,講關鍵。聽眾可以在較短時間內了解大意。

(6)10—15分鐘的報告,準備20—22頁即可。

8.時間表

第一周(2月29日前):指導教師與被指導學生見面。

第二周(3月7日前):完成指導學生選題工作。

第五周(3月28日前):文獻調研初步工作,完成開題任務,交開題報告書。

第九周(4月25日前):文獻調研,仔細研讀,跟指導教師密切聯系。

第十三周(5月16日前):完成課題研究,寫出論文初稿,交指導教師審閱。

第十四周(5月23日前):指導教師返還修改論文,學生完成論文二稿。

第十五周(5月底前):指導教師進一步指導存在問題的論文。

第十六周(6月6日前):論文定稿、打印、裝訂,論文的最終版本交指導教師;制作PPT文稿,準備答辯。

第十七周(6月13日前):指導教師(交叉)評審論文。

第十八周(6月20日前):學生畢業論文答辯。

9.本科論文附加要求、格式、字體規定

1.論文必須打印,A4紙。

2.論文字體與字號(如以后學校有字體標準,以學校規定為準)

字體:宋體

論文標題:3號,標題1:小3,標題2:4號,標題3:小4標題加粗,

正文:小4,

參考文獻:5號。

英文標題:小3,摘要正文:小4,字體:TimesNewRoman

3.封面使用規定的模板(以后學校有規定的,以學校規定的封面為準)。

4.答辯時,原則上要求作PowerPoint幻燈片。

10.關于譯文和文獻綜述

文獻綜述實際上是在引言中敘述,漢譯英工作體現在中英文摘要中,所以建議同學們要認真讀2-4篇英文論文,看看科技文獻是如何使用英語的。不過,150-300字的翻譯量不太大,同學們還可以利用先進技術(如電子詞典)輔助翻譯。所以問題應該不大。

附件:

1、本科畢業論文流程:選題à文獻調研à開題報告書à文獻研讀論文寫作à答辯

2、時間安排表

3、選題申報表(包括開題報告書)

4、論文封面及論文正文模板

第8篇

當代社會對標志的圖形設計提出更高的要求——首先要寓意深刻,反映品牌的理念;其次要個性鮮明,引人注意,讓人一目了然;再次要給人以美感,既符合實用要求,又符合美學原則;最后還要有好的適用性,便于運用各種工藝手段生產和制作。要符合上述的這么多要求,設計一個標志就顯得很不容易了。標志簡潔、易識別的要求,使標志的圖形做起來不像畫一幅畫那么費時間,往往給人留下一個“簡單”的印象(當然簡單就意味著好復制,好傳播,這也是標志設計的一個要求)。但它的定位創意卻成了制勝的根本,需要反復的考慮苦苦尋覓。當然這種尋覓的過程并不是漫無目的的,它還是有一些規律和重點需要注意的,以下是我們對標志設計創意的要點進行分析和探討。

一、明確企業的品牌理念,為企業標志設計找準契合點

設計標志時需收集品牌的信息,分析整理準確把握其內涵。每一個品牌都有其獨特的理念、精神、文化或經營方針,而一個品牌往往內涵涉及層面是很廣的。必須經過準確的提煉取舍找出重點要素,作為設計的突破點和基點。再集中各種藝術手段,巧、妙、準地反映主題內涵。這一步把握的準確與否,直接關系到標志設計的成敗。

首先要弄清品牌的性質和用途。這是創意的一個基點,如:圖一中國銀行的標志用古錢幣的形象表現了金融機構性質特點,說明標志圖形要和品牌名稱內容相一致。從整體趨勢來看,標志設計是由具象向抽象演變。具象的標志往往會被具體物像或生活的真實性所束縛,而不易表達簡單概念后面的豐富蘊涵,有礙于傳遞品牌的核心識別。

如圖1-1

獨特的地域文化也是標志設計創意時所要考慮的重要內容。每一個品牌都具有不同的地域性,歷史背景,產品或服務背后的文化根源與市場的范圍和對象等。因此在為一個品牌做標志設計前,一般企業或機構方會提供其理念、精神、文化或經營方針等有關資料。所提供的信息往往是較全面的,但也可能是繁瑣和零碎的。我們就要準確地提煉主題內涵,把握住能反映主題意義的抽象概念。我們可以從分析問題入手,搞清“它是什么”,“它的個性特點怎樣”,“有什么樣的行業特征”,“覆蓋哪些地域哪些人群”,“他給目標人群帶來什么利益、服務或活動”,“推出的時代背景”等問題。

二、根據反映企業理念的要素,提煉圖形元素

標志設計所反映的企業理念和所用的圖形語言二者是內容與形式的關系。二者是互相依存的一個有機的統一體。空玩形式,搞得再好看反映不出內容來,只能是一個無生命的空殼,從傳播的角度來說是毫無意義的。反過來,雖能準確地把握內涵,卻只會用幾個符號的簡單羅列,那也一定是蹩腳的失敗的,看上去一定是乏味的、混亂的和沒有結構的。這試圖是在 “寫設計”或圖解概念。好的標志設計表現形式應該是一個完美的形象圖形,是在準確把握品牌內涵的基礎上的再創造,這個圖形應該獨具個性、引人注目。如圖二2008北京奧運會會徽選擇中國傳統文化符號——印章(肖形印)作為標志的主體圖案,這在整個奧林匹克會徽設計史上是一個重大的突破和創新。以古老的印信寓意著有數千年誠信傳統的華夏古國的莊嚴承諾“世界給我以信任,我給世界以輝煌!”

如圖2-1

三、要有易識別的圖形語言

標志的圖形主要意義在于識別,服務于大眾傳播。這樣單純、顯著就很重要,我們知道,只有受眾理解了的東西才容易記憶。知覺和記憶總是一個相互交織而不可分割的統一體。一般情況下,人們辨別一個圖形總是自覺地將它與記憶倉庫儲備的同類或相近的事物加以比較歸類,以尋找其位置、確定其性質,這在心理學上叫視覺“預先匹配”現象。這種現象是圖形語言得以正確傳播的基礎。我們要自覺地利用這一現象,準確傳遞我們的圖形信息。但同時我們也要注意到:知覺對象同記憶中的標準意象吻合時,雖然認知度高,但卻缺少視覺的刺激性,難以引起人們的注意。這樣我們的圖形就要對記憶中的標準意象母體,制造某種程度的“破壞”,使知覺充滿活力,易于注目與記憶。設計的圖形既要易于理解,饒有風趣,以平托奇,過目不忘。例如:國旗、國徽作為一個國家形象的標志,具有任何語言和文字都難以確切表達的特殊作用。公共場所的標志、交通標志、安全標志、操作標志等,對于指導人們進行有秩序的正常活動、確保生命財產安全,具有直觀、快捷的功效。商標、店標、廠標等專用標志對于發展經濟、創造經濟效益、維護企業和消費者權益等具有實用價值和法律保障作用。各種國內外重大活動、會議、運動會以及郵政運輸、金融財貿、機關、團體及至個人(圖章、簽名)等幾乎都有表明自己特征的標志。這些標志從各種角度發揮著溝通、交流、宣傳的作用,推動著社會經濟、政治、科技、文化的進步,保障著各自的權益。標志的直觀、形象、不受語言文字障礙等特性,極有利于國際間的交流與溝通,因此國際化標志得以迅速推廣和發展,成為視覺傳送最有效的手段之一,成為人類共通的一種直觀的聯系工具。

四、圖形語言要寓意深刻

因社會人群的不同,對標志圖形的理解就會不同,設計師和普通民眾的認識就會有差異。這樣就要求標志設計的圖形有多層語義結構。以申辦2008奧運會標志為例,是一個運動的人形,深入可依次識別為:打太極拳——聯想到中國傳統體育文化;中國結——聯想到吉祥、美好、中國文化;奧運五環——聯想到奧運會、世界體育;五角星環扣——聯想到2008年在中國北京舉辦;整個圖形感覺和諧動感——表達了奧林匹克更快、更高、更強的體育精神等不同層 次的意念。

設計時還要考慮各層意思的遞進關系,不要幾層意義有相悖的情況。很多標志是用首字母,或字母縮寫為元素去設計,就是考慮了最淺的一層,起碼一眼看上去就和品牌的名稱建立了聯系。傳達企業理念和風格的圖形語義要從其他層面去尋找。

有了好的創意之后,標志設計可以說呼之欲出。

五、運用以上的創意觀點于畢業設計中

首先,在明確企業的品牌理念方面,我很清楚地知道我的企業品牌是“東方青少年購物中心”如圖三,它的個性特點是“永遠年輕”,它的行業特征是“針對性強,受惠性更強。”它覆蓋了所有在杭或者到來杭的青少年。他給廣大的青少年朋友帶來豐厚的精神食糧和健康而又理想的購物休閑場所。在現今這個時代,青少年對于整個社會來說,是一群模糊服務界限的群體,所以針對性相對薄弱。在上述前提定位下,我的創意基點是“青少年”。其次,根據所反映的企業理念的要素,我提煉的圖形元素是漢字“東方”, 充分說明了標志圖形要和品牌名稱內容相一致。再次,考濾到的易識別的圖形語言是不同粗細的線條構成的粗細方圓曲直錯落變化;給人以個性感和豐富。最后,結合我所運用的鮮

如圖3-1

艷的明黃和橙紅兩種色彩于我的標志中,把我標志中的熱情、動感和活力的元素體現地更加地淋漓精致更有寓意。

六、結束語

隨著企業的經營和企業信息的不斷傳播,標志所代表的內涵日漸豐富,企業的經營活動,廣告宣傳,文化建設,公益活動都會被大眾接受,并通過對標志符號的記憶刻畫在腦海中,經過日積月累,當大眾再次見到標志時,就會聯想到曾經購買的產品,曾經受到的服務,從而將企業與大眾聯系起來,成為連接企業與受眾的橋梁。而標志之所以有這樣的內涵是由于有了“創意”。

致謝詞

感謝老師兩年來的諄諄教導和辛勤付出!讓我在這兩年中不僅在專業上有了提高,也在為人處世中有了很大的改變和進步。在這畢業之際,借著這方寸方格再次表示我的感激——謝謝老師!

參考文獻

[1]王汀 張力平•圖書版面的文字設計[M].廣州: 廣東人民出版社

[2]黃凱•標志設計[M].合肥:合肥工業大學出版社

[3]薄貫休 賈榮林•現代圖形設計創意與表現[M].北京: 國際文化出版社

[4]郭嵐•經典矢量標志圖庫[M].長沙: 湖南美術出版社 2005

第9篇

來稿應具先進性、科學性和邏輯性,數據可靠、論點明確、結構嚴謹、文字通順。

投稿前三看:①看投稿須知。投稿須知是各編輯部為使來稿符合該刊的性質、報道方向以及內容編排格式而制定的帶有“法規”性質的文件;②看相應欄目的范文;③查看自己的論文。

為了加快稿件處理的速度,本刊實行遠程在線投稿(http://),不再接收其他方式投稿。為了確保編輯部能夠將相關信息準確傳達到作者,注冊投稿者應為第一作者或通訊作者,不宜讓他人。

投稿成功后須及時交納20元審稿費,并提供單位介紹信。介紹信應注明對稿件的審評意見以及無一稿兩投、不涉及保密及署名無爭議等項。

來稿首頁請標明以下內容:題名,全部作者的姓名、工作單位(全稱),負責與編輯部聯系者的聯系方式(詳細通訊地址、電話號碼和電子郵箱)。

忌一稿多投、抄襲剽竊、重復發表、虛假注釋等。為了加強學術道德和學風建設,遏制學術不端行為,懲防并舉,本刊編輯部已全面啟用中國知網“學術不端文獻檢索系統”對來稿進行檢測,凡涉嫌學術不端行為的將不予采用。對已通過本刊審稿、等待發表的稿件,作者要求撤稿時,須通過投稿系統提出撤稿要求,并作文字說明。

來稿一律文責自負。根據《著作權法》,本刊對決定刊用的文稿可作文字修改、刪節。

本刊已被《萬方數據資源系統數字化期刊群》、《中國期刊全文數據庫》、《中文科技期刊數據庫》收錄,并實行開放獲取。您可通過OA資源一站式服務平臺、首席醫學網及本刊網站免費閱讀。作者將保留版權,擁有保護作品完整權和署名權。同時自投稿日起,本刊將獲得該作品的首次出版權和網絡傳播權。編輯部不再向作者支付稿酬。如您的文章不同意被上述數據庫收錄和開放獲取,請于來稿時注明。

2 撰稿要求

2.1 題名

力求簡明、醒目,反映出文章的主題。中文題名一般不宜超過20個漢字,英文題名不宜超過10個實詞。中、英文題名含義應一致。題名不應使用縮略語、字符、代號及簡稱、俗稱等,也不應將原形詞和縮略語同時列出。

2.2 作者署名與單位

①作者姓名寫在題名下,排序應在投稿時確定,在編排過程中不應再作更改;通訊作者應附有聯系方法(電子郵箱或電話號碼)。②作者工作單位寫在作者姓名下,應注明全稱,包括所在省(自治區)、城市(縣)名和郵政編碼。附有英文摘要的論文,中國作者的姓名用漢語拼音字母標注;漢族作者姓名姓在前,復姓連寫,全部大寫;名在后,首字母大寫,雙名間加連字符;名不縮寫,姓與名之間空一格。對于復姓或雙名的漢語拼音音節界限易混淆者,應加隔音號“’”。少數民族作者姓名按照民族習俗,用漢語拼音字母音譯轉寫,分連次序依民族習慣。我國香港、澳門、臺灣地區作者姓名的書寫方式尊重其傳統習慣。外國作者的姓名寫法遵從國際慣例。英文摘要中作者單位著錄項目應與中文一致,并應在郵政編碼后加注國名。

2.3 摘要

臨床論著、流行病學調查、循證醫學、中醫藥信息學、實驗研究、中藥研究與開發欄目的論文需附中、英文摘要。摘要應著重反映研究中的創新內容和作者的獨到觀點,并概括文中內容。字數要得當,一般不超過400字。摘要采用結構式摘要,包括目的、方法、結果及結論四部分。①目的:應簡要說明研究的目的,1~2句話即可。應注意不是對文題的簡單重復。②方法:應簡要介紹研究對象的選擇,分組(包括動物數及每組例數),觀察方法(動物造模方法),給藥劑量、次數,療程及主要檢測指標與方法等。③結果:應簡要列出主要的結果,包括陽性結果和陰性結果,描述結果要盡量用具體數據,必要時包括統計學處理結果。④結論:應根據研究的目的和結果,得出主要的結論,應注意與“目的”相呼應。

中文摘要一般使用第三人稱撰寫,不列圖、表,不引用文獻,不加評論和解釋。摘要中首次出現的縮略語、代號須注明全稱或加以說明。新術語或尚無合適漢語譯名的術語,可使用原文或在譯名后加括號注明原文。英文摘要一般與中文摘要內容相對應,為了對外交流的需要,也可略詳。中文摘要置于中文作者單位下方,英文摘要置于英文作者單位下方。

2.4 關鍵詞

關鍵詞是指論文中最能反映主題信息的特征詞或詞組。關鍵詞包括主題詞和自由詞。標引原則是以主題詞為主,若無相對應的主題詞(新的專業術語)可直接選用關鍵詞。主題詞應在美國國立醫學圖書館編印的“Medical Subject Headings”(MeSH)、中國醫學科學院醫學信息研究所編譯的《醫學名詞與主題詞(MeSH)對應表》、中國中醫科學院中醫藥信息研究所編印的《中醫藥學主題詞表》中選取。關鍵詞應為全稱,不能為非公知公認的縮寫。一般每篇論文選取3~8個關鍵詞,多個關鍵詞之間以分號“;”隔開。以“關鍵詞(Key words):”作為標識。有英文摘要的文章,應標注與中文對應的英文關鍵詞。關鍵詞分別排在中、英文摘要下方,無摘要的文章,關鍵詞排印在正文前。

2.5 臨床研究和基礎研究類論文

一般分引言、資料與方法、結果、討論和結論等部分。

2.5.1 引言 引言又稱前言,它是論文開頭部分的一段短文,是文章的引子。主要概述研究的背景、目的、研究思路、理論依據、研究方法、預期結果和意義等,引用他人的研究成果應標注相關參考文獻。一般不超過300個漢字。

2.5.2 資料與方法 ①觀察對象為患者,需注明觀察對象和對照者來源及來源時間,診斷、納入、排除標準(給出依據,并于文后標注參考文獻),分組方法,各組基線資料等。臨床試驗研究還應說明試驗程序是否經所在單位或地區倫理學相關機構的批準,研究對象是否知情同意并簽署知情同意書。②研究對象為實驗動物,需注明動物的名稱、種系、等級、動物許可證號、數量、來源、性別、年齡、體質量、飼養條件等。③藥品及化學試劑使用通用名稱,并注明來源、批號、規格、劑量和單位。儀器、設備應注明名稱、型號、生產單位,無須描述工作原理。④在方法中,詳述創新的方法及改良方法的改進之處,以供他人重復。采用他人方法,應以引用文獻的方式給出方法的出處,無須詳細描述。注意要將各組所采用的干預方法分別介紹,不能只介紹觀察組的方法,其他組不介紹或輕描淡寫一帶而過。同時說明觀察治療的時間和療程。⑤觀察項目及指標要分別列出,特殊的檢測指標及方法要詳細說明。

2.5.3 結果 結果的敘述應實事求是,簡潔明了。結果應與觀察指標對應。以數據反映結果時,不能只描述相對數(如百分數),應同時給出數據的絕對值。用表或圖表示時,一般應先用文字簡單介紹,引出圖表。但避免圖、表、文字三者內容重疊。圖(表)題、圖(表)例及其他文字說明可以只使用中文,也可以中、英文對照,但不應僅使用英文。

2.5.3.1 圖 ①應具備自明性,包括圖序、圖題、圖例、圖注。②應注意圖的美觀,不應加邊框與底紋。③除圓圖外,圖的高度與寬度的比例以5∶7左右較為美觀。④圖不宜過大,半欄圖最大寬度不超過7.5 cm,通欄圖不超過17.0 cm。⑤圖的類型(線圖、條圖、百分條圖、圓圖、點圖)應與資料性質匹配,并使數軸上刻度值的標法符合數學原則。⑥照片圖要求有良好的清晰度和對比度;人體標本照片在圖內應有尺度標記;病理照片要求注明染色方法和放大倍數。⑦高效液相色譜圖峰形和橫坐標標值線要清晰;一律不用縱坐標,橫坐標單位為t/min;一般成方制劑需要提供對照品、供試品、陰性對照圖;單味藥需要提供對照品和供試品圖。

2.5.3.2 表 應具有自明性,包括表序、表題、表頭、表身、表注;表為三線表,應合理安排表的縱、橫標目,組別一般為縱標目,表內數據要求同一指標保留的小數位數相同,一般比可準確測量的精度多一位。

2.5.4 討論和結論 著重討論研究結果的創新之處及從中導出的結論,包括理論依據、實際應用價值、局限性,及其對進一步研究的啟示,也可通過討論提出建議、設想或改進意見等。應將本研究結果與其他有關的研究相比較,指出本研究結果與其他相關研究結果的異同點。將本研究結論與目的聯系起來討論。不必重述已在前言和結果部分詳述過的數據或資料。

2.6 理論研究類論文

是指對有關學術理論作專題研究后所作的報告。如在借鑒新學科理論和方法后,對傳統理論有了新的見解,加以論述;通過對某一專題文獻的整理,對該問題有了較系統的認識而作進一步闡述;在積累較多實踐經驗的基礎上,對某一問題有了新的認識并加以闡述。撰寫時應做到:論點明確、論據充足、論證有力。

2.7 經驗總結

①經驗總結的引言宜介紹作者實踐歷程,即獲得經驗的背景;如系整理名老中醫經驗,則需有名老中醫簡介,包括其學術淵源及學術特點。②經驗總結的正文一般按照內容分列若干個小標題,以使讀者一目了然,得其要領。③經驗總結應與實踐密切結合,離不開典型病例的介紹,并應突出辨證論治過程。④經驗總結的文章無需結語,若有,文字宜簡潔,應是畫龍點睛之筆。

2.8 醫案

取材于案例,作者評論則以“按語”形式表達。①醫案的選材應新穎,一般集中在急癥、少見病、疑難病,或新思路、新方法、新藥物用于臨床的典型驗案。②醫案記錄應詳盡、準確,包括中醫四診資料、診斷、辨證思路、治療過程、結局。③按語應點評案中關鍵及值得大家注意之處,一般在500字以內,避免泛泛的方藥分析。

2.9 文獻綜述

綜述是查閱了某一專題在一段時期內相當數量的文獻資料,經過分析研究,選取有關情報信息,進行歸納整理,作出綜合性描述的文章。撰寫時應注意:①選題要新。即所綜述的選題必須是近期本刊未曾刊載過的。②說理要明。說理必須占有充分的文獻,處處以事實為依據,尤其是要有自己的見解。③層次要清。即在寫作時思路要清晰,前后呼應。④文獻要新,以5年內的文獻為宜,盡可能引用原始一次文獻,文獻數量以20~40條為宜。⑤篇幅以6 000字左右為宜。

2.10 層次標題及編號

①層次標題是對本段、本條主題內容的高度概括,應簡短明確。同一級別層次標題的詞組結構應盡可能相同,語氣一致。②層次標題的分級編號采用阿拉伯數字,標題層次不宜過多,一般不超過4級,即:1, 1.1, 1.1.1, 1.1.1.1。③文內同時出現多個接排序號時,應依次用圓括號數碼“1)”、“(1)”、“①”。

2.11 統計學方法

描述統計學方法時應說明所使用的統計學軟件名稱及版

本。應寫明所用統計分析方法的具體名稱(如成組設計資料的t檢驗、兩因素析因設計資料的方差分析等)和統計量的具體值(如t=3.45),并盡可能給出具體的P值(如P=0.023);當涉及到總體參數時,在給出顯著性檢驗結果的同時,再給出95%可信區間。統計學符號一律用斜體表示,如樣本大小用小寫斜體n,概率用大寫斜體P,樣本算術平均數用小寫斜體―x,標準差用小寫斜體s,t檢驗用小寫斜體t,方差分析用大寫斜體F,卡方檢驗用小寫斜體χ2,相關系數用小寫斜體r等。資料的表達與描述:用―x±s表達近似服從正態分布的定量資料,用M(QR)表達呈偏態分布的定量資料;用統計表時,要合理安排縱橫標目,并將數據的含義表達清楚。統計學分析方法的選擇:對于定量資料,應根據所采用的設計類型、資料所具備的條件和分析目的,選用合適的統計學分析方法,不應盲目套用t檢驗和單因素方差分析;對于定性資料,應根據所采用的設計類型、定性變量的性質和頻數所具備的條件及分析目的,選用合適的統計學分析方法,不應盲目套用χ2檢驗。統計結果的解釋和表達:當P

2.12 計量單位與數字

①計量單位執行國務院1984年2月頒布的《中華人民共和國法定計量單位》,具體使用可參照《法定計量單位在醫學上的應用》一書。②數字:執行GB/T 15835-1995(《出版物上數字用法的規定》),凡是可以使用阿拉伯數字而又很得體的地方,均應使用阿拉伯數字。

2.13 名詞術語與經典條文

中醫藥名詞術語應以中醫藥學名詞審定委員會審定的為準(http://.cn);經典條文出處、文字內容,包括標點務求準確。

2.14 中藥藥名

應以新版《中華人民共和國藥典》所載藥名為準。

2.15 英文縮略語

論文中首次出現英文縮略語時應給出中文全稱,后文則不再出現中文名稱。不超過4個漢字的名詞一般不使用縮略語,以免影響文章的可讀性。

2.16 基金項目

如果屬于國家或部、省級等基金或項目的研究論文,須標注基金類別及編號(請在論文首頁醒目處標注),并附基金項目證明復印件。

2.17 致謝

對給予提供工作方便或提供技術性幫助、指導的團體或個人表示感謝。文字力求簡練,評價得當,并應征得被致謝者本人同意。置于正文后、參考文獻前。

2.18 參考文獻

引用參考文獻是反映論文的科學性及學術水平的重要依據,也是作者尊重他人研究成果的體現,并可向讀者進一步提供有關信息。除了會議消息報道等簡訊外,每篇論文均應附參考文獻。作者引用的參考文獻應為親自閱讀過的、主要的、發表于正式出版物上的原始文獻。要避免引用摘要簡訊、未公開發表或在非正式出版物上發表的文獻;若確有必要引用,可用括號插入正文,并應征得原作者的書面許可。著錄格式執行GB/T 7714-2005《文后參考文獻著錄規則》。基于標準中文獻種類較多,且采用專業用語進行描述,不易理解和掌握,舉例說明。

2.18.1 連續出版物(期刊)

[序號] 主要責任者.文獻題名[J].刊名,出版年份,卷號(期號):起頁-止頁.

[1] 袁慶龍,侯文義.Ni-P合金鍍層組織形貌及顯微硬度研究[J].太原理工大學學報,2001,32(1):51-53.

2.18.2 專著

[序號] 主要責任者.文獻題名[M].版次.出版地:出版者,出版年:起頁-止頁.

[1] 劉國鈞,鄭如斯.中國書的故事[M].2版.北京:中國青年出版社, 1979:115.

2.18.3 古籍

[序號] 朝代?主要責任者.文獻題名[M].版本.出版地:出版者,出版年:起頁-止頁.

[1] 黃帝內經素問[M].影印顧從德刻本.北京:人民衛生出版社,1956:31.

[2] 吳毓江.墨子校注[M].孫啟治點校.北京:中華書局,1993:615.

[3] 清?王清任.醫林改錯[M].李天德整理.北京:人民衛生出版社,2005:68.

2.18.4 外文專著(期刊)

[序號] 原著主要責任者.文獻題名[M].第一譯者,譯.出版地:出版者,出版年:起頁-止頁.

[1] Seth A. Spector. 外科學[M].劉淑芬,譯.天津:天津科技翻譯出版公司,2008:16.

2.18.5 報紙文章

[序號] 主要責任者.文獻題名[N].報紙名,出版年,月(日):版次.

[1] 謝希德.創造學習的思路[N].人民日報,1998,12(25):10.

2.18.6 電子文獻

[序號] 主要責任者.電子文獻題名[文獻類型/載體類型].[發表或更新日期或引用日期].獲取和訪問路徑.

[1] 姚伯元.畢業設計規范化管理與培養學生綜合素質[EB/OL].

[2005-02-02].http:///.

2.18.7 專利文獻

[序號] 專利所有者.專利題名:專利國別.專利號[P],日期.

[1] 姜錫洲.一種溫熱外敷藥制備方案:中國專利.881056078[P], 1983-08-12.

2.18.8 國際、國家標準

[序號] 責任者.標準代號 標準名稱[S].出版地:出版者,出版年.

[1] 全國文獻工作標準化技術委員會第七分委員會.GB/T 5795-1986 中國標準書號[S].北京:中國標準出版社,1996.

2.18.9 析出文獻

[序號] 析出文獻責任者.析出題名[文獻類型]//原文獻責任者.專著題名.出版地:出版者,出版年:起頁-止頁.

[1] 羅云.安全科學理論體系的發展及趨勢探討[M]//白春華,何學秋,吳宗之.21世紀安全科學與技術的發展趨勢.北京:科學出版社,2000:1-5.

2.18.10 學位論文、論文集、報告

[序號] 主要責任者.文獻題名[文獻型].出版地:出版者,出版年.

[1] 張筑生.微分半動力系統的不變集[D].北京:北京大學數學研究所,1983.

[2] 辛希孟.信息技術與信息服務國際研討會論文集:A集[C].北京:中國社會科學出版社,1994.

[3] 馮西橋.核反應堆壓力管道與壓力容器的LBB分析[R].北京:清華大學核能技術設計研究院,1997.

附:參考文獻著錄中的文獻類型代碼

第10篇

本系統主要完成對圖書倉庫的庫存管理,包括圖書入庫、出庫、庫存,員工信息,供應商信息以及密碼管理等六個方面。系統可以完成對各類信息的瀏覽、查詢、添加、刪除、修改、報表等功能。

系統的核心是入庫、庫存和出庫三者之間的聯系,每一個表的修改都將聯動的影響其它的表,當完成入庫或出庫操作時系統會自動地完成庫存的修改。查詢功能也是系統的核心之一,在系統中即有單條件查詢和多條件查詢,也有精確查詢和模糊查詢,系統不僅有靜態的條件查詢,也有動態生成的條件查詢,其目的都是為了方便用戶使用。系統有完整的用戶添加、刪除和密碼修改功能,并具備報表打印功能。

系統采用microsoft office中的access 2000來設計數據庫,并使用當前優秀的開發工具—delphi 6.0 ,它有著最為靈活的數據庫結構,對數據庫應用有著良好的支持。

論文主要介紹了本課題的開發背景,所要完成的功能和開發的過程。重點的說明了系統設計的重點、設計思想、難點技術和解決方案。

關鍵字:數據庫,sql語言,delph 6,數據庫組件,倉庫管理

目  錄

第一章 引言 ……………………………………………………………………………1

1.1  課題來源 ……………………………………………………………………1

1.2  開發工具的選擇  ……………………………………………………………2

1.3  所做的主要工作  ……………………………………………………………3

第二章 數據庫概論 ……………………………………………………………………4

2.1  數據庫的發展  ………………………………………………………………4

   2.1.1  數據庫的發展 …………………………………………………………4

   2.1.2  數據庫階段的特點 ……………………………………………………5

   2.1.3  數據庫技術 ……………………………………………………………6

2.2  數據庫理論基礎  ……………………………………………………………7

   2.2.1  數據庫模型 ……………………………………………………………7

   2.2.2  數據庫體系結構    ……………………………………………………10

   2.2.3  數據的獨立性  ………………………………………………………11

   2.2.4  范式  …………………………………………………………………11

2.3  sql語言基礎   ……………………………………………………………13

   2.3.1  sql簡介  ……………………………………………………………13

   2.3.2  sql查詢    ……………………………………………………………13

   2.3.3  sql數據更新    ………………………………………………………14

第三章數據庫開發工具  ……………………………………………………………16

3.1  delphi 6.0 簡介  ……………………………………………………………16

3.2  delphi 6.0 控件  ……………………………………………………………17

3.2.1  ado數據訪問組件   …………………………………………………17

   3.2.2  數據控制類datacontrol    ……………………………………………18

   3.2.3  數據訪問類dataaccess     ……………………………………………18

   3.2.4  sql語言在delphi中的應用    ………………………………………19

3.3  access 簡介    ………………………………………………………………21

第四章 系統總體設計   ………………………………………………………………23

4.1 系統需求分析     ……………………………………………………………23

4.2 系統概要設計     ……………………………………………………………25

   4.2.1  系統結構設計    ………………………………………………………25

   4.2.2  數據庫設計    …………………………………………………………27

       4.2.2.1  er圖設計  ……………………………………………………27

       4.2.2.2  數據庫表格設計………………………………………………29

4.3系統詳細設計………………………………………………………………34

第五章 系統應用程序設計  …………………………………………………………37

5.1  系統窗體模塊組成…………………………………………………………37

5.2  數據模塊窗體設置…………………………………………………………38

5.3  主窗體功能模塊的實現……………………………………………………39

5.4  入庫、出庫窗體模塊的實現………………………………………………43

5.5  查詢功能的實現……………………………………………………………51

5.6  系統登陸窗體模塊的實現…………………………………………………52

5.7  用戶管理功能的實現………………………………………………………54

   5.7.1  用戶管理主窗體  ……………………………………………………54

5.7.2  密碼修改窗體模塊的實現    …………………………………………54

   5.7.3  用戶注冊窗體模塊的實現    …………………………………………55

   5.7.4  用戶注銷窗體模塊的實現    …………………………………………57

結束語 …………………………………………………………………………………59

致謝 ……………………………………………………………………………………60

參考文獻 ………………………………………………………………………………61

第一章    引  言  

§1.1   課題來源

隨著社會經濟的迅速發展和科學技術的全面進步,計算機事業的飛速發展,以計算機與通信技術為基礎的信息系統正處于蓬勃發展的時期。隨著經濟文化水平的顯著提高,人們對生活質量及工作環境的要求也越來越高。書籍做為人類的精神食糧,在現代社會中越來越受到重視,大量的書籍出現在市場上,人們有了各種各樣不同的選擇。與此同時,為了管理大量的圖書,圖書倉庫也大量的出現,倉庫的管理問題也就提上了日程。隨著圖書的大量增加,其管理難度也越來越大,如何優化倉庫的日常管理也就成為了一個大眾化的課題。

在計算機飛速發展的今天,將計算機這一信息處理利器應用于倉庫的日常管理已是勢必所然,而且這也將為倉庫管理帶來前所未有的改變,它可以帶來意想不到的效益,同時也會為企業的飛速發展提供無限潛力。采用計算機管理信息系統已成為倉庫管理科學化和現代化的重要標志,它給企業管理來了明顯的經濟效益和社會效益。主要體現在:

極大提高了倉庫工作人員的工作效率,大大減少了以往入出存流程繁瑣,雜亂,周期長的弊端。

基于倉庫管理的全面自動化,可以減少入庫管理、出庫管理及庫存管理中的漏洞,可以節約不少管理開支,增加企業收入。

倉庫的管理的操作自動化和信息的電子化,全面提高了倉庫的管理水平。

隨著我國改革開放的不斷深入,經濟飛速的發展,企業要想生存、發展,要想在激烈的市場競爭中立于不敗之地,沒有現代化的管理是萬萬不行的,倉庫管理的全面自動化、信息化則是其中極其重要的部分。為了加快倉庫管理自動化的步伐,提高倉庫的管理業務處理效率,建立倉庫管理系統已變得十分心要。

入庫、庫存、出庫還是現在企業圖書倉庫管理的常規基本模式,雖然,最近又出現了很多新的管理模式,如:基于零庫存思想的沃爾瑪特管理方式,但這些新的思想在

第二章    數據庫概論

§2.1     數據庫的發展

數據庫處理在信息系統的研究中一直是非常重要的主題,然而,近年來,隨著world wide web(/yingyongwengao/" target="_blank" title="">應用超越具有早期應用特點的簡單的。同時,internet技術提供了一種向用戶數據庫內容的標準化的訪問方法。這些技術沒有脫離經典數據庫技術的要求。它們只是加重了數據庫技術的重要性。

數據庫的設計和開發及包括藝術有包括工程。理解用戶的需求,然后,把它們轉變為有效的數據庫設計是一個藝術過程。把設計轉變為實際的數據庫,并且這些數據庫帶有功能完備、高效能的應用,是一個工程過程。

數據庫的目的是幫助人們跟蹤事務。經典的數據庫應用涉及諸如訂單、顧客、工作、員工、學生、電話之類的項,或其它數據量較大、需要密起關注的事務。最近,由于數據庫的普及,數據庫技術已經被應用到了新的領域,諸如用于internet的數據庫或用于公司內聯網的數據庫。數據庫也被越來越多地應用于生成和維護多媒體應用程序上。

計算機的數據處理應用,首先要把大量的信息以數據形式存放在存儲器中。存儲器的容量、存儲速率直接影響到數據管理技術的發展。從1956年生產出第一臺計算機到現在,存儲器的發展,為數據庫技術提供了良好的物質基礎。

使用計算機以后,數據處理的速度和規模,無論是相對于手工方式,還是機械方式,都有無可比擬的優勢。通常在數據處理中,計算是比較簡單的而數據的管理卻比較復雜。數據管理是指數據的收集、整理、組織、存儲、維護、檢索、傳送等操作,這部分操作是數據處理業務的基本環節,而且是任何數據處理業務中必不可少的共有部分。數據管理技術的優劣,將直接影響數據處理的效率。

2.1.1  數據庫的發展

數據管理技術的發展,與硬件(主要是外存)、軟件、計算機應用的范圍有密切的聯系。數據管理技術的發展經過三個階段:人工管理階段、文件系統階段和數據庫階段。

人工管理階段和文件系統階段都有著相當多的缺陷,諸如數據冗余性 ,數據不一致性以及數據聯系弱等等。也正是由于這些原因,促使人們研究新的數據管理技術,從而產生了數據庫技術。

20世紀60年代末發生的三件大事,層次模型ims系統的推出、關于網狀模型dbtg報告的發表以及關于關系模型論文的連續發表標志著數據管理技術進入數據庫階段。進入70年代以后,數據庫技術得到迅速發展,開發了許多有效的產品并投入運行。數據庫系統克服了文件系統的缺陷,提供了對數據更高級更有效的管理。

當進入數據庫階段后,隨著數據管理規模一再擴大,數據量急劇增加,為了提高效率,開始時,人們只是對文件系統加以擴充,在應用文件中建立了許多輔助索引,形成倒排文件系統。但這并不能最終解決問題。在20世紀60年代末,磁盤技術取得重要進展,具有數百兆容量和快速存取的磁盤陸續進入市場,成本也不高,為數據庫技術的產生提供了良好的物質條件。

2.1.2  數據庫階段的特點

(1)減少數據的重復(redundancy can be reduced)

當在一個非數據庫系統當中,每一個應用程序都有屬于他們自己的文件,由于無法有系統建立的數據,因此常常會造成存儲數據的重復與浪費。例如:在一家公司當中,人事管理程序與工資管理程序或許都會使用到職員與部門的信息或文件,而我們可以運用數據庫的方法,把這兩個文件整理起來,以減少多余的數據,過度地占用存儲空間。

(2)避免數據的不一致(inconsistency can avoid)

本項的特色,可以說是延伸前項的一個特點,要說明這樣的一個現象,我們可以從下面這個實例來看:若是在同一家公司當中,職員甲在策劃部門工作,且職員甲的記錄同時被存放在數據庫的兩個地方,而數據庫管理系統卻沒有對這樣重要的情況加以控制,當其中一條數據庫被修改時,便會造成數據的不一致,但是,對于一個健全的數據庫管理系統而言,將會對這樣的情況加以控制,但有時并不需要刻意消除這種情形,應當視該數據庫的需求與效率來決定。                      

(3)數據共享(data shared)

對于數據共享的意義,并不是只有針對數據庫設計的應用程序,可以使用數據庫中的數據,對于其他撰寫好的應用程序,同樣可以對相同數據庫當中的數據進行處理,進而達到數據共享的目的。

(4)強化數據的標準化(standard can be enforced)

由數據庫管理系統,對數據做出統籌性的管理,對于數據的格式與一些存儲上的標準進行控制,如此一來,對于不同的環境的數據交換(data interchange)上將有很大的幫助,也能提高數據處理的效率。

(5)實踐安全性的管理(security restriction can be applied)

通過對數據庫完整的權限控制,數據庫管理者可以確認所有可供用戶存取數據的合法途徑渠道,并且可以事先對一些較重要或關鍵性的數據進行安全檢查,以確保數據存取時,能夠將任何不當損毀的情形降至最低。

(6)完整性的維護(integrity can be maintained)

所謂完整性的問題,就是要確認某條數據在數據庫當中,是正確無誤的。正如(2)所述,若是無法控制數據的不一致性,便會產生完整性不足的問題,所以,我們會發現,當數據重復性高的時候,數據不完整的情形也會增加,當然,若是數據庫的功能完整,將會大大地提高數據完整性,也會增加數據庫的維護能力與維護簡便性。

(7)需求沖突會獲得平衡(conflicting requirements can be balance)

在一個較大型的企業當中,用戶不同的需求,往往會造成系統或數據庫在設計上的困擾,但是一個合適的數據庫系統,可以通過數據庫管理員的管理,將會有效地整理各方面的信息,對于一些較重要的應用程序,可以適時地提供較快速的數據存取方法與格式,以平衡多個用戶在需求上的沖突。

上述七個方面構成了數據庫系統的主要特征。這個階段的程序和數據間的聯系可用下圖表示: 2.1.3  數據庫技術

從文件系統發展到數據庫系統是信息處理領域的一個重大變化。在文件系統階段,人們關注的中心問題是系統功能的設計,因而程序設計處于主導地位,數據只起著服從程序需要的作用。在數據庫方式下,信息處理觀念已為新體系所取代,數據占據了中心位置。數據結構的設計成為信息系統首先關心的問題,而利用這些數據的應用程序設計則退居到以既定的數據結構為基礎的外圍地位。

目前世界上已有數百萬個數據庫系統在運行,其應用已經深入到人類社會生活的各個領域,從企業管理、銀行業務、資源分配、經濟預測一直到信息檢索、檔案管理、普查統計等。并在通信網絡基礎上,建立了許多國際性的聯機檢索系統。我國20世紀90年代初在全國范圍內裝備了12個以數據庫技術為基礎的大型計算機系統,這些系分布在郵電、計委、銀行、電力、鐵路、氣象、民航、情報、公安、軍事、航天和財稅等行業。

數據庫技術還在不斷的發展,并且不斷地與其它計算機技術相互滲透。數據庫技術與網絡通信技術相結合,產生了分布式數據庫系統。數據庫技術與面向對象技術相結合,產生了面向對象數據庫系統。

在數據庫技術中有四個名詞,其概念應該分清。

(1)數據庫(database,db):db是統一管理的相關數據的集合。db能為各種用戶共享,具有最小冗余度,數據間聯系密切,而又有較高的數據獨立性。

(2)數據庫管理系統(database management system,dbms):dbms是位于用戶與操作系統之間的一層數據管理軟件,為用戶或應用程序提供訪問db的方法,包括db的建立、查詢、更新及各種數據控制。dbms總是基于某種數據模型,可以分為層次型、網狀型、關系型和面向對象型dbms。

(3)數據庫系統(database system,dbs):dbs是實現有組織地、動態地存儲大量關聯數據,方便多用戶訪問的計算機軟件、硬件和數據資源組成的系統,即采用了數據庫技術的計算機系統。

(4)數據庫技術:這是一門研究數據庫的結構、存儲、管理和使用的軟件學科。數據庫技術是操作系統的文件系統基礎上發展起來的。而dbms本身要在操作系統的支持下才能工作。數據庫不僅用到數據結構的知識,而且豐富了數據結構的內容。在關系數據庫中要用到集合論、數理邏輯的理論。因此,數據庫技術是一門綜合性較強的學科。

§2.2數據庫理論基礎

2.2.1  數據庫模型

從20世紀50年代中期開始,計算機的應用由科學研究部門逐步擴展到企業、行政部門。至60年代,數據處理成為計算機的主要應用。數據庫技術作為數據管理技術,是計算機軟件領域的一個重要分支,產生于60年代末。現已形成相當規模的理論體系和實用技術。

模型是對現實世界的抽象。在數據庫技術中,我們用模型的概念描述數據庫的結構與語義,對現實世界進行抽象,表示實體類型及實體間聯系的模型稱為“數據模型” 。

目前廣泛作用的數據模型可分為兩種類型。

一種是獨立于計算機系統的模型,完全不涉及信息在系統中的表示,只是用來描述某個特定組織所關心的信息結構,這類模型稱為“概念數據模型” 。要領模型用于建立信息世界的數據模型,強調其語義表達功能,應該概念簡單、清晰,易于用戶理解,它是現實世界的第一層抽象,是用戶和數據庫設計人員之間進行交流的工具。這一其中著名的模型是“實體聯系模型” 。

另一種數據模型是直接面向數據庫的邏輯結構,它是現實世界的第二層抽象。 這類模型涉及到計算機系統和數據庫管理系統,又稱為“結構數據模型” 。例如,層次、網狀、關系、面向對象等模型。這類模型有嚴格的形式化定義,以便于在計算機系統中實現。

(1)層次模型。用樹型結構表示實體類型及實體間聯系的數據模型。樹的結點是記錄類型,每個非根結點有且只有一個父結點。上一層記錄類型和下一層記錄類型間聯系是1∶n聯系。

層次模型的特點是記錄之間的聯系通過指針實現,查詢效率較高。但層次模型有兩個缺點:一是只能表示1∶n聯系,雖然有多種輔助手段實現了m∶n聯系,但都較復雜,用戶不易掌握,二是由于樹型結構層次順序的嚴格和復雜,引起數據的查詢和更新操作也很復雜,因此,編寫應用程序也很復雜。

(2)網狀模型。用有向圖結構表示實體類型及實體間聯系的數據模型。。1969年dbtg報告提出的數據模型是網狀模型的主要代表。有向圖中的結點是記錄類型,有向邊表示從箭尾一端的記錄類型到箭頭一端的記錄類型間聯系是1∶n聯系。

網狀模型的特點:記錄之間聯系通過指針實現,m∶n聯系也容易實現(每個m∶n聯系可拆成兩個1∶n聯系),查詢效率較高。網狀模型的缺點是編寫應用程序比較復雜,程序員必須熟悉數據庫的邏輯結構。由于層次系統和網狀系統的應用程序編制比較復雜,因此,從20世紀80年代中期起,其市場已被關系系統所取代。但是使用這兩種模型建立起的許多數據庫仍然在正常運轉,只是在外層加了個關系數據庫語言的接口。網狀模型有許多成功的產品,20世紀70年代的產品大部分網狀系統,例如,honeywell公司的ids/ⅱ、hp公司的image/3000、burroughs公司的dmsⅱ、umivac公司的dms1100、cullinet公司的idms、cimcom公司的total等

(3)關系模型。關系模型的主要是用二維表格結構表達實體集,用外鍵表示實體間聯系。關系模型是由若干個關系模式組成的集合。關系模式相當于前面提到的記錄類型,它的實例稱為關系,每個關系實際上是一張二維表格。

關系模型和層次、網狀模型的最大判別是用關鍵碼而不是用指針導航數據,表格簡單用戶易懂,編程時并不涉及存儲結構,訪問技術等細節。關系模型是數學化模型。sql語言是關系數據庫的標準化語言,已得到了廣泛的應用。20世紀70年代對關系數據庫的研究主要集中在理論和實驗系統的開發方面。80年代初才形成產品,但很快得到廣泛的應用和普及,并最終取代了層次、網狀數據庫產品。現在市場上典型的關系dbms產品有db2、oracle、sybase、informix和微機型產品foxpro、access等。

關系模型和網狀、層次模型的最大區別是:關系模型用表格數據而不是通過指針鏈來表示和實現實體間聯系。關系模型的數據結構簡單、易懂。只需用簡單的查詢語句就可對數據庫進行操作。

關系模型是數學化的模型,可把表格看成一個集合,因此集合論、數理邏輯等知識可引入到關系模型中來。關系模型已是一個成熟的有前途的模型,已得到廣泛應用。

(4)面向對象模型。目前,關系數據庫的使用已相當普遍,但是,現實世界中仍然存在著許多含有復雜數據結構的應用領域,例如,cad數據、圖形數據等,而關系模型在這方面的處理能力就顯得力不從心。因此,人們需要更高級的數據庫技術來表達這類信息。面向對象的概念最早出現在程序設計語言中,隨后迅速滲透到計算機領域的每一個分支。面向對象數據庫是面向對象概念與數據庫技術相結合的產物。

面向對象模型能完整地描述現實世界的數據結構,具有豐富的表達能力,但模型相對較復雜,涉及的知識面也廣,因此面向對象數據庫尚未達到關系數據庫那樣的普及程度。

2.2.2  數據庫體系結構

數據庫的體系結構分三級:內部級(internal),概念級(conceptual)和外部級(external)。這個三級結構有時也稱為“三級模式結構”,或“數據抽象的三個級別”,最早是在1971年通過的dbtg報告中提出,后來收入在1975年的美國ansi/sparc報告中。雖然現在dbms的產品多種多樣,在不同的操作系統支持下工作,但是大多數系統在總的體系結構上都具有三級模式的結構特征。從某個角度看到的數據特性稱為“數據視圖”(data view)。

外部級最接近用戶,是單個用戶所能看到的數據特性。單個用戶使用的數據視圖的描述稱為“外模式”。

概念級涉及到所有用戶的數據定義,是全局的數據視圖。全局數據視圖的描述稱為“概念模式”。

內部級最接近于物理存儲設備,涉及到實際數據存儲的結構。物理存儲數據視圖的描述稱為“內模式”。

數據庫的三級模式結構是數據的三個抽象級別。它把數據的具體組織留給dbms去做,用戶只要抽象地處理數據,而不必關心數據在計算機中的表示和存儲,這樣就減輕了用戶使用系統的負擔。

三級結構之間往往差別很大,為了實現這三個抽象級別的聯系和轉換,dbms在三級結構之間提供兩個層次的映象(mappings):外模式/模式映象,模式/內模式映象。此處模式是概念模式的簡稱。

2.2.3  數據的獨立性

由于數據庫系統采用三級模式結構,因此系統具有數據獨立性的特點。在數據庫技術中,數據獨立性是指應用程序和數據之間相互獨立,不受影響。數據獨立性分成物理數據獨立性和邏輯數據獨立性兩級。

(1)物理數據獨立性

如果數據庫的內模式要進行修改,即數據庫的存儲設備和存儲方法有所變化,那么模式/內模式映象也要進行相當的修改,使概念模式盡可能保持不變。也就是對內模式的修改盡量不影響概念模式,當然,對于外模式和應用程序的影響更小,這樣,我們稱數據庫達到了物理數據獨立性。

(2)邏輯數據獨立性

如果數據庫的概念模式要進行修改,譬如增加記錄類型或增加數據項,那么外模式/模式映象也要進行相應的修改,使外模式盡可能保持不變。也就是對概念模式的修改盡量不影響外模式和應用程序,這樣,我們稱數據庫達到了邏輯數據獨立性。

現有關系系統產品均提供了較高的物理獨立性,而對邏輯獨立性的支持尚有欠缺,例如,對外模式的數據更新受到限制等。

2.2.4  范式

建立起一個良好的數據指標體系,是建立數據結構和數據庫的最重要的一環。一個良好的數據指標體系是建立db的必要條件,但不是充分條件。我們完全可以認為所建指標體系中的一個指標類就是關系數據庫中的一個基本表,而這個指標類下面的一個個具體指標就是這個基本表中的一個字段。但如果直接按照這種方式建庫顯然還不能算最佳。對于指標體系中數據的結構在建庫前還必須進行規范化的重新組織。

在數據的規范化表達中,一般將一組相互關聯的數據稱為一個關系(relation),而在這個關系下的每個數據指標項則被稱為數據元素(data element),這種關系落實到具體數據庫上就是基本表,而數據元素就是基本表中的一個字段(field)。規范化表達還規定在每一個基本表中必須定義一個數據元素為關鍵字(key),它可以唯一地標識出該表中其它相關的數據元素。在規范化理論中表是二維的,它有如下四個性質:

在表中的任意一列上,數據項應屬于同一個屬性(如圖中每一列都存放著不同合同記錄的同一屬性數據)。

表中所有行都是不相同的,不允許有重復組項出現(如圖中每一行都是一個不同的合同記錄)。

在表中,行的順序無關緊要(如圖中每行存的都是合同記錄,至于先放哪一個合同都沒關系)。

在表中,列的順序無關緊要,但不能重復(如圖中合同號和合同名誰先誰后都沒關系,但二者不可重復或同名)。

在對表的形式進行了規范化定義后,數據結構還有五種規范化定義,定名為規范化模式,稱為范式。在這五種范式中,一般只用前三種,對于常用系統就足夠了。而且這五種范式是“向上兼容”的,即滿足第五范式的數據結構自動滿足一、二、三、四范式,滿足第四范式的數據結構自動滿足第一、二、三范式,……,依此類推。

第一范式(first normal form,簡稱1st nf)就是指在同一表中沒有重復項出現,如果有則應將重復項去掉。這個去掉重復項的過程就稱之為規范化處理。在本文所討論的開發方法里,1st nf實際上是沒有什么意義的。因為我們按規范化建立的指標體系和表的過程都自動保證了所有表都滿足1st nf。

第二范式(second normal form,簡稱 2nd nf)是指每個表必須有一個(而且僅一個)數據元素為主關鍵字(primary key),其它數據元素與主關鍵字一一對應。例如,在圖l9.7中如果我們將合同號定義為主關鍵字(其它數據元素中的記錄數據都有可能重名,故不能作為主關鍵字),故只要知道了一個合同記錄的合同號,就可以唯一地在同一行中找到該合同的任何一項具體信息。通常我們稱這種關系為函數依賴(functional dependence)關系。即表中其它數據元素都依賴于主關鍵字,或稱該數據元素唯一地被主關鍵字所標識。

第三范式(third normal form,簡稱 3rd nf)就是指表中的所有數據元素不但要能夠唯一地被主關鍵字所標識,而且它們之間還必須相互獨立,不存在其它的函數關系。也就是說對于一個滿足了 2nd nf的數據結構來說,表中有可能存在某些數據元素依賴于其它非關鍵宇數據元素的現象,必須加以消除。

為防止數據庫出現更新異常、插入異常、刪除異常、數據冗余太大等現象,關系型數據庫要盡量按關系規范化要求進行數據庫設計。

§2.3 sql語言基礎

2.3.1  sql簡介

用戶對數據庫的使用,是通過數據庫管理系統提供的語言來實現的。不同的數據庫管理系統提供不同的數據庫語言。關系數據庫管理系統幾乎都提供關系數據庫標準語言——sql。

sql 的全稱是structured query language,即結構化查詢語言。sql語句可以從關系數據庫中獲得數據,也可以建立數據庫、增加數據、修改數據。1986年ansi采用sql語言作為關系數據庫系統的標準語言,后被國際化標準組織(iso)采納為國際標準。sql語言使用方便、功能豐富、簡潔易學,是操作數據庫的工業標準語言,得到廣泛地應用。例如關系數據庫產品db2、oracle等都實現了sql語言。同時,其它數據庫產品廠家也紛紛推出各自的支持sql的軟件或者與sql的接口軟件。這樣sql語言很快被整個計算機界認可。

sql語言是一種非過程化語言,它一次處理一個記錄集合,對數據提供自動導航。sql語言允許用戶在高層的數據結構上工作,而不對單個記錄進行操作。sql語言不要求用戶指定數據的存取方法,而是使用查詢優化器,由系統決定對指定數據存取的最快速手段。當設計者在關系表上定義了索引時,系統會自動利用索引進行快速檢索,用戶不需知道表上是否有索引或者有什么類型的索引等細節。

sql語言可以完成許多功能,例如:

查詢數據

在數據庫表格中插入、修改和刪除記錄

建立、修改和刪除數據對象

控制對數據和數據對象的存取

確保數據庫的一致性和完整性等

2.3.2  sql查詢

數據查詢是關系運算理論在sql語言中的主要體現,select 語句是sql查詢的基本語句,當我們在對一個數據庫進各種各樣的操作時,使用的最多的就是數據查詢,在以sql為基礎的關系數據庫中,使用的最多的就是select查詢語句。

select語句的完整句法如下:

select 目標表的列名或列表達式序列

from   基本表和(或)視圖序列

[where 行條件表達式]

[group by 列名序列]

[having 組條件表達式]

[order by列名 [asc│deac]…]

我在select語句中還使用了大量的保留字和通配符以進行各種各樣的條件查詢。在系統中有大量的查詢按鈕,其使用了大量的查詢語句,而且這些查詢語句大部分使用的是模糊查詢,所以大量的使用了模式匹配符like(判斷值是否與指定的字符通配格式相符)。在包含like的查詢語句中可以使用兩個通配符:%(百分號):與零個或多個字符組成的字符串匹配;_(下劃線):與單個字符匹配。系統中的條件判斷往往包含多個條件,這時就需要使用邏輯運算符not、and、or(用于多條件的邏輯連接),謂詞all以及保留字distinct等等。做為select語句還有很多的使用方法,這里就不再敘述。

2.3.3  sql數據更新

使用數據庫的目的是為了有效地管理數據,而數據的插入、刪除和修改則是必不可少的一個功能。在本系統中就大量地使用了數據插入、刪除和修改這三種操作,現做一個簡單地介紹。

數據插入

往數據庫的基本表中插入數據使用的是insert語句,其方式有兩種:一種是元組值的插入,另一種是查詢結果的插入。在本系統中使用的是前一種方式,其句法如下:

insert into 基本表名(列表名)values(元組值)

數據刪除

往數據庫的基本表中刪除數據使用的是delete語句,其句法如下:

delete from 基本表名 [where 條件表達式]

在些作一點說明,刪除語句實際上是“select * from 基本表名 [where 條件表達式]”和delete操作的結合,每找到一個元組,就把它刪除。此外,delete語句只能從一個基本表中刪除元組,where子句中條件可以嵌套,也可以是來自幾個基本表的復合條件。

數據修改

當需要修改基本表中元組的某些列值時,可以用update語句實現,其句法如下:

update基本表名

set列名=值表達式[,列名=值表達式…]

[where條件表達式]

在delphi中使用sql語句是很方便的,一般來說,都是通過tquery組件來使用sql語言的。有一點要進行說明,雖然通過tquery組件來使用sql語言很方便,但考慮到自己對不同組件的理解程度、個人習慣以及其它各個方面,在本系統中我采用的是ado組件來對數據庫進行操作。最簡單的方法比如在tadoquery組件的sql屬性中就可以鍵入sql語句,至于詳細的使用方法在后面進行介紹。

第三章    數據庫開發工具

§3.1 delphi 6.0 簡介

delphi類可以粗略地分成兩部分:一部分是組件類,這些組件類通常以某種方式出現在組件面板上,當用戶從組件面板上點取一個類的圖標后,在程序中就自動生成了該類的對象(非可視組件除外);另一部分是功能類,這此功能類的對象通常出現在程序代碼中,起著不可代替的作用,但是這些功能類在組件面板上是找不到的。在delphi中,每一個類的祖先都是tobject類,整個類的層次結構就像一棵倒掛的樹,在最頂層的樹根即為tobject類。這樣,按照面向對象編程的基本思想,就使得用戶可用tobject類這個類型代替任何其它類的數據類型。實際上在delphi的類庫中,tobject類派生出了為數相當眾多的子類,它們形成了一個龐大的體系,通常情況下,如果不自行開發組件,就不必了解整個類的體系結構,只用到類層次樹的葉結點就足夠了。

凡是做過程序開發的人都知道從來沒有單純的數據應用程序,也就是說,數據庫應用程序必須和用戶界面(可以是圖形界面,也可以是命令接口)元素相結合,只講界面或只講數據庫本身都構不成數據庫應用程序,因而用delphi 6.0開發數據庫應用程序就隱含著界面開發。delphi6中的vcl組件可用圖3-1來說明。組件在delphi程序的開發中是最顯眼的角色。大家知道,在編寫程序時一般都開始于在組件面板上選擇組件并定義組件間的相互作用。但也有一些組件不在組件面板上,例如tform和tapplication(典型的非可視組件)。組件是tcomponents派生出來的子類,可以流的形式存放在dfm文件中,具有事件和publish屬性。

窗口組件類是窗口化的可視化組件類,在delphi的類庫中占有最大的份額。在實際編程中,窗口組件類的對象都有句柄,可以接受輸入焦點和包含其它組件。

圖形組件與窗口組件并列,是另一大類組件。圖形組件不是基于窗口的,因而不能有窗口句柄,不能接受輸入焦點和包含其它組件。從圖8-43中可以看出,圖形組件的基類是tgraphiccontrol,在實際編程中,它們必須寄生于它們的宿主——窗口組件類的對象,由它們的擁有者負責其顯示,而且它們還能觸發一些和鼠標活動相關的事件。圖形控件最典型的例子是tlabel和tspeedbutton。由此可以看出圖形組件的功能很弱,有讀者會問圖形組件的用處何在呢?其實使用圖形組件的最大好處在于節省資源,正是因為它們的功能較弱,所以使用的系統資源就要少。在一個應用程序中,如果能在不影響其功能的前提下合理大量地使用圖形組件,將會大減少程序對系統資源的消耗。

非可視組件是與可視組件相并列的另一類組件,非可視組件在程序運行中是不可見的(除各種對話框組件之外,事實上有人認為對話框組件不能歸入非可視組件,應該是另一種介于可視與非可視之間的組件)。

§3.2 delphi 6.0 控件

用delphi6開發數據庫應用,重點是和各種數據庫組件打交道,當然也要使用其它的一些組件,現在就我在系統設計中所使用的重要組件給與簡單介紹。

3.2.1  ado數據訪問組件

ado數據對象(active data objects)實際是一種提供訪問各種數據類型的鏈接機制。ado設計為一種極簡單的格式,通過odbc的方法同數據庫接口中,可以使用任何一種odbc數據源,即不止適合于sql server、oracle、access等數據庫應用程序,也適合于excel表格、文本文件、圖形文件和無格式的數據文件。ado是基于ole-db之上的技術,因此ado通過其內部的屬性和方法提供統一的數據訪問接口方法。ado使您的客戶端應用程序能夠通過ole db提供訪問和操作在數據庫服務器中的數據。ado支持用于建立c/s和web的應用程序的主要功能。其主要優點是易于使用、高速度、低內存支出和占用磁盤空間較少。ado同時具有遠程數據服務(rds)功能,通過rds可以在一次往返過程中實現將數據從服務器移動到客戶端應用程序和web頁、在客戶端對數據進行處然后將更新結果返回服務器的操作。

delphi 6.0繼續對microsoft的ado訪問能力的支持。這種能力是通過一組新組件實現的,這些組件是在企業版的ado組件頁中,在組件面版的ado頁上可以找到這些組件。利用在前面章節提到的tdataset抽象類,ado組件可以不通過bde而直接實現ado連接。這意味著只需要很少的代碼就可以實現該連接并且性能得到提高。

利用ado數據訪問組件,可以只使用ado結構與數據庫取得聯系并對其中的數據進行操作,而在這些過程中完全不需要使用bde。大多數的ado連接和數據集組件都是與基于bde的連接和數據集組件相類似的。tadoconnection組件與基于bde的應用程序中的tdatabase組件類似。tadotable與ttable,tadoquery與tquery,以及tadostoreproc和tstoredproc之間都具有這種類似的對應關系。使用這些ado組件的方式與我們常使用的數據訪問組件(基于bde)都有許多相同之處。ttadodataset沒有直接的bde對應組件,但它提供了許多與ttable和tquery相同的功能。同樣,tadocommand也沒有相對應的bde組件,它是在delphi/ado環境中完成特定功能的組件。delphi 6.0通過ado數據集訪問組件,可以不借助bde數據引擎而是通過微軟的oledb來訪問更為廣泛的數據庫中的數據。ado數據集訪問組件與常用的數據訪問組件是并列的關系。

在系統中我主要使用的是adotablet和adoquery兩個組件。

3.2.2  數據控制類datacontrol

數據控制類負責數據庫數據的顯示,并把用戶對數據的修改傳回。這里的絕大多數組件,如dbtext, dbedit,  dbmemo, dbimage, dblistbox, dbcombobox, dbcheckbox, dbradiogroup, dblookuplistbox, dblookupcombox, dbctrgrid的功能和對應的非數據感知組件相同,如tedit框,tradiogroups單選按鈕組等,只不過在顯示數據庫數據時要用而已。

在系統中主要使用數據網格控件dbgrid和數據庫導航器控件dbnavigator。

3.2.3  數據訪問類dataaccess

數據庫應用系統中數據訪問是一個首要問題,包括單用戶和 c/s系統,都必須聯系一些數據庫和數據表文件。delphi 6 提供了專門用于數據訪問的基類控件。主要包括數據源控件datasource、客戶數據集控件clientdataset、數據集提供器控件datasetprovider等等。

tdatabase:當一個基于bde的數據庫應用程序需要一個永久數據庫連接時,需要定制向一個數據庫服務器的連接時,需要事務控制和特殊的數據庫別名時就得用到tdatabase對象。特別是當連接到一個遠程的sql數據庫服務器時,如果要利用bde進行數據庫事務處理,那么,tdatabase對象的威力就體現出來了。在一個應用程序中為每一個數據庫連接顯示的聲明tdatabase對象要根據需要而定,不是必需的。對一個數據庫連接,如果沒有顯示的聲明并實例化tdatabase對象,系統就會產生一個帶有默認屬性的tdatabase對象。

tdatasource對象用于在dataset對象(包括tquery,tstoredproc,ttable等)和數據感知組件之間提供一個連接的紐帶,以便在窗體上顯示數據庫中的數據,在數據庫中導航定位與編輯數據集中的數據。如果一個dataset對象中的數據想在數據感知組件中顯示和修改,它就必須和tdatasource對象相聯系。同樣,一個數據感知組件如果想和數據源相聯系以便顯示和操縱數據,就必須以tdatasource對象為中介。

用delphi6作數據庫應用開發概括來說如下:先利用數據存取組件和實際的數據庫建立連接,并用tsession對象和tdatabase對象管理這些連接。然后以tdatasource對象為中介,用數據感知組件向用戶顯示數據庫的內容并接受用戶的查詢和修改等操作。

3.2.4  sql語言在delphi中的應用

在delphi中使用sql語言非常方便,一般來說,都是通過tquery組件來使用sql語言的。可以在tquery組件的sql屬性中設置sql語句。設計程序時,在該組件的屬性對話框中選擇sql屬性,單擊帶省略號的按鈕,就可以打開string list editor對話框,然后我們就可以在對話框中添加sql語句。還可以使用delphi的sql builder來自動生成sql語句,這樣可以避免手工編寫sql而可能造成的語法錯誤。

靜態sql語句在程序設計時便已固定下來,它不包含任何參數和變量。

動態sql語句,也被稱作參數化的語句,在其中間包含著表示字段名或表名的參數,例如下面的語句是一條動態sql語句:

select  *  from  students  where studentcode =: studentcode;

其中的變量studentcode便是一個參數變量,它由一個冒號引導,在程序運行過程中,必須要為該參數賦值,該條sql語句才能正確執行,每次運行應用程序時可以為該參數變量賦予不同的值。為參數賦值有三種方法:

①根據參數在sql語句中出現的順序,設置tquery部件的params屬性值為參數賦值。

②直接根據sql語句中各參數的名字,調用parambyname方法來為各參數賦值。

③將tquery部件的datasource屬性設置為另一個數據源,這樣將另一個數據源中與當前tquery部件的sql語句中的參數名相匹配的字段值賦給其對應的參數。利用這種方法也能實現所謂的連接查詢,創建主要—明細型數據庫應用。

在程序運行過程中,要想設置tquery部件的sql屬性,必須首先調用close方法,關閉tquery部件,然后再調用clear方法清除sql屬性中現存的sql命令語句, 最后再調用add方法為sql屬性設置新的sql命令語句。例如:

query1.close {關閉query1)

query1.sql.clear {清除sql屬性中的sql命令語句}

query1.sql.add(‘select * from students‘);

query1.sql.add(‘ where name ="lucy" ‘);

在為tquery部件設置sql屬性時調用close方法總是很安全的,如果tquery部件已經被關閉了,調用close方法時不會產生任何影響。在應用程序中為sql屬性設置新的sql 命令語句時,必須要調用clear方法以清除sql屬性中現存的sql命令語句,如果不調用clear方法,便調用add方法向sql屬性中設置sql命令語句,那么新設置的sql命令語句會追加在現存sql命令語句后面, 在程序運行時常常會出現出乎意料的查詢結果甚至程序無法運行下去。

在這里要特別注意的,一般情況下tquery部件的sql屬性只能包含一條完整的sql語句,它不允許被設置成多條sql語句。當然有些數據庫服務器也支持在tquery部件的sql屬性中設置多條sql語句,只要數據庫服務器允許這樣,我們在編程時可以為 sql 屬性設置多條sql語句。

在為tquery部件設置完sql屬性的屬性值之后,也即編寫好適當的sql程序之后,可以有多種方式來執行sql程序。

在設計過程中,設置完tquery部件的sql屬性之后將其active屬性的值置為true, 這樣便可以執行sql屬性中的sql程序,如果應用中有與tquery部件相連的數據瀏覽部件( 如tddgrid tdbedit等)那么在這些數據瀏覽部件中會顯示sql程序的執行結果。

在應用程序運行過程中,通過程序調用tquery部件的open方法或execsql 方法可以執行其sql屬性中的sql程序。open方法和execsql方法是不一樣的。open方法只能用來執行sql語言的查詢語句(select命令), 并返回一個查詢結果集,而execsql方法還可以用來執行其它常用的sql語句(如insert, update, delete等命令),例如:

query1.open (這樣會返回一個查詢結果集)

如果調用open方法,而沒有查詢結果時,會出錯。此時應該調用execsql 方法來代替open方法。如:

query1.execsql (沒有返回結果)

當然在設計應用程序時,程序設計人員是無法確定tquery部件中的sql 語句是否會返回一個查詢結果的。對于這種情況應當用try…except模塊來設計程序。在 try 部分調用open方法,而在except部分調用excesql方法,這樣才能保證程序的正確運行。

delphi中用adoquery來使用sql語句同樣十分方便。在adoquery組件中首先通過connectionstring屬性值來聯接數據源,然后就通過雙擊sql…屬性值來寫入sql語句。在delphi中調用數據庫,就可以調用adoquery組件,通過修改其中的sql…屬性中的sql語句來實現對數據庫的各項操作。

值得注意的是,adoquery組件只有在激活的情況下才可以被正確地使用,這樣就提出了一個問題,也就是說,在每次修改adoquery組件的sql…屬性時都必須先行進行關閉,待清除掉sql…中所有的sql語句后才可以添加新的sql語句。而且,在每一次修改完成以后,還應該記得重新將adoquery激活。其它的使用方法與ttquery有許多的相似之處。

§3.3 access 簡介

建立一個數據庫我們有多種選擇,現在市場上有各種各樣的數據庫,而且每一種數據庫都有其自身的特點,不能說哪一種更好,只能在其中尋找一種能更好地適應系統需求、更好地滿足用戶的要求以及適應開發人員的習慣。在本系統中,做為圖書倉庫管理系統是一個比較小的應用系統,它所產生和處理的數據量也比較小。因此,沒有必要使用像sql server和oracle這樣的大型數據庫。我首先想到的數據庫是borland公司的paradox數據庫。另外,microsoft office中的access數據庫在計算機上的應用比較普及,是開發小型數據庫系統的比較理想的選擇,所以,在本系統中我選擇了access數據庫。

access做為一個數據庫管理系統,它被集成在microsoft office中。access數據庫處理的基本結構,采取關系型數據庫模式。與其他的數據庫系統相比,access更加簡單易學,一個普通的計算機用戶可以很快地掌握它。access 2000的功能十分強大,利用它可以方便地實現對信息保存、維護、查詢、統計、打印、交流、,而且它可以十分方便地與office其他組件交流數據,這些功能對一個一般用戶而言已經足夠了。

第四章  系統總體設計

軟件系統的總體設計大約要經歷可行性分析和項目開發計劃,需求分析,概要設計,詳細設計,編碼,測試以及維護等七個階段。可行性分析和項目開發計劃在前面已經敘述,下面所要做的是進行軟件需求分析,概要設計和詳細設計。編碼過程將在下一節論述,而測試和維護過程不在本文敘及。

§4.1   系統需求分析

在經過前一階段的分析之后,我確定了我的開發課題為圖書倉庫管理。現在所要做的是要準確定義系統必須做什么以及系統必須具備的功能。

軟件需求分析中我采用結構化分析方法(structured analysis,簡稱sa),sa是面向數據流進行需求分析的方法,像所有的軟件分析方法(如面向對象分析方法、idef方法等等)一樣,sa也是一種建模活動,它使用簡單易讀的符號,根據軟件內部數據傳遞、變換的關系,自頂向下逐層分解,描繪滿足功能要求的軟件模型。

在系統中我采用數據流圖(dfd)這種半形式化的描述方式表達需求。它是一種功能模型,以圖形的方式描繪數據在系統中流動和處理的過程,只反映系統必須完成的邏輯功能。它有四種基本圖形符號:

:箭頭,表示數據流;

〇:圓或橢圓,表示加工;

:雙杠,表示數據存儲;

:方框,表示數據的源點或終點。

為了表達較為復雜問題的數據處理過程,用一張數據流圖是不夠的,要按照問題的層次結構進行逐步分解,并以一套分層的數據流圖反映這種結構關系。在這里我一共使用了三層數據流圖,即頂層圖,0層圖和1層圖(也是底層圖)。

在多層數據流圖中,頂層流圖僅包含一個加工,它代表被開發系統,它的輸入流是該系統的輸入數據了,輸出流是該系統的輸出數據;底層流圖是指其加工不需要再做分解的數據流圖,中間層流圖表示對其上層父圖的細化,它的每一步加工可能繼續細化成子圖。

經過對系統的分析首先得到系統的頂層dfd,如下: 一步細化得到系統的0層dfd,如下:

再進一步細化每一個數據加工功能,得到系統的1層dfd圖。

在這里只給出有關入庫管理和出庫管理的1層數據流圖,它們是系統的關鍵部分,也是主要的部分。通過以上對數據流圖的分析之后,我們已大體地了解了系統的功能和目標,接下來所要做的就是系統功能模塊的劃分和數據庫的設計,也就是系統的概要設計。

§4.2   系統概要設計

在軟件需求分析階段,搞清楚了軟件“做什么”的問題,形成了目標系統的邏輯模型。現在我們所要做的就是要把軟件“做什么”的邏輯模型變換為“怎么做”的物理模型,即著手實現軟件的需求。首先,我們需要描述的是系統的總的體系結構。

4.2.1  系統結構設計

系統的概要設計中最重要的就是系統的模塊化。模塊化是指解決一個復雜問題時自項向下逐層把軟件系統劃分成若干個模塊的過程。每個模塊完成一個特定的功能,所有的模塊按某種方法組織起來,成為一個整體,完成整個系統所要求的功能。

 將系統劃分為多個模塊是為了降低軟件系統的復雜性,提高可讀性、可維護性,但模塊的劃分不能是任意的,應盡量保持其獨立性。也就是說,每個模塊只完成系統要求的獨立的子功能,并且與其他模塊的聯系最少且接口簡單,即盡量做到高內聚低耦合,提高模塊的獨立性,為設計高質量的軟件結構奠定基礎。

在系統的概要設計中我采用結構化設計(structure design,簡稱sd),sd以需求分析階段產生的數據流圖dfd為基礎,按一定的步驟映射成軟件結構。我首先將整個系統化分為幾個小問題,小模塊,在系統中,我設計了用戶管理、庫存管理、入庫管理、出庫管理、員工管理和供應商管理6個小模塊。然后,進一步細分模塊,添加細節。比如,用戶管理我又將其分為用戶注冊、用戶注銷、密碼修改;庫存管理分為庫存記錄查詢、庫存記錄修改、庫存記錄打印等等。

以下就是系統的結構圖:(在這里為了表達方便我將結構圖分開來表達。)

    在得到系統的第一層功能模塊圖后,經過進一步地細化,得一系統的子功能模塊圖:

4.2.2  數據庫設計

在信息世界中,信息從客觀事物出發流經數據庫,通過決策機構最后又回到客觀世界,信息的這一循環經歷了三個領域:信息世界,數據世界,現實世界。現實世界的事物反映到人的頭腦中,人的大腦對它有個認識過程,經過分析(選擇、命名、分類等)進入信息世界。這些信息再進一步加工、編碼,然后進數據世界,而軟件系統的開發工作需要考慮這兩個方面的問題,也就是要考慮系統開發所需要的數據,以及如何對這些數據進行操作。這兩個問題貫穿了整個軟件系統的開發過程,這也就是數據庫的設計問題,軟件設計的一個核心。

4.2.2.1  er圖設計

在系統設計的開始,我首先考慮的是如何用數據模型來數據庫的結構與語義,以對現實世界進行抽象。目前廣泛使用的數據模型可分為兩種類型,一種是獨立于計算機系統的“概念數據模型”,如“實體聯系模型”;另一種是直接面向數據庫邏輯結構的“結構數據模型”。在本系統中我采用“實體聯系模型”(er模型)來描述數據庫的結構與語義,以對現實世界進行第一次抽象。er模型直接從現實世界抽象出實體類型及實體間聯系,然后用er圖來表示數據模型。它有兩個明顯的優點:接近于人的思維,容易理解;與計算機無關,用戶容易接受。但er模型只能說明實體間語義的聯系,不能進一步說明詳細的數據結構,它只是數據庫設計的第一步。

er圖是直觀表示概念模型的工具,它有四個基本成分:

矩形框,表示實體類型(考慮問題的對象)。

菱形框,表示聯系類型(實體間的聯系)。

橢圓形框,表示實體類型和聯系類型的屬性。對于關鍵碼的屬性,在屬性名下劃一橫線。

直線,聯系類型與其涉及的實體類型之間以直線連接。

本系統為圖書倉庫管理,主要管理圖書的入庫、出庫以及庫存等事項。倉庫根據需要可以查詢圖書供應商的信息,同時還需要了解在入庫和出庫中員工的參與情況。依據倉庫管理的實際情況,考慮了多方面的因素以后,確定系統的er圖如下:

(為了表達的方便,在這里我沒有在一張圖上表達出所有的關系,而是用一張總體er圖,和幾張實體屬性關系圖來表達數據庫的結構。)

在該數據庫中,我設計了三個實體,分別是庫存、員工和供應商以及兩個聯系類型入庫和出庫。在本系統中庫存是核心,也是基本,沒有了庫存其它的也就沒有什么意義了。員工記錄的添加是考慮到責任問題,也就是說,在倉庫管理的實際運用中,出現了責任不清的現象,特別是由于倉庫的進出圖書數量都比較大時產生了一系列問題,所以在設計數據庫時,我特別考慮到這一點,加入了員工記錄這一實體。供應商信息的添加主要出于對圖書來源問題的思考。通過添加供應商信息可以比較清楚地了解圖書的進貨渠道,從圖書的質量到供應商的信譽都可以進行了解,同時可以為以后的圖書進購提供一定有用的信息。

入庫聯系類型將庫存信息、供應商信息和員工信息聯系在一起,可以方便地實現三個實體之間的聯接,而出庫聯系類型則將庫存信息和員工信息較好地聯接起,同時這兩個聯系類型又都具有各自特有的屬性。

下面就是各實體及聯系類型的屬性圖:(帶#號的屬性為關鍵字段)4.2.2.2  數據庫表格設計

在完成系統的er圖之后,需要將er模型轉化為關系模型,也就是說,要設計出數據庫所需要的表格。在這里,我選用的是關系數據庫。因為關系數據庫中的二維表格可以很清楚地描述數據之間的聯系。

在這里不得不提到一個概念——范式。其實在上一節的er圖設計中,已經運用了范式的思想,不僅如此,在數據庫的表格設計中更離不開范式的思想,它是數據庫設計的基礎,如果不注意這個問題將會導致一系列問題的出現。

我在系統中定義的表格都嚴格地按照范式的思想和要求去完成,數據庫中的所有表格都達到了三范式的要求。根據系統er圖,針對本系統的特點,在對所搜集的數據進行規范化之后,定義了如下六張表格,分別是庫存信息表,入庫信息表,出庫信息表,員工信息表,供應商信息表和密碼信息表。通過對這六張表格的操作可以較好地完成系統設計的各項功能,六張表格之間有著不同程度的聯系。(說明:在以下數據表中,k代表主鍵,#代表外鍵,字段值不為空。)

bookrecord 表(庫存信息表)

 字段名稱 數據類型 說明

k bookid 數字 圖書編號

 bookname 文本 圖書名

 author 文本 作者

 publisher 文本 出版社

 pubdate 日期/時間 出版日期

 price 貨幣 價格

 booktype 文本 圖書類型

 number1 數字 庫存數量

 addation 文本 備注

圖4.13  庫存信息表

庫存信息表主要用于記錄倉庫中現存放的所有圖書的詳細信息,包括圖書編號、書名、作者、出版社、圖書類型等有關圖書的各類信息,它即是該數據庫的主表,也是系統主界面的主要內容。

在該表中圖書編號是主鍵,它按圖書入庫的先后次序來編寫,每當有圖書入庫,系統自動給出圖書編號,這樣我們按圖書編號來查找圖書是比較方便的。考慮到編號比較難于記憶,所以使用了出版社和圖書類型兩個字段,在系統中我提供了出版社和圖書類型的分類查找,而且全部采用自動生成,每當系統中有新的出版社類型和圖書類型,彈出菜單會自動添中新類型,這樣就可以比較方便地實現按出版社和按圖書類型查找。此外,庫存數量也是一個比較關鍵的字段,該字段是在系統初始化時就給定的,每當有圖書入庫或出庫操作,系統就會自動修改圖書的庫存數量,以保持數據的一致性。做為備注有一點說明,我的數據庫中備注的數據類型是文本,而不是備注類型,主要考慮到該字段的長度并不大,而且在delphi中文本數據類型的處理也比較方便一點。

employee 表(員工信息表)

 字段名稱 數據類型 說明

k employeeid 數字 員工編號

 employeename 文本 員工姓名

 sex 文本 性別

 borndate 日期/時間 出生日期

 grade 文本 職稱

 workdate 日期/時間 工作日期

 telephone 文本 聯系電話

 address 文本 聯系地址

   圖4.14  員工信息表

員工信息表主要用于記錄有關員工的各類信息,包括姓名、職稱、出生日期、聯系電話、聯系地址等。它主要用來為系統提供員工的有關信息,因為在系統中,入庫和出庫操作均與員工有著一定的聯系,在查詢入庫信息和出庫信息時,有時需要查找有關此項記錄有關的員工信息,在系統中我是通過入庫記錄與員工記錄(出庫記錄和員工記錄)之間的聯接查詢來完成的。另外,作為一個倉庫也有必要了解其所屬員工的一些基本情況,以便查詢。

shopkeeper 表(供應商信息表)

 字段名稱 數據類型 說明

k shopkeeperid 數字 供應商編號

 shopkeepername 文本 供應商姓名

 address 文本 地址

 postno 數字 郵編

 officephone 文本 辦公電話

 homephone 文本 住宅電話

 email 文本 e-mail

 paytype 文本 付款方式

   圖4.15  供應商信息表

供應商信息表主要用于記錄有關供應商的各類信息,包括姓名、地址、電話、付款方式等。它主要用來為系統提供供應商的有關信息,在系統中入庫記錄是與供應商記錄相聯系的,通過入庫記錄可以查找相關的供應商信息。在供應商信息中,考慮當實際情況,我特別加入了email和付款方式這兩個字段,因為在當今信息世界中,多種多樣的通訊方式和多種多樣的付款方式是必然的,是數據庫中必須與以記錄。

inrecord 表(入庫信息表)

 字段名稱 數據類型 說明

k inid 數字 入庫編號

# bookid 數字 圖書編號

# employeeid 數字 員工編號

# shopkeeperid 數字 供應商編號

 number 數字 入庫數量

 buydate 日期/時間 入庫日期

  圖4.16  入庫信息表

outrecord 表(出庫信息表)

 字段名稱 數據類型 說明

k outid 數字 出庫編號

# bookid 數字 圖書編號

# employeeid 數字 員工編號

 number2 數字 出庫數量

 outdate 日期/時間 出庫日期

   圖4.17  出庫信息表

入庫信息表主要用于記錄有關入庫的詳細信息,包括入庫數量、入庫日期以及圖書、員工、供應商三方的編號,以便查詢。出庫信息表主要用于記錄有關出庫的詳細信息,包括出庫數量、出庫日期以及圖書、員工的編號。出庫信息表和入庫信息表一樣,其實它們都屬于聯系類型,系統通過這兩個表可以聯接上其它的表為用戶提供多種條件的聯接查詢。值得提出的一點是入庫記錄和出庫記錄的添加不僅僅是單表操作,由于它們都與庫存記錄相聯系,所以,無論您是添中入庫記錄還是添加出庫記錄,都必須同時修改庫存記錄,以保持數據的一致性,否則將引發系統出錯而這些我都讓其在系統中自動完成。無論您是添加入庫記錄,還是添加出庫記錄,系統都將自動修改庫存中圖書的數量,而且,在您出庫的數量大于庫存數量時,系統還會自動提示錯誤,這樣就可以防止一定錯誤的發生。

在入庫信息表和出庫信息表中我還定義了幾個外鍵,它提供了一種表示幾個關系聯系的方法。比如,系統中通過在入庫信息表中定義的外鍵 bookid、employeeid和shopkeeperid可以將庫存信息表、員工信息表和供應商信息表聯系在一起,從而方便地實現聯接查詢,而且,引入外鍵的定義是實體完整性約束的一個主要方面。

key 表(密碼信息表)

 字段名稱 數據類型 說明

k keyname 文本 用戶姓名

 keyno 文本 用戶密碼

圖4.18  密碼信息表

密碼信息表主要用于記錄所有的用戶名和用戶密碼。它是在用戶登陸時用來確定用戶和密碼的正確性,以防止非法用戶登陸。

通過以上設計已經完成了系統的概要設計,當我們有了系統的功能模塊圖和數據庫之后,就需要著手去實現每一個模塊,為每一個功能設計程序流程圖,這也就是系統的詳細設計。

§4.3   系統詳細設計

在前面的概要設計中,已將系統劃分為多個模塊,并將它們按照一定的原則組裝起來,同時確定了每個功能及模塊之間的外部接口。現在所要做的就是確定每個模塊具體執行過程,也可以說是“過程設計”。

在處理過程設計時我采用的是結構化程序設計(簡稱sp)方法。需要指出的是系統的詳細設計并不是指具體的編程序,而是將概要設計階段產生的系統功能模塊圖細化成很容易產生程序的圖紙。因此詳細設計的結果基本決定了最終程序的質量。為軟件的質量,延長軟件的生存期,軟件的可測試性、可維護性提供重要的保障。詳細設計的目標不僅是邏輯上正確地實現每個模塊的功能,還應使設計出的處理過程清晰易讀。

由前一階段產生的系統功能模塊圖,我為系統的主要部分設計了如下程序流程圖:通過以上步驟,基本上完成了對整個系統的總體設計,接下來所要做的就是軟件的編碼工作。系統總體設計的好壞直接影響著下一步工作,只有在這一階段設計出好的模塊圖和程序流程圖,才能更有利于編碼,產生好的軟件系統。

第五章   系統應用程序設計

§5.1  系統窗體模塊組成

§5.2  數據模塊窗體的設置

在編寫數據庫應用程序時,經常要遇到這樣的情況,即好多組件、窗體同時訪問相同的數據源,如果為每一個組件或者窗體都設置一個數據源將是十分耗時的工件,而且要保證這些數據源的確是相同的也需花一番功夫。那么,能不能將這些數據源集中管理,最好是做成一個統一的模塊,需要時就將該模塊引入而不必直接操作數據源本身呢?數據模塊(datamodule)是解決這個問題最好的答案。簡單說來,數據模塊是用來集中管理數據源的一個窗體,該窗體可被需要的地方隨時引入。

圖5.2給出了本程序的數據模塊(datamoduleform)窗體圖,除報表窗體外所有的數據存取組件和數據源組件都在此數據模塊中進行了定義。值得一提的是,設置了數據庫database組件,該組件引入了系統所需的唯一的數據庫tsxs,database組件的databasename屬性設置為tsckgl。tsxs數據庫已在odbc配置程序中進行了設置。其他的數據存取組件都是基于此數據庫組件創建的,這樣做的好處是,當數據庫的別名或者其他信息改變之后,只需修改tdatabase組件的aliasname屬性即可。

另外,在本系統的數據模塊窗體圖中,我大多采用的aodquery組件而沒有采用bde組,這主要是基于對ado組件的了解。在delphi的學習中我對ado組件了解的更加清楚,使用也較bde更為熟練,而且,ado組件的功能也較bde更為強大,所以在這里大多采用ado組件來進行數據庫聯接。同時我也使用了bde組件中的table,因為在某些時候bde有著其自身特有的優越性。  主窗體功能模塊的實現                          

file://主窗體程序代碼

public      file://在程序的起始部分,定義快捷按鈕點擊事件

procedure popup1handler(sender:tobject);

procedure popup2handler(sender:tobject);

**********************************************************************

procedure tmainform.popup1handler(sender: tobject);

begin       file://快捷按鈕1(點“按出版社分類”按鈕產生)的點擊事件

with datamoduleform.mainquery do    

begin     file://打開數據模塊窗體的mainquery,對bookrecord表進行操作

close;     file://關閉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://設立5個變量以方便實現模糊查詢

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語句來實現模糊查詢

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://這里相當于一個刷新功能

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的內容

with datamoduleform.bookquery do

begin         file://從數據庫中選擇出版社類型

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://根據出版社內容生成菜單子項

popupitem:=tmenuitem.create(self);

popupitem.caption:=fieldbyname(‘publisher‘).asstring;

popupmenu1.items.add(popupitem);

popupitem.onclick:=popup1handler;     file://確定菜單子項的點擊事件

next;

end;  end;

popupmenu1.popup(384,67);      file://在指定位置顯示快捷菜單1

end;

**********************************************************************

procedure tmainform.formactivate(sender: tobject);

begin      file://系統初始化,在進入mainform時自動添加數據源

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://系統初始化,定義界面大小,以適應不同分辯率

width:=800;height:=600;

end;

**********************************************************************

procedure tmainform.timer1timer(sender: tobject);

begin         file://在狀態欄顯示時間

statusbar1.panels[2].text:=datetostr(date);

statusbar1.panels[4].text:=timetostr(time);

end;

§5.4  入庫、出庫窗體模塊的實現

 

                      圖5.4  系統入庫管理窗體

 

                          圖5.5  系統出庫管理窗體

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://設置顯示框不可更改屬性

      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://設置編號的不可更改性

  end;

end;

**********************************************************************

procedure tinoutform.speedbutton1click(sender: tobject);

var s:integer;

begin            file://入庫管理添加按鈕事件

  if edit1.text<>null

  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://計算入庫后庫存圖書數量

      edit12.text:=inttostr(s);    file://將修改后的庫存圖書數量顯示

      edit12.readonly:=true;

      with datamoduleform.bookquery do     file://修改庫存記錄中圖書數量

      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://檢查出庫數量是否小于庫存數量

then begin

messagedlg(‘庫存中的圖書數量不夠!‘,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://計算出庫后庫存圖書數量

edit21.text:=inttostr(s);    file://顯示出庫后庫存圖書數量

edit21.readonly:=true;

with datamoduleform.bookquery do

begin      file://修改庫存圖書數量

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  查詢功能的實現

    查詢功能包括員工信息查詢,供應商信息查詢,入庫信息查詢和出庫信息查詢。由于每一個功能的實現都差不太多,而且其窗體也差不太多,所以在這里只給出員工信息查詢窗體及其源代碼。

           

                      圖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://實現模糊查詢功能

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://在找到記錄的情況下關閉查找窗口

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  系統登陸窗體模塊的實現

由于系統登陸窗體中有一幅彩圖,在這里不便給出,而只給出了系統的實現。

var  keyname: string;   file://定義了一個全局變量,在key2中有調用

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 s<>edit2.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  用戶管理功能的實現

5.7.1   用戶管理主窗體

           

                       圖5.7  用戶管理主窗體

5.7.2   密碼修改窗體模塊的實現

           

                        圖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.text<>edit3.text

then begin

messagedlg(‘兩次密碼輸入不同,請重新輸入新密碼!‘,mtinformation,[mbok],0);

edit2.text:=‘‘;edit3.text:=‘‘;edit2.setfocus;

end

else begin         file://在數據庫中修改密碼

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   用戶注冊窗體模塊的實現

           

                         圖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://判斷用戶名是否存在,系統不允許用戶名重復

then begin

messagedlg(‘用戶名已存在,請輸入新的用戶名和密碼!‘,

mtinformation,[mbok],0);

edit1.text:=‘‘;edit2.text:=‘‘;edit3.text:=‘‘;edit1.setfocus;

end

else begin

if edit2.text<>edit3.text

then begin

messagedlg(‘您輸入的兩個密碼不相同,請重新輸入!‘,mtinformation,[mbok],0);

edit2.text:=‘‘;edit3.text:=‘‘;edit2.setfocus;

end

else begin

with datamoduleform.keyquery do     file://在數據庫中添加該用戶

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(‘新用戶添加成功,您可以繼續添加用戶,或按“取消”退出。‘,mtinformation,[mbok],0);

edit1.text:=‘‘;edit2.text:=‘‘;edit3.text:=‘‘;edit1.setfocus;

end; end; end;

end;

5.7.4   用戶注銷窗體模塊的實現

           

                         圖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 s<>edit2.text  file://判斷該用戶名下的密碼是否正確

then begin

messagedlg(‘您所輸入的密碼不正確,請重新輸入或按“取消”退出。‘,

mtinformation,[mbok],0);

edit2.text:=‘‘;edit2.setfocus;

end

else begin        file://從數據庫中刪除該用戶

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(‘用戶已成功刪除,您可以繼續刪除用戶,或按“取消”退出。‘,

mtinformation,[mbok],0);

edit1.text:=‘‘;edit2.text:=‘‘;edit1.setfocus;

end; end; end;

end;

 

                        結束語

本系統是一個面向小型圖書企業,具有一定實用性的數據庫信息管理系統。它主要完成對圖書倉庫的一系列管理,包括入庫、出庫、庫存以及員工和供應商信息管理。本系統采用當前流行的面向對象的開發工具—delphi來完成整個系統的設計,在數據庫的設計上利用了access的便利性和實用性。

本系統具有相當的實用功能。在查詢方面,系統實現了多條件任意字段的模糊查詢,同時在分類查詢上實現了動態生成,系統可以自動識別用戶不同的輸入。在圖書入庫、出庫和庫存三者之間建立了良好的鏈接關系,某一部分地修改均會自動引發系統對與其相關的部分進行連鎖修改。在用戶管理方面,系統較好地實現了用戶注冊,用戶注銷和密碼修改等各項功能。

系統在設計過程中不可避免地遇到了各種各樣的問題,由于整個系統完全都是由個人設計的,有關delphi許多細節問題都要靠自己去摸索,加之本人水平有限,并沒有完全地理解delphi的強大功能,而且還存在著許多不足之處。如:

 受開發條件和開發時間的限制,本系統只利用了本地數據庫access,它同應用程序處于同一系統中,能存儲的數據量也有一定限制,并沒有發揮出delphi其數據庫方面的優勢;

 報表打印功能尚不夠全面完善,不能實現動態報表;

 在一些數據輸入時沒有及時的進行數據格式校驗,不能保證數據輸入的絕對正確性。

 由于時間關系,系統功能實現不夠完善,使用不是很方便,比如,沒有實現多條記錄的連鎖刪除和添加以及數據的導入功能。

這些都是需要完善的地方,該系統離實際使用也還有相當的距離,需要我進行不斷地補充和完善。

通過本次畢業設計我學到了不少新的東西,也發現了大量的問題,有些在設計過程中已經解決,有些還有待今后慢慢學習。只要學習就會有更多的問題,有更多的難點,但也會有更多的收獲。

 考 文 獻

[1] 鄭榮貴、黃平、谷會東,delphi 6.0數據庫開發與應用,中科多媒體電子出版社,2002

[2] 伍俊良,delphi 6控件應用實例教程,北京希望電子出版社,2002

[3] 盧國俊,delphi 6數據庫開發,電子工業出版社,2002

主站蜘蛛池模板: 宜宾县| 凤庆县| 内丘县| 同仁县| 华坪县| 平和县| 黄大仙区| 金堂县| 彩票| 舒兰市| 鄄城县| 吉木乃县| 即墨市| 来宾市| 白银市| 固阳县| 襄城县| 武宣县| 鄂州市| 威信县| 临桂县| 阳山县| 东兴市| 土默特右旗| 东乡| 临桂县| 武冈市| 鄄城县| 崇明县| 兴安盟| 桃园市| 昭觉县| 喜德县| 寻乌县| 宁都县| 尚义县| 淳化县| 阳西县| 无为县| 丹东市| 琼海市|