心得體會是我們在學習和工作過程中的得失和感悟,它能夠幫助我們不斷成長和進步。"心得體會讓我明白,沒有付出就沒有收獲,所以我決定在學習上更加用功,相信付出的努力必定會有回報。"
本程序以c語言的棧的相關知識為基礎,通過控制兩個棧(運算數棧和運算符棧)的進出的棧操作,來實現對包含加、減、乘、除、括號運算符及sqrt和abs函數的任意整型表達式的求解運算。
從程序的編寫來看,感覺這次自己真的學到了好多,特別是對程序的開發流程。從最初的選定程序,到最終的程序運行成功,讓我感到如果是僅僅掌握課本上的知識是遠遠不能夠很好的應用到實際的編程中去的。在這個過程中還需要我們更多的去考慮到實際條件的種種限制和約束。
我在寫本程序的過程中也遇到了很多的問題,當然本程序的核心問題就是對兩個棧的壓出棧操作,需要做優先級判斷,并要考慮什么時候進棧,什么時候出棧等操作。我采用了課本上第52-54頁講的通過一個二維字符串數組來控制比較“+-*、()as=”共9個運算符的優先級控制。對異常,如除數為0、被開方數小于0等異常也進行了精心的處理。對操作過程中要用到的y、n、a、s等字符也進行了改進,最終本程序可以不區分大小寫就完成相關操作。
總之,經過本次專業課程設計,讓我掌握了開發應用軟件的基本流程,運用所學編程技能的基本技巧,也讓我初步了解了軟件設計的基本方法,提高進行工程設計的基本技能及分析、解決實際問題的能力,為以后畢業設計和工程實踐等打下良好的基礎。相信通過這次的課程設計,我對所學的《數據結構(c語言版)》和各種編程語言都有了一個全新的認識。我也會積極吸取本次課程設計的經驗,繼續研究數據結構和所學的各種編程語言。
跟老板做了兩個算是比較大的項目,數據庫主體都是我設計的。第一個感覺很失??;第二個現在正在用,雖然總結了第一個的教訓,但感覺還是有些遺憾。把這過程中的一些心得記在這里,以便日后用到時來查閱。若以后還有機會再設計數據庫——現在倒還有些期待,呵呵,再有新的體會,也全部補充到這里。
隨著磁盤容量的大幅飆升,這一點已經不會產生什么問題。當然冗余歸冗余,不能把數據的關聯弄的亂七八糟的。
本科數據庫課程中學的知識直接拿來,在實際中會出大問題。滿足三級范式的數據庫結構會讓你面對大量的連表查詢,應用程序中會用到大量的數據庫訪問,既繁瑣(煩死你)又使程序運行速度減慢。
這一點主要是用動軟代碼生成器自動生成代碼時,如果varchar的最大長度指定為max,在自動生成代碼時,它無法生成這一最大長度,需要手動補進去。
現在感覺用個var1000)就夠了。
數據庫表(尤其是動態表格),在你把所有字段都設計好了之后,再添加幾個備注字段和預留字段。
之前我覺得這樣做沒多大意義,因為預留字段的列名是沒有實際意義的。這樣程序中使用的時候就會讓人費解。但現在覺得還是有必要的,很有必要的,即便在用到時需要自己十分清楚之前預留的無意義字段現在表示什么意義。不過我的第二個數據庫中還是沒采用,這也是遺憾之處啊。
個人感覺用note1、note2、r1(r表示reserve)、r2、r3,2個備注字段和3個預留字段就足夠了,再多的話就不容易記住哪個字段具體表示什么意義了,容易暈。類型就都用var200)吧。
本次課程設計,使我對《數據結構》這門課程有了更深入理解?!稊祿Y構》是一門實踐性較強課程,為了學好這門課程,必須在掌握理論知識同時,加強上機實踐。
我課程設計題目是線索二叉樹運算。剛開始做這個程序時候,感到完全無從下手,甚至讓我覺得完成這次程序設計根本就是不可能,于是開始查閱各種資料以及參考文獻,之后便開始著手寫程序,寫完運行時有很多問題。特別是實現線索二叉樹刪除運算時很多情況沒有考慮周全,經常運行出現錯誤,但通過同學間幫助最終基本解決問題。
在本課程設計中,我明白了理論與實際應用相結合重要性,并提高了自己組織數據及編寫大型程序能力。培養了基本、良好程序設計技能以及合作能力。這次課程設計同樣提高了我綜合運用所學知識能力。并對vc有了更深入了解?!稊祿Y構》是一門實踐性很強課程,上機實習是對學生全面綜合素質進行訓練一種最基本方法,是與課堂聽講、自學和練習相輔相成、必不可少一個教學環節。
上機實習一方面能使書本上知識變“活”,起到深化理解和靈活掌握教學內容目;另一方面,上機實習是對學生軟件設計綜合能力訓練,包括問題分析,總體結構設計,程序設計基本技能和技巧訓練。此外,還有更重要一點是:機器是比任何教師更嚴厲檢查者。因此,在“數據結構”學習過程中,必須嚴格按照老師要求,主動地、積極地、認真地做好每一個實驗,以不斷提高自己編程能力與專業素質。
通過這段時間課程設計,我認識到數據結構是一門比較難課程。需要多花時間上機練習。這次程序訓練培養了我實際分析問題、編程和動手能力,使我掌握了程序設計基本技能,提高了我適應實際,實踐編程能力??倎碚f,這次課程設計讓我獲益匪淺,對數據結構也有了進一步理解和認識。
一周的課程設計結束了,在這次的課程設計中不僅檢驗了我所學習的知識,也培養了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的方法和技巧。在設計過程中,和同學們相互探討,相互學習,相互監督。我學會了運籌帷幄,學會了寬容,學會了理解,也學會了做人與處世,這次課程設計對我來說受益良多。
課程設計是我們專業課程知識綜合應用的實踐訓練,著是我們邁向社會,從事職業工作前一個必不少的過程?!扒Ю镏惺加谧阆隆?,通過這次課程設計,我深深體會到這句千古名言的真正含義。我今天認真的進行課程設計,學會腳踏實地邁開這一步,就是為明天能穩健地在社會大潮中奔跑打下堅實的基礎。我這次設計的科目是數據結。
數據結構,是一門研究非數值計算的程序設計問題中計算機的操作對象(數據元素)以及它們之間的關系和運算等的學科,而且確保經過這些運算后所得到的新結構仍然是原來的結構類型?!皵祿Y構”在計算機科學中是一門綜合性的專業基礎課。數據結構是介于數學、計算機硬件和計算機軟件三者之間的一門核心課程。數據結構這一門課的內容不僅是一般程序設計(特別是非數值性程序設計)的基礎,而且是設計和實現編譯程序、操作系統、數據庫系統及其他系統程序的重要基礎。通過這次模具設計,我在多方面都有所提高。
在界面設置中使用函數調用while。其中文本顯示顏色和背景顏色都可以任意按照自己的喜好,任意改變,但改變的時候必須采用標準英文大寫,同時在制作顯示菜單的窗口,大小根據菜單條數設計。最后采用printf輸出程序設計界面。
這次的程序軟件基本上運行成功,可以簡單的建立鏈式循環鏈表,并進行輸出,及循環語句的運用和選擇語句的控制。由于時間和知識上的限制,使得程序規模相對較小,即功能還不很全面,應用也不很普遍。原來c語言可是涉及很多知識,而不是枯燥無聊的簡單的代碼部分而已,利用c語言方面的知識,我們可以設計出更完善的軟件。
通過這次的課程設計,更是讓我深刻認識到自己在學習中的不足,同時也找到了克服這些不足的方法,這也是一筆很大的資源。在以后的時間中,我們應該利用更多的時間去上機實驗,加強自學的能力,多編寫程序,相信不久后我們的編程能力都會有很大的提高能設計出更多的更有創新的作品。
兩個星期時間非??炀瓦^去了,這兩個星期不敢說自己有多大進步,獲得了多少知識,但起碼是了解了項目開發部分過程。雖說上過數據庫上過管理信息系統等相關課程,但是沒有親身經歷過相關設計工作細節。這次實習證實提供了一個很好機會。
通過這次課程設計發現這其中需要很多知識我們沒有接觸過,去圖書館查資料時候發現我們前邊所學到僅僅是皮毛,還有很多需要我們掌握東西我們根本不知道。同時也發現有很多已經學過東西我們沒有理解到位,不能靈活運用于實際,不能很好用來解決問題,這就需要我們不斷大量實踐,通過不斷自學,不斷地發現問題,思考問題,進而解決問題。在這個過程中我們將深刻理解所學知識,同時也可以學到不少很實用東西。從各種文檔閱讀到開始需求分析、概念結構設計、邏輯結構設計、物理結構設計。親身體驗了一回系統設計開發過程。很多東西書上寫很清楚,貌似看著也很簡單,思路非常清晰。但真正需要自己想辦法去設計一個系統時候才發現其中難度。經常做到后面突然就發現自己一開始設計有問題,然后又回去翻工,在各種反復中不斷完善自己想法。
我想有這樣問題不止我一個,事后想想是一開始著手做時候下手過于輕快,或者說是根本不了解自己要做這個系統是給誰用。因為沒有事先做過仔細用戶調查,不知道整個業務流程,也不知道用戶需要什么功能就忙著開發,這是作為設計開發人員需要特別警惕避免,不然會給后來工作帶來很大的麻煩,甚至可能會需要全盤推倒重來。所以以后課程設計要特別注意這一塊設計。
按照要求,我們做是機票預訂系統。說實話,我對這個是一無所知,沒有訂過機票,也不知道航空公司是怎么一個流程。盲目開始設計下場我已經嘗過了,結果就是出來一個四不像設計方案,沒有什么實際用處。沒有前期調查,僅從指導書上那幾條要求著手是不夠。
在需求分析過程中,我們通過上網查資料,去圖書館查閱相關資料,結合我們生活經驗,根據可行性研究結果和客戶要求,分析現有情況及問題,采用client/server結構,將機票預定系統劃分為兩個子系統:客戶端子系統,服務器端子系統。在兩周時間里,不斷地對程序及各模塊進行修改、編譯、調試、運行,其間遇到很多問題:由于忘記了一些java語言規范使得在調試過程中一些錯誤沒有發現,通過這次課程設計,我對調試掌握得更加熟練了,意識到了程序語言規范性以及我們在編程時要有嚴謹態度,同時在寫程序時如有一定量注釋,既增加了程序可讀性,也可以使自己在讀程序時更容易。
我們學習并應用了sql語言,對數據庫創建、修改、刪除方法有了一定了解,通過導入表和刪除表、更改表學會了對于表一些操作,為了建立一個關系數據庫信息管理系統,必須得經過系統調研、需求分析、概念設計、邏輯設計、物理設計、系統調試、維護以及系統評價一般過程,為畢業設計打下基礎。
很多事情不是想象中那么簡單,它涉及到各種實體、屬性、數據流程、數據處理等等。很多時候感覺后面設計根本無法繼續,感覺像是被前面做各種圖限制了。在做關系模型轉換時候碰到有些實體即可以認為是實體又可以作為屬性,為了避免冗余,盡量按照屬性處理了。
物理結構設計基本沒有碰到問題,這一塊和安全性、完整性不覺就會在物理結構設計中添加一些安全設置:主鍵約束、check約束、default定義等。最后才做索引部分,對一些比較經常使用搜索列,外鍵上建立索引,這樣可以明顯加快檢索速度,最后別忘記重要安全性設置,限制用戶訪問權限,新建用戶并和數據庫用戶做相應映射。
不管做什么,我們都要相信自己,不能畏懼,不能怕遇到困難,什么都需要去嘗試,有些你開始認為很難事在你嘗試之后你可能會發現原來她并沒有你以前覺得那樣,自己也是可以。如果沒有自信,沒有目標,沒有信心就不可能把事情做好,當其他人都在迷茫時候,自己一定要堅信目標,大學畢業出去即面臨找工作,從學習這個專業,到以后從事這方面工作都需要不斷地去學習去實踐,這次實踐可以給我們敲一個警鐘,我們面臨畢業,面臨擇業,需要這些實踐經驗,在困難面前要勇于嘗試,這是這次課程設計給我最大感想!
以上基本是這次實習體會了,設計進行非常艱難,編碼非常不容易,才發現做一個項目最重要不在于如何實現,而是實現之前需求分析和模塊設計。創新很難,有些流行系統其實現并不難,難在于對市場分析和準確定位。設計,是一個任重道遠過程。
由于平時接觸的都是一些私人項目,這些項目大都是一些類庫,其他人的交流相對可以忽略不計,因此也就不考慮規范化的文檔。實際上從學習的經歷來看,我們接觸的知識體系都是屬于比較老或比較傳統的,與現在發展迅速的it行業相比很多情況已不再適用,尤其是當開源模式逐漸走近開發者后更是如此。
雖然這次是一個數據庫課程設計,由于本人在選擇項目的時候是本著對自己有實際應用價值的角度考慮的,所以其中也涉及到一些數據庫以外的設計。對于ooa/ood的開發模式有時不免要提出一些疑問,uml是設計階段的工具,而它基本涵蓋了軟件設計的方方面面,也就是說按照這一軟件工程的正常流程,在動手寫第一句代碼之前,開發人員已經非常熟悉軟件產品了,這對于相當有經驗的架構師一類人說可能會很容易,但是我們作為學生,連足夠的編碼經驗都沒有,卻首先被教授并要求先ooa再oop,這樣直接導致的問題就是文檔與編碼對不上號,在修改代碼的時候基本不會再去審查文檔和先前的分析。甚至根本就是現有代碼再有文檔,即便是這種情況,代碼與文檔還是不對應。不可否認,在傳統軟件工程的詳細設計之前的項目過程中還是有很多利于項目開發的部分的。所以我就一直在尋找適合我——針對探究型項目——的開發模式,這次的項目也算是一次嘗試,當然這個過程并不會太短。
回到數據庫設計上了,這次的數據庫設計我是嚴格按照數據庫建模的步驟來進行的,老實說我并沒有感覺這樣的流程對開發帶來多大的幫助,反倒是覺得將思維轉化為圖表很浪費時間??傮w上來說這次的項目也不是很大,而且在數據庫的設計上比較保守,也就是說實際上數據庫設計還可以再完善完善的。隨著我對計算機領域的拓寬和加深,我也會靜下心來思考在接觸計算機之前的行為,很多次我能深切感覺到,其實我的大腦(未于別人比較)本身就是在使用一種更接近關系數據庫的方式來記憶,所以我很可恨自然的設計出符合三范式的表結構來,即便我不知道這些范式的確切含義??赡芫拖?范式不太容易用通俗易懂的方式解釋"一樣,在"讓工具用圖標表述我的思維"時費了一番力氣。
從我作為項目的提出人和實現者來看,這是個失敗的項目,結合幾次教學項目的的實踐,發現這也已經不是第一次了。主觀原因占多數,比如,嘗試新的開發方式,根據設計花了太多的時間來抽象出公用的庫而忽略業務邏輯。就這次項目而言,失敗的原因有以下幾點:
使用了新的開發環境(vim),這是首次在脫離高級ide的情況下編碼。
使用了新的開發語言(python,actionscript3),因為我一直比較喜歡"學以致用",而且這樣的"數據驅動型"軟件的整套自實現的庫都已經完成了,但是由于語言本身的差異,遷移時問題很多,當發現這一點是,已沒有多少有效剩余時間了。
編碼流程的不妥,我比較喜歡從底層的庫開始開發,因為一旦庫測試通過,將很容易將它放到不同的表示層下。但如果庫沒有測試成功,將導致整個項目沒有任何可視化模型,所以這次的項目無法提交"可運行的代碼"。
實踐目的的不同,我輕易不放棄鍛煉的機會,事實上,有機會就一定要比以前有所突破,總是照搬以前的做法還不如就不做呢。這個前提是因為現在能完全用來的學習的時間比較多,等到工作時再這樣做的可能性就很小了,因此當然要抓緊機會了。不過還有一個隱藏原因,總以為自己很了不起,其實"遇到的問題數跟人的能力是成正比的"。
本文目錄。
兩個星期的時間非??炀瓦^去了,這兩個星期不敢說自己有多大的進步,獲得了多少知識,但起碼是了解了項目開發的部分過程。雖說上過數據庫上過管理信息系統等相關的課程,但是沒有親身經歷過相關的設計工作細節。這次實習證實提供了一個很好的機會。
通過這次課程設計發現這其中需要的很多知識我們沒有接觸過,去圖書館查資料的時候發現我們前邊所學到的僅僅是皮毛,還有很多需要我們掌握的東西我們根本不知道。同時也發現有很多已經學過的東西我們沒有理解到位,不能靈活運用于實際,不能很好的用來解決問題,這就需要我們不斷的大量的實踐,通過不斷的自學,不斷地發現問題,思考問題,進而解決問題。在這個過程中我們將深刻理解所學知識,同時也可以學到不少很實用的東西。
從各種文檔的閱讀到開始的需求分析、概念結構設計、邏輯結構設計、物理結構設計。親身體驗了一回系統的設計開發過程。很多東西書上寫的很清楚,貌似看著也很簡單,思路非常清晰。但真正需要自己想辦法去設計一個系統的時候才發現其中的難度。經常做到后面突然就發現自己一開始的設計有問題,然后又回去翻工,在各種反復中不斷完善自己的想法。
我想有這樣的問題不止我一個,事后想想是一開始著手做的時候下手過于輕快,或者說是根本不了解自己要做的這個系統是給誰用的。因為沒有事先做過仔細的用戶調查,不知道整個業務的流程,也不知道用戶需要什么功能就忙著開發,這是作為設計開發人員需要特別警惕避免的,不然會給后來的工作帶來很大的麻煩,甚至可能會需要全盤推倒重來。所以以后的課程設計要特別注意這一塊的設計。
按照要求,我們做的是機票預訂系統。說實話,我對這個是一無所知的,沒有訂過機票,也不知道航空公司是怎么一個流程。盲目開始設計的下場我已經嘗過了,結果就是出來一個四不像的設計方案,沒有什么實際用處。沒有前期的調查,僅從指導書上那幾條要求著手是不夠的。
在需求分析過程中,我們通過上網查資料,去圖書館查閱相關資料,結合我們的生活經驗,根據可行性研究的結果和客戶的要求,分析現有情況及問題,采用client/server結構,將機票預定系統劃分為兩個子系統:客戶端子系統,服務器端子系統。在兩周的時間里,不斷地對程序及各模塊進行修改、編譯、調試、運行,其間遇到很多問題:由于忘記了一些java語言的規范使得在調試過程中一些錯誤沒有發現,通過這次課程設計,我對調試掌握得更加熟練了,意識到了程序語言的規范性以及我們在編程時要有嚴謹的態度,同時在寫程序時如有一定量的注釋,既增加了程序的可讀性,也可以使自己在讀程序時更容易。
我們學習并應用了sql語言,對數據庫的創建、修改、刪除方法有了一定的了解,通過導入表和刪除表、更改表學會了對于表的一些操作,為了建立一個關系數據庫信息管理系統,必須得經過系統調研、需求分析、概念設計、邏輯設計、物理設計、系統調試、維護以及系統評價的一般過程,為畢業設計打下基礎。
很多事情不是想象中的那么簡單的,它涉及到的各種實體、屬性、數據流程、數據處理等等。很多時候感覺后面的設計根本無法繼續,感覺像是被前面做的各種圖限制了。在做關系模型轉換的時候碰到有些實體即可以認為是實體又可以作為屬性,為了避免冗余,盡量按照屬性處理了。
物理結構設計基本沒有碰到問題,這一塊和安全性、完整性不覺就會在物理結構設計中添加一些安全設置:主鍵約束、check約束、default定義等。最后才做索引的部分,對一些比較經常使用搜索的列,外鍵上建立索引,這樣可以明顯加快檢索的速度,最后別忘記重要的安全性設置,限制用戶訪問權限,新建用戶并和數據庫用戶做相應的映射。
不管做什么,我們都要相信自己,不能畏懼,不能怕遇到困難,什么都需要去嘗試,有些你開始認為很難的事在你嘗試之后你可能會發現原來她并沒有你以前覺得的那樣,自己也是可以的。如果沒有自信,沒有目標,沒有信心就不可能把事情做好,當其他人都在迷茫的時候,自己一定要堅信目標,大學畢業出去即面臨找工作,從學習這個專業,到以后從事這方面的工作都需要不斷地去學習去實踐,這次實踐可以給我們敲一個警鐘,我們面臨畢業,面臨擇業,需要這些實踐經驗,在困難面前要勇于嘗試,這是這次課程設計給我的最大感想!
以上基本是這次實習的體會了,設計進行的非常艱難,編碼非常不容易,才發現做一個項目最重要的不在于如何實現,而是實現之前的需求分析和模塊設計。創新很難,有些流行的系統其實現并不難,難的在于對市場的分析和準確定位。設計,是一個任重道遠的過程。
返回目錄。
首先,讓我的記憶追溯到大二暑假,在老大的指引下(),我接觸到microsoft?產品。那個時候我已經學過vc和asp,因為windows程序設計實驗的課的關系,接觸過vb,但是沒有專門去學他,因為習慣了c++里面的class,int,覺得vb的sub,var?看著就不是很順心。我是一個好奇心很強的人,突然看到了一個號稱“.net是用于創建下一代應用程序的理想而又現實的開發工具”,而且主推c#語言,由于對c語言的一貫好感,我幾乎是立刻對他產生了興趣。我就開始了對c#的學習,任何語言都不是孤立存在的,所以數據交互是很重要的,暑假的時候我把我們這學期的課本數據庫系統概論看了一遍。我記得以前用c語言編程的時候,數據是在內存中申請空間,譬如使用數組等等。很耗費內存空間。這個時候就是數據庫站出來的時候啦,于是我又裝上了sql?server,以前學asp的時候用的是access,那個時候只是照著人家做,理論是什么也不是很清楚。
通過一個暑假的學習,基本搞清楚了理論方面的東西,具體怎么用也不是很清楚。但是這為這學期的課程設計打下了鋪墊。
來到學校后,隨著這學期的數據庫課程大賽開始了,我有一個看法就是我自己應該具備的能力不是我會多少,而是我應該具備快速學會東西的能力。遇到什么就學什么。我們有時候很容易被一些專業名詞說嚇著,包括什么建模,軟件工程,數據分析,數據挖掘等等。我身邊就有很多同學被這些紙老虎所唬住,而沒有勇氣去接觸他們,總是說這個太難了之類的退堂鼓的話,他們低估了自己的潛力同時也壓抑住了他們自己的好奇心。其實都是紙老虎,又不是什么國家科研難題,只是去用一些工具,發明工具是很難,但是用一個工具就容易多了,just?do?it!我記得我做這個數據庫之前,我們老師說要做好前期分析,我就在網上搜索用什么分析工具好。最后我選擇了roseuml建模工具。在此之前,我腦袋里面沒有軟件建模的思想,什么uml建模對我而言就是一張空白的紙。但是真正接觸后并沒有想象的那么難,有什么不懂的上網去搜索,這是一個信息橫流的世界,有google,baidu就沒有不能解決的知識難題。以及后來的數據庫分析的時候用到的powerdesigner也是一樣。
開發的時候我想過用什么架構,c/s模式?模式有很多,怎么選擇?我就上網搜索現在最流行的架構是什么。結果搜到了mvc架構,就是你啦。我決定用這個架構,不會,沒關系,咱學。just?do?it!前期工作準備好后,加以實踐。這個時候我更加深入的了解了利用操縱數據庫的知識。并且對數據庫里面的存儲過程有了比較深入的了解。經過大概2個多星期的奮斗,數據集的圖書館管理系統。并最后非常榮幸的獲得了大賽的一等獎以及以及新技術應用獎。
與其臨淵羨魚,不如退而結網。這次數據庫課程設計給我的最大的印象就是如果自己有了興趣,就動手去做,困難在你的勇氣和毅力下是抬不了頭的。從做這個數據庫開始無論遇到什么困難,我都沒有一絲的放棄的念頭。出于對知識的渴望,出于對新技術的好奇,出于對一切未知的求知。我完成了這次數據庫課程設計,不過這只是我學習路上的驛站,的核心技術就是xml[至少微軟是這么宣傳的],我會繼續學習它,包括jave公司的j2ee我也很想試試,語言本來就是相通的,just?do?it!語言并不重要畢竟它僅僅是工具,用好一個工具并不是一件值得為外人道的事情,主要是了解學習思想。古語說的好:學無止境??!
我很慶幸我參加了這次數據庫大賽,讓我確實打開了眼界。
(最后,很感激學校給了我們這次動手實踐的機會,讓我們學生有了一個共同學習,增長見識,開拓視野的機會。也感謝老師們對我們無私忘我的指導,我會以這次課程設計大賽作為對自己的激勵,繼續學習。畢竟學習就是一個just?do?it的過程?。?。
。
數據庫課程設計大賽的塵囂漸漸遠去,懷著對這次大賽的些許不舍,懷著對當初課程設計開始時候的豪情萬丈的決心的留戀,懷著通過這次課程設計積累的信心與斗志,我開始寫這篇文章,為自己的足跡留下哪怕是微不足道但是對自己彌足珍貴的痕跡并期望與大家共勉。
首先,讓我的記憶追溯到大二暑假,在老大的指引下(老大勸我學),我接觸到microsoft公司的產品。那個時候我已經學過vc和asp,因為windows程序設計實驗的。課的關系,接觸過vb,但是沒有專門去學他,因為習慣了c++里面的class,int,覺得vb的sub,var看著就不是很順心。我是一個好奇心很強的人,突然看到了一個號稱“是用于創建下一代應用程序的理想而又現實的開發工具”,而且主推c#語言,由于對c語言的一貫好感,我幾乎是立刻對他產生了興趣。我就開始了對c#的學習,任何語言都不是孤立存在的,所以數據交互是很重要的,暑假的時候我把我們這學期的課本數據庫系統概論看了一遍。我記得以前用c語言編程的時候,數據是在內存中申請空間,譬如使用數組等等。很耗費內存空間。這個時候就是數據庫站出來的時候啦,于是我又裝上了sqlserver,以前學asp的時候用的是access,那個時候只是照著人家做,理論是什么也不是很清楚。
通過一個暑假的學習,基本搞清楚了理論方面的東西,具體怎么用也不是很清楚。但是這為這學期的課程設計打下了鋪墊。
來到學校后,隨著這學期的數據庫課程大賽開始了,我有一個看法就是我自己應該具備的能力不是我會多少,而是我應該具備快速學會東西的能力。遇到什么就學什么。我們有時候很容易被一些專業名詞說嚇著,包括什么建模,軟件工程,數據分析,數據挖掘等等。我身邊就有很多同學被這些紙老虎所唬住,而沒有勇氣去接觸他們,總是說這個太難了之類的退堂鼓的話,他們低估了自己的潛力同時也壓抑住了他們自己的好奇心。其實都是紙老虎,又不是什么國家科研難題,只是去用一些工具,發明工具是很難,但是用一個工具就容易多了,justdoit!我記得我做這個數據庫之前,我們老師說要做好前期分析,我就在網上搜索用什么分析工具好。最后我選擇了roseuml建模工具。在此之前,我腦袋里面沒有軟件建模的思想,什么uml建模對我而言就是一張空白的紙。但是真正接觸后并沒有想象的那么難,有什么不懂的上網去搜索,這是一個信息橫流的世界,有google,baidu就沒有不能解決的知識難題。以及后來的數據庫分析的時候用到的powerdesigner也是一樣。
開發的時候我想過用什么架構,c/s模式?模式有很多,怎么選擇?我就上網搜索現在最流行的架構是什么。結果搜到了mvc架構,就是你啦。我決定用這個架構,不會,沒關系,咱學。justdoit!前期工作準備好后,那么我就得把我暑假學的加以實踐。這個時候我更加深入的了解了利用操縱數據庫的知識。并且對數據庫里面的存儲過程有了比較深入的了解。經過大概2個多星期的奮斗,我完成了我的數據庫課程設計--基于數據集的圖書館管理系統。并最后非常榮幸的獲得了大賽的一等獎以及以及新技術應用獎。
與其臨淵羨魚,不如退而結網。這次數據庫課程設計給我的最大的印象就是如果自己有了興趣,就動手去做,困難在你的勇氣和毅力下是抬不了頭的。從做這個數據庫開始無論遇到什么困難,我都沒有一絲的放棄的念頭。出于對知識的渴望,出于對新技術的好奇,出于對一切未知的求知。我完成了這次數據庫課程設計,不過這只是我學習路上的驛站,未來十年的核心技術就是xml[至少微軟是這么宣傳的],我會繼續學習它,包括jave公司的j2ee我也很想試試,語言本來就是相通的,justdoit!語言并不重要畢竟它僅僅是工具,用好一個工具并不是一件值得為外人道的事情,主要是了解學習思想。古語說的好:學無止境??!
我很慶幸我參加了這次數據庫大賽,讓我確實打開了眼界。
(最后,很感激學校給了我們這次動手實踐的機會,讓我們學生有了一個共同學習,增長見識,開拓視野的機會。也感謝老師們對我們無私忘我的指導,我會以這次課程設計大賽作為對自己的激勵,繼續學習。畢竟學習就是一個justdoit的過程?。?。
這次數據庫課程設計用的是microsoftvisualfoxpro6.0,而我們平時用的microsoftsqlserver,雖然對vfp完全陌生,但在老師的指引下,我們近乎完美的完成了課程設計。當然過程是艱辛的。
面對著完全陌生的操作環境vfp,許多同學開始埋怨,要求用sql,用我們學過的asp等來完成設計。但我們慢慢發現用vfp做課程設計其實很有優勢,于是它的這個優勢激發了我們去了解它的欲望。老師先將vfp中基本的建數據庫,建表以及建表單等向我們演示了一遍,我們也仿照著做了,發覺并不是很難。但想到這次課程設計做的是一套學生學籍和成績管理系統,我們又開始茫然了。那天,老師給我們看了一段可以讓文字循環移動的代碼,這使我們產生了好奇心理,有了快速了解它的沖動。因為用面向對象的語言做特效,這還是第一次。下課之后我把那段我們不了解的語言寫的特效代碼發到了vfp論壇上請人幫忙解釋,最后我們完全理解了那段代碼的意思。
這次課程設計我們克服了炎熱的天氣(學校機房之前沒裝空調……后來設計完才裝……),也克服對新知識的恐懼感以及畏難情緒。我們懂得了團隊合作的重要性,也懂得了團隊中如何交流、如何分工,如何集體討論難點。我們充分利用了網絡資源(技術論壇,共享的實例等)。
由于平時接觸的都是一些私人項目,這些項目大都是一些類庫,其他人的交流相對可以忽略不計,因此也就不考慮規范化的文檔。實際上從學習的經歷來看,我們接觸的知識體系都是屬于比較老或比較傳統的,與現在發展迅速的it行業相比很多情況已不再適用,尤其是當開源模式逐漸走近開發者后更是如此。
雖然這次是一個數據庫課程設計,由于本人在選擇項目的時候是本著對自己有實際應用價值的角度考慮的,所以其中也涉及到一些數據庫以外的設計。對于ooa/ood的開發模式有時不免要提出一些疑問,uml是設計階段的工具,而它基本涵蓋了軟件設計的方方面面,也就是說按照這一軟件工程的正常流程,在動手寫第一句代碼之前,開發人員已經非常熟悉軟件產品了,這對于相當有經驗的架構師一類人說可能會很容易,但是我們作為學生,連足夠的編碼經驗都沒有,卻首先被教授并要求先ooa再oop,這樣直接導致的問題就是文檔與編碼對不上號,在修改代碼的時候基本不會再去審查文檔和先前的分析。甚至根本就是現有代碼再有文檔,即便是這種情況,代碼與文檔還是不對應。不可否認,在傳統軟件工程的詳細設計之前的項目過程中還是有很多利于項目開發的部分的。所以我就一直在尋找適合我——針對探究型項目——的開發模式,這次的項目也算是一次嘗試,當然這個過程并不會太短。
回到數據庫設計上了,這次的數據庫設計我是嚴格按照數據庫建模的步驟來進行的,老實說我并沒有感覺這樣的流程對開發帶來多大的幫助,反倒是覺得將思維轉化為圖表很浪費時間??傮w上來說這次的項目也不是很大,而且在數據庫的設計上比較保守,也就是說實際上數據庫設計還可以再完善完善的。隨著我對計算機領域的拓寬和加深,我也會靜下心來思考在接觸計算機之前的行為,很多次我能深切感覺到,其實我的大腦(未于別人比較)本身就是在使用一種更接近關系數據庫的方式來記憶,所以我很可恨自然的設計出符合三范式的表結構來,即便我不知道這些范式的確切含義??赡芫拖?范式不太容易用通俗易懂的方式解釋"一樣,在"讓工具用圖標表述我的思維"時費了一番力氣。
從我作為項目的提出人和實現者來看,這是個失敗的項目,結合幾次教學項目的的實踐,發現這也已經不是第一次了。主觀原因占多數,比如,嘗試新的開發方式,根據設計花了太多的時間來抽象出公用的庫而忽略業務邏輯。就這次項目而言,失敗的原因有以下幾點:
使用了新的開發環境(vim),這是首次在脫離高級ide的情況下編碼。
使用了新的開發語言(python,actionscript3),因為我一直比較喜歡"學以致用",而且這樣的"數據驅動型"軟件的整套自實現的庫都已經完成了,但是由于語言本身的差異,遷移時問題很多,當發現這一點是,已沒有多少有效剩余時間了。
編碼流程的不妥,我比較喜歡從底層的庫開始開發,因為一旦庫測試通過,將很容易將它放到不同的表示層下。但如果庫沒有測試成功,將導致整個項目沒有任何可視化模型,所以這次的項目無法提交"可運行的代碼"。
實踐目的的不同,我輕易不放棄鍛煉的機會,事實上,有機會就一定要比以前有所突破,總是照搬以前的做法還不如就不做呢。這個前提是因為現在能完全用來的學習的時間比較多,等到工作時再這樣做的可能性就很小了,因此當然要抓緊機會了。不過還有一個隱藏原因,總以為自己很了不起,其實"遇到的問題數跟人的能力是成正比的"。
在這次課程設計中,我們小組設計的是一個倉庫管理系統,通過設計這個系統,可以更方便地實現信息的瀏覽,查詢,添加等操作和報表輸出等功能,具體包括能實現產品入庫管理,可以填寫入庫單,確認產品入庫;產品出庫管理,可以填寫出庫單,確認出庫;借出管理,憑借條借出,然后能夠還庫;初始庫存設置,設置庫存的初始值,庫存的上下警戒限;可以進行盤庫,反映每月,年的庫存情況;可以查詢產品入庫情況,出庫情況,當前庫存情況,可以按出庫單,入庫單,產品,時間進行查詢;雖然這個系統的功能還不是很完善,還有很多功能尚未實現,但這也是我們共同努力的結果,只要有更多的時間,我相信我們能完成的更好。
通過這次將近一個星期的課程設計實訓,我對數據庫在生活中的廣泛應用有了更深的體會,同時也加深了對access20xx的認識,了解了相關的access的知識,尤其是對數據庫的原理與開發程序的應用有了更進一步的認識和了解。由于不會vb編程,很多功能實現起來很困難,但好在access有查詢、宏和窗體,特別是宏操作可以將幾個操作結合在一起,可以執行多個查詢,可以調用多次窗體。例如,在某個窗體中要顯示設備代碼表信息,所以這個窗體中建立一個子窗體用于設備代碼表的顯示,我們打開窗體后又對設備代碼表進行了跟新,所以窗體中顯示的并不是最新數據,我們往往需要及時看到設備代碼表跟新后的最新數據,窗體不會自動跟新我們就不會看到最新數據,所以這時候我們就會用一個宏操作在對設備代碼表跟新之后關閉窗體在打開窗體,這樣窗體就相當于完成了一次跟新操作。又例如,在一個表a中剛剛追加了一條記錄,我們要將每次剛剛新添加的記錄跟新到另一個表b中,用一個查詢是很難完成的,經過認真思考,得到了解決的辦法是,需要三個步驟,第一步,在表a中添加標志字段,設置默認值為‘否’。第二步,編寫跟新查詢將標志字段為‘否’的數據跟新到表b中。第三步,編寫跟新查詢將表a中標志字段為‘否’的跟新為‘是’。
讀書破萬卷下筆如有神,以上就是為大家帶來的10篇《數據庫課程設計心得體會》,希望可以對您的寫作有一定的參考作用,更多精彩的范文樣本、模板格式盡在。
一周的課程設計結束了,在這次的課程設計中不僅檢驗了我所學習的知識,也培養了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的.方法和技巧。在設計過程中,和同學們相互探討,相互學習,相互監督。我學會了運籌帷幄,學會了寬容,學會了理解,也學會了做人與處世,這次課程設計對我來說受益良多。
課程設計是我們專業課程知識綜合應用的實踐訓練,著是我們邁向社會,從事職業工作前一個必不少的過程?!扒Ю镏惺加谧阆隆?,通過這次課程設計,我深深體會到這句千古名言的真正含義。我今天認真的進行課程設計,學會腳踏實地邁開這一步,就是為明天能穩健地在社會大潮中奔跑打下堅實的基礎。我這次設計的科目是數據結。
數據結構,是一門研究非數值計算的程序設計問題中計算機的操作對象(數據元素)以及它們之間的關系和運算等的學科,而且確保經過這些運算后所得到的新結構仍然是原來的結構類型?!皵祿Y構”在計算機科學中是一門綜合性的專業基礎課。數據結構是介于數學、計算機硬件和計算機軟件三者之間的一門核心課程。數據結構這一門課的內容不僅是一般程序設計(特別是非數值性程序設計)的基礎,而且是設計和實現編譯程序、操作系統、數據庫系統及其他系統程序的重要基礎。通過這次模具設計,我在多方面都有所提高。
在界面設置中使用函數調用while。其中文本顯示顏色和背景顏色都可以任意按照自己的喜好,任意改變,但改變的時候必須采用標準英文大寫,同時在制作顯示菜單的窗口,大小根據菜單條數設計。最后采用printf輸出程序設計界面。
這次的程序軟件基本上運行成功,可以簡單的建立鏈式循環鏈表,并進行輸出,及循環語句的運用和選擇語句的控制。由于時間和知識上的限制,使得程序規模相對較小,即功能還不很全面,應用也不很普遍。原來c語言可是涉及很多知識,而不是枯燥無聊的簡單的代碼部分而已,利用c語言方面的知識,我們可以設計出更完善的軟件。
通過這次的課程設計,更是讓我深刻認識到自己在學習中的不足,同時也找到了克服這些不足的方法,這也是一筆很大的資源。在以后的時間中,我們應該利用更多的時間去上機實驗,加強自學的能力,多編寫程序,相信不久后我們的編程能力都會有很大的提高能設計出更多的更有創新的作品。
今天進行了一次完整的數據庫設計的過程,其實一直來說我都是非常害怕數據庫的設計的,因為在剛剛接觸的時候,我就知道,數據庫設計其實是一個項目的開端,因為數據庫設計實際上就是業務的設計,在需求清晰的時候,完成清晰流暢的業務設計又是一大難點。
一下為我自己的心得經驗希望大家批評指正!
對需求的認知完全沒有歧義;
有時更加困難的是一個實體會發生多個維度的分類,那么就把他的拆分維度一一分開;
“頻道”概念在消息分發時是一個非常靈活的概念;
總結,其實我在今天的數據庫設計中就學習到這些,學習是一個逐漸進步的過程,也是一個自我折磨的過程,希望我可以在這條路上走的再遠一點。
數據庫的課程結束了,通過對數據庫的學習也初步掌握其各方面的知識,數據庫的功能是強大的,面對目前的信息化社會,在整理、查詢、分析數據方面是一款強有力的工具。
學習的目的在于將知識能合理順利的運用,將書本知識化為自己所用,是一個不知到知道,了解完善應用的過程,尤其是計算機方面的課程更是如此,必要的上機練習是必不可少的。之前的計算機語言、匯編語言等,都是在上機練習中得到順利掌握。面對這學期的數據庫也是如此的過程,在開始對理論知識的學習,然后進行上機練習,目的在于讓我們更好的掌握其知識,熟悉數據庫編程語言等。
當然上機可也不是輕松是課程,在課前還是應該做些相應的準備。首先在理論知識的學習中必須先打好基礎,經過預習、聽課、復習、作業四個環節的學習,對于這門課的理論知識有了一定了解,才便于我們的上機課程,理論與上機的結合這樣才有助于我們更好的掌握知識。
在數據庫上機中主要是用到的sql(structuredquerylanguage)結構化查詢語言,它是一種數據庫查詢和程序設計語言,用于存取數據以及查詢、更新和管理關系數據庫系統。同時也是數據庫腳本文件的擴展名??梢詭臀覀冏龅矫嫦驍祿靾绦胁樵?、取回數據、插入新的記錄、更新數據庫中的數據、刪除記錄、創建新數據庫、新表和視圖、設置表、存儲過程和視圖的權限,功能非常強大。
學習數據庫的內容是從數據庫、數據表的創建和修改開始的,表是建立關系數據庫的基本結構,用來存儲數據具有已定義的屬性,在表的操作過程中,有查看表信息、查看表屬性、修改表中的數據、刪除表中的數據及修改表和刪除表的操作。從課程中中讓我更明白一些知識,表是數據最重要的一個數據對象,表的創建好壞直接關系到數數據庫的成敗,表的內容是越具體越好,但是也不能太繁瑣,以后在實際應用中多使用表,對表的規劃和理解就會越深刻。在編程方面是需要我們對于編程有邏輯思維能力及一定的編程技巧。在數據庫中插入表、表中的信息等都需要注意,不然很容易出錯。
在這個小組中,我負責建立圖書數據庫的索引、規則、默認值和約束。數據庫的索引是一個表中所包含的值的列表,注明了表中包含各個值的行所在的存儲位置。創建索引,我最大的感受是能節約大量時間,特別是當表中數據很大時。規則、約束、默認值則一起保證了數據的完整性。規則是數據庫中隊存儲在表的列或用戶定義數據類型中的值的規定和限制;約束定義了關于列中允許值的規則;默認值是用戶輸入記錄時向沒有指定具體數據的列中自動插入的數據。這些都是創建一個數據庫必不可少的元素。
表的創建。
在我們這個小組里,我負責關于表的創建部分,包括了字段名、數據類型和主鍵的設計。我做的數據庫設計部分,首先必須弄清楚表中列的數據類型,是char、varchar、int、datetime、smallint型等等,還有是幾個字符長度。還有的就是它的值是否可以為空的,這也是需要考慮的。在這個過程中我需要注意的是表的列名是不能重復的,它是具有唯一性的。設置主鍵相對而言就比較容易了,我最大的體會是對于表中每列的數據類型的分析必須謹慎細心,否則很容易出錯。
e-r圖。
在我們組我負責畫e-r圖。它是這次項目設計的關鍵點,如果e-r圖設計錯誤那么接下來的設計就無法進行,因此設計e-r圖時需要特別的認真。e-r模型能夠方便地模擬研究對象的靜態過程。e-r,即實體-聯系方法,e-r圖直觀提供了表示實體型、屬性和聯系的方法。在畫e-r圖過程中,必須明確識別實體、屬性和聯系,用矩形、橢圓和菱形對應框出來。畫這個圖為后面的數據庫設計打好基礎,通過這次的數據庫設計,我學到了不少知識,將理論運用與實際。
表關系圖。
在我們小組,我負責的是創建表關系圖這部分。建表關系圖相對來說也是比較容易的,只需要明確表之間的關系,有相同列內容的表用線連接起來。創建表關系圖時,把老師上課講的內容結合起來,就比較輕松了。通過這次小組設計,分工合作,我學到了很多書本上不能學到的東西,感覺對數據庫的了解有所提高,畢竟自己親自設計過一個數據庫,不再是書本上的理論,空空而談,自己覺得還是有收獲的。
實驗總結。
在這次項目設計中,我們小組所選擇的是設計一個圖書管理系統,這對我們來說是一次嘗試與創新的過程,也可以說是一個挑戰的過程。雖然學了數據庫這么久了,但是我們還是缺少經驗?,F在我們利用自己學到的知識設計并制作一個圖書管理系統,這本身就是一個知識轉化為生產力的過程,所以大家都很興奮,都不同程度的投入了很高的熱情與努力。
在具體的設計與實施中,我們看到并感受到了一個管理系統從無到有的過程,對具體的設計步驟、思路、方法、技巧都有了進一步的了解,并感受深刻。這次課程設計加深了我們對數據庫系統設計相關知識以及sqlserver相關功能的理解。比如在建立基本的表、視圖、索引、存儲過程、觸發器等,都比以前更加熟悉了,并在解決各種問題的過程中學到了很多新的知識。
深刻的認識到認真執行管理系統軟件標準的重要性,由于我們對管理系統軟件相關的標準和規范不太了解,缺少行為操作準則,所以在設計中手法比較生硬,主與次也沒能很好把握住,這些方面通過這次產品。那個時候我已經學過vc和asp,因為,我接觸到microsoft公司的net產品。那個時候我已經學過vc和asp,因為至少微軟是這么宣傳的,我會繼續學習它,包括jave公司的j2ee我也很想試試,語言本來就是相通的,justdoit!語言并不重要畢竟它僅僅是工具,用好一個工具并不是一件值得為外人道的事情,主要是了解學習思想。古語說的好:學無止境??!
我很慶幸我參加了這次數據庫大賽,讓我確實打開了眼界。
(最后,很感激學校給了我們這次動手實踐的機會,讓我們學生有了一個共同學習,增長見識,開拓視野的機會。也感謝老師們對我們無私忘我的指導,我會以這次課程設計大賽作為對自己的激勵,繼續學習。畢竟學習就是一個justdoit的過程?。┪抑苯訌膱蟾嫔厦鎻椭七^來的....所以這段也不刪去了.............呵呵。
在當代信息時代,對于不同領域的數據管理已迫在眉睫。其中空間數據管理是非常重要的一部分,而空間數據庫已成為了空間數據管理領域的核心技術。在本學期內,我作為一名IT專業的本科生,修讀了關于空間數據庫的課程。在這門課程中,我學習了空間數據管理的一些基本概念、原理和方法。在學習的過程中,我的一些心得也得到了不斷地升華和思考。
第二段:理論知識的學習。
在課程開始的時候,我首先學習了關于空間數據、空間數據庫和空間數據管理的一些最基本的概念。隨著課程的深入,我逐漸理解了關于空間數據庫的一些常用的方法和技術,例如空間索引、地圖投影等。我還學習了一些與空間數據庫相關的標準和規范,例如OGR、OGC等。在這個過程中,我開始了解了空間數據管理是一個非常復雜的任務,需要學生有扎實的數學、計算機和地理學知識。
第三段:課程實踐的經歷。
在課程的后半段,我們開始進行了一些比較有挑戰性的課程實驗,并取得了較好的收獲。在實驗中,我們掌握了空間數據庫的基本操作技巧,并將其應用到了真實世界的數據管理中。我們運用PostGIS、ArcGIS等軟件進行了地圖制作,地理信息的可視化等實踐,體驗了使用空間數據的過程。
第四段:收獲與啟示。
學習空間數據庫課程有好處太多了。最重要的收獲是,在學習空間數據庫的過程中,我們不僅學會了空間數據管理的一些基本概念和技術,也提高了我們的意識和技能,這將對我們未來的工作產生重大的影響。更重要的是,學習數學、計算機科學和地理學的知識真的很有趣!通過這門課程,我意識到,空間數據管理這一領域的前景廣闊、發展前途良好,這將會是一個很不錯的職業選擇。
第五段:總結。
總之,學習空間數據庫課程是一次非常有意義的旅程。在這個課程中,我獲得了大量的理論和實踐知識,為我將來的職業生涯打下了堅實的基礎。同時,空間數據庫課程也挑戰了我的思維和管控能力,激發了我的創新潛力,這都是我這一生都沒有想到的。作為一名IT專業的大學生,我珍視這次空間數據庫課程的機會,學習到很多新的知識,并且很有信心在未來的工作中與其他專業的人員攜手共創更美好的未來!
在大二的下學期剛學了數據庫這門課,對這門課的第一印象是書本蠻厚的,感覺學起來應該會很難很累。在學習這門課的過程中,在對數據庫的了解過程中,慢慢對數據庫有了感觀。數據庫這一詞并不是很難想象,并不是像外人看來很神奇。作為計算機專業的學生,這樣的專業術語或者專業知識是最基本的。
學習的時候沒有想象中的那么難,只要上課能聽懂就基本還可以。但是問題還是出在書本有點厚,有的時候上課的內容都要找很久才能找到,甚至有的時候老師講的知識書本上是找不到的,是另外補充而且是相當重要的內容。有的時候開小差,沒有聽到老師講的知識點,這就導致了以后的學習無法順利進行,使得學習起來十分困難。所以在數據庫這門課的學習中,上課一定要聽牢,就像老師說的那樣,這樣的專業課如果想憑考試前幾天突擊是行不通的,必須是日積月累的知識才能取得好成績。
通過對數據庫的學習,我也明白了各行各業都離不開數據庫,就算是一個小型的超市也離不開它??梢姅祿爝@門課的廣泛性,如果能夠認真學好它將來必有成就。我就是抱著這種信念去學習數據庫的。第一次接觸數據庫,第一次接觸sql語言,雖然陌生,但是可以讓我從頭開始學,就算沒有基礎的人也可以學得很好。剛開始練習sql語言的時候,并不是很難,基本上都是按照老師的步驟來做,還很有成就感。后來學了單表查詢和連接查詢后,就慢慢發現越學越困難了,每個題目都要思考很久,并且每個題目基本上不止一個答案,所以必須找出最優的答案。后面的刪除、插入、修改這些題目都變化蠻大的,書本上的例題根本無法滿足我們,好在老師給我們提供了大量的課件,通過這些ppt,我們可以鞏固課內的知識,還可以學習內容相關的知識,更好地完成老師布置的作業。
二、在完成這類作業時,修修改改是很正常的,不要因此而厭倦。第三、一個完整的數據庫一定不能出現錯誤,否則會在現實生活中帶來不必要的麻煩。
通過本學期數據庫的學習及大作業的完成,很有去作項目的沖動,但深知自己的能力水平有限,還需要更多的學習。
本學期開設的《數據庫系統及應用》課程已經告一段落,現就其知識點及其掌握情況以及對該門課程的教學建議等方面進行學習總結。
一、數據庫主要知識點。
我們首先從第一章緒論了解了數據庫的概念,其中有幾個較為重要的知識點,即數據庫系統。
dbs、數據庫管理系統dbms的概念以及數據庫管理員dba的職責。此外本章還介紹了數據庫發展的三個階段:人工管理階段、文件系統階段和數據庫系統階段。
第二章介紹了數據模型和三層模式數據庫。本章要求我們理解實體-聯系方法,并學會繪制e-r圖。此外還應掌握概念數據模型的意義和傳統的三大數據模型,以及數據獨立性和數據庫三層模式結構。
接著開始著重講述現在普遍使用的關系數據庫。包括關系數據模型的數據結構和基本術語,關系模型的完整性約束和關系代數運算。重點是關系模式完整性的分類和功能,以及關系代數中集合運算和關系運算。最后介紹了關系數據庫系統的三層模式結構。
第五章系統講述關系數據庫的標準語言sql的定義功能、查詢功能、操作和控制功能。重點在于數據查詢功能。另外還介紹了視圖的用法和動態sql中定義、操作和查詢功能。
第六章知識點有:存儲過程的創建和執行過程、修改和刪除;觸發器的基本概念,建立,插入和刪除視圖,插入、刪除和更新類觸發器。最后介紹了數據完整性。
第七章介紹安全性,包括安全性措施的層次、數據庫管理系統的安全功能等,用戶管理和角色管理,權限管理。其他的安全問題包括:數據加密、審計、統計數據庫和用戶定義的安全性措施。
事務管理這一章首先介紹了事務的概念、性質以及sql對事務的支持。并發控制――干擾問題、可串行性、封鎖、死鎖、隔離級別、封鎖與隔離級別;恢復――故障類型、備份類型、日志的概念、恢復模型、備份轉儲、還原。
第九章為關系數據理論:函數依賴術語和符號;函數依賴的公理系統――amp公理的內容及其正確性、邏輯蘊含和閉包、公理的完備性、閉包的計算、函數依賴集的等價和最小化;規范化――1nf、2nf、3nf、bcnf;模式分解。
第十章:數據庫設計。完善e-r模型中的概念――弱實體,依賴關系,強制聯系;數據庫設計的過程主要掌握其建立的步驟。
第十一章介紹面向對象數據庫:新的數據庫應用和新的數據庫類型;面向對象的數據模型――對象與類;對象的屬性、方法和狀態、對象的交互和消息、類的確定和分化、封裝、繼承、多態;對象關系數據庫與對象數據庫;面向對象數據庫的研究。
十二章“數據庫應用的結構和開發環境”并非重點,而第十三章的內容在軟件工程課程中就已經掌握,所以這兩章的知識點就略過了。
第十四章分布式數據庫與分布式數據管理:概念;分布式數據庫的分布方式;分布式數據庫特點和目標――更新傳播、分布式查詢處理、目錄表管理、分布式事務管理;sqlserver的復制及其術語、復制模型。
十五章數據倉庫:概念;結構;數據倉庫系統;建立數據倉庫系統;實現數據倉庫的數據庫模型;數據倉庫與決策支持。
最后,數據庫研究和應用的新領域這一章中掌握知識庫的知識即可。
二、學習數據庫的收獲。
sql(結構化查詢語言)是用于執行查詢的語法。但是sql語言也包含用于更新、插入和刪除記錄的語法。
查詢和更新指令構成了sql的dml部分:
select-從數據庫表中獲取數據。
update-更新數據庫表中的數據。
delete-從數據庫表中刪除數據。
insertinto-向數據庫表中插入數據。
sql的數據定義語言(ddl)部分使我們有能力創建或刪除表格。我們也可以定義索引(鍵),規定表之間的鏈接,以及施加表間的約束。
sql中最重要的ddl語句:。
createdatabase-創建新數據庫。
alterdatabase-修改數據庫。
createtable-創建新表。
altertable-變更(改變)數據庫表。
droptable-刪除表。
createindex-創建索引(搜索鍵)。
dropindex-刪除索引。
數據庫有保持數據的獨立性,所謂數據獨立,是指存儲在數據庫中的數據獨立于處理數據的所有應用程序而存在。也就是說,數據是客觀實體的符號化標識,它就是一個客觀存在,不會因為某一項應用的需要而改變它的結構,因此是獨立于應用而存在著的客觀實體。而某一項應用是處理數據獲取信息的過程,也就是應用程序,它只能根據客觀存在著的數據來設計所需要的數據處理方法,而不會去改變客觀存在著的數據本身。數據庫的傳統定義是以一定的組織方式存儲的一組相關數據的集合,主要表現為數據表的集合。
根據標準,sql語句按其功能的不同可以分為以下6大類:
數據定義語句(data-definitionlanguage,ddl);
數據控制語句(data-controllanguage,dcl);
數據查詢語句(data-querylanguage,dql);
游標控制語句(cursor-controllanguage,ccl)。
這門課中仍然有許多不太懂的地方,還需要以后進一步學習。
1、精講多練,自主學習。集中精力對基礎知識,基本原理和重點內容精心組織,精心講授,引導學生建立系統的知識結構。精講必須多練,從能力培養著眼,注重講、練結合,保證練的比重,加強技能訓練,培養學生自主學習,增強分析問題和解決問題的能力。
2、互動式教學法,每一堂實驗課均很好的“設計問題”、“引導思考”、“假設結論”、在實驗中“探索求證”。使不同程度的學生可以在不同層次上舉一反三。這樣,使得課堂學生生氣勃勃,師生互動,具有啟發性。
隨著互聯網和電子商務的迅猛發展,商場數據庫設計變得越來越重要。作為商場數據庫設計師,我有幸參與了一個大型商場數據庫的設計項目,并從中收獲了許多寶貴的經驗和體會。在這篇文章中,我將分享我對商場數據庫設計的心得和體會。
首先,數據庫設計是一個復雜的過程,需要充分了解商場的業務流程和需求。在我參與的項目中,我們首先進行了詳細的需求分析,與商場各部門的負責人進行了溝通和交流,了解他們的具體需求。通過與業務人員的深入合作,我們能夠更好地理解他們的工作流程和業務需求,從而設計出符合實際情況的數據庫。
其次,數據庫設計需要考慮到數據的完整性和一致性。商場數據庫中涉及的數據種類繁多,包括商品信息、庫存信息、銷售信息等等。為了確保數據的完整性和一致性,我們設計了嚴格的數據校驗規則和約束條件,例如使用外鍵關聯表、增加唯一性約束、設置默認值等。這樣一來,不僅可以避免數據錯誤和沖突,還能提高數據的質量和可靠性。
第三,數據庫設計需要考慮到系統的可擴展性和性能。商場數據庫往往需要處理大量的數據,并且隨著業務的發展和擴大,數據量還會不斷增加。因此,在設計數據庫時,我們需要合理劃分數據表,設計適當的索引和查詢優化,以提高系統的響應速度和吞吐量。此外,我們還采取了數據分區和分布式存儲等措施,保證系統具有良好的可擴展性。
第四,數據庫設計需要考慮到安全性和隱私保護。商場數據庫中存儲著大量的客戶信息和交易數據,如果遭到黑客攻擊或泄露,將給商場和顧客造成嚴重的損失。因此,我們在設計數據庫時,加強了安全認證和權限管理,使用了先進的加密和數據掩碼技術,保護數據的安全。此外,我們還制定了嚴格的數據訪問和操作規范,加強了對數據的監控和審計,確保數據的隱私得到保護。
最后,數據庫設計需要考慮到靈活性和可維護性。商場業務不斷發展和變化,因此數據庫設計需要具備一定的靈活性,以適應變化的業務需求。在我參與的項目中,我們使用了面向對象的建模方法,采用了模塊化和可重用的設計思路,使得數據庫的結構和業務邏輯可以靈活調整和擴展。此外,我們還編寫了詳細的用戶手冊和技術文檔,為數據庫的維護和升級提供了指導和支持。
總之,商場數據庫設計是一個綜合考慮各種因素的復雜任務。在設計過程中,我們需要深入了解商場的業務流程和需求,同時考慮到數據的完整性、一致性、可擴展性、性能、安全性、隱私保護、靈活性和可維護性等因素。只有綜合考慮這些方面,才能設計出高效、穩定、安全、可靠的商場數據庫,為商場的運營和管理提供堅實的數據支持。
本次課程設計的選題,研究及論文的撰寫均是在我們的指導教師×老師和×老師的悉心指導下進行的。設計中的每一個環節無不凝聚著×老師和×老師的心血。老師在數據庫設計方面有很多的實踐經驗,在我們面對問題時對我們的悉心指導及其嚴謹的工作態度銳意創新的精神,使我們受益匪淺,在此特別向×老師和×老師表示深深的感謝和由衷的敬意。
在系統的完善過程中,我們也遇到了這樣或那樣的技術問題,但經過自己的不懈努力及查閱大量的資料,最終還是完成了這次任務,雖然結果與老師的預期有一定的距離,但我們都盡了最大的努力。實訓期間,同學們也給了我許多有益的啟示和幫助,使我能夠順利完成。
在論文的最后,我要再次感謝×老師,她是我們的授課教師,同時也是我們實訓的指導老師。在上課時,她會細心地為我們講解課上知識,下課時,也會不遺余力地為我們解答疑難問題。在本次課程設計時她也非常的細心,每次有什么問題,她都會細心地講解與示范,直到我們明白為止。在這里,對您衷心地表示感謝孫老師和關老師的幫助,同學的幫助都是我在未來的最大財富。在最后,我要再次感謝給予我幫助的老師同學們。祝你們今后事事順心。
特別感謝×老師和×老師一直以來對我們的關懷與教導,再次祝您工作順利,事事如意。
。
近年來,隨著信息技術的快速發展,空間數據庫的重要性日益顯現。作為一名計算機專業的學生,我在本學期選修了空間數據庫課程,通過這門課程的學習,我對于空間數據庫相關技術有了更深入的了解,也形成了自己的一些心得體會。
在課堂上,我們系統地學習了空間數據庫的基礎知識,包括空間數據模型、空間查詢語言、空間數據管理等等。通過講解和實際操作,我們逐步理解了空間數據的組成方式、特點和處理方法,并通過實踐練習對零散的知識點有了更深入的掌握。這讓我意識到了空間數據庫在現代社會中的廣泛應用,更意識到了自己掌握這門技術的重要性。
第二段:空間分析與處理。
課程中,我們學習了空間分析與處理技術,掌握了常見的空間模型與分析方法。在實際案例分析中,我們可以根據實際需求進行不同類型的分析與處理,例如路網分析、空間推薦、物流運輸等。通過空間分析的學習,我更加深入地理解技術與應用之間的聯系,同時增強了自己在空間數據處理方面的能力。
第三段:數據可視化與展示。
除空間分析外,數據可視化與展示也是空間數據庫技術應用領域的重要研究方向。在課程學習中,我們了解了常見的數據可視化工具和技術,如ArcGIS、QGIS等,并通過實踐項目進行了實際操作,將空間數據以圖表、地圖等方式進行可視化展示,使得原本枯燥的數據變得生動直觀,方便了數據的展示和分析,同時也增強了我的數據可視化技能。
第四段:實踐項目。
除了課堂學習外,我們還通過課程設計實踐項目,運用所學知識完成一個具有一定難度的項目,這不僅鍛煉了我們的實踐能力,也強化了我們的空間數據處理技能。通過項目實踐,我深刻體會到了空間數據的實際應用場景,感受到空間數據庫技術在解決實際問題上的價值和實用性,同時也通過實踐項目讓自己的學習更加深入和系統。
空間數據庫是信息技術與地理科學結合的產物,在如今信息爆炸的背景下,它的應用價值越來越被人們所認同。通過這門課程,我深信空間數據庫技術將在未來持續發揮重要作用,在各個領域都有著廣闊的應用前景。自己在這門課程中的學習和實踐,也讓我有了更多的信心,更愿意投身于這個領域,探索出新的可能性,貢獻出自己的一份力量。
在現代社會,數據是一種非常重要的資源。對于各種類型的企業和組織,數據庫已經成為了不可或缺的一部分。在數據管理方面,數據庫應用設計非常關鍵。一個高效、可靠的數據庫應用能夠讓企業和組織更好地管理其數據,為業務發展提供支持。在此分享我對數據庫應用設計的心得體會。
第二段:考慮數據架構。
在數據庫應用設計過程中,首先要考慮的是數據架構。在設計數據結構時,需仔細分析和規劃整個應用的數據流。在設計數據表時,需要保證表與表之間的關系和數據的一致性。此外,為了能夠高效排序、檢索和分段數據,也要考慮好索引的設計。一個良好的數據架構能夠提高應用的性能,同時也能夠保證數據的完整性。
第三段:重視數據安全。
在數據庫應用設計的過程中,數據安全是必須要重視的問題之一。對于敏感數據,需要采用加密技術和訪問權限控制,以確保數據的安全。此外,在數據庫的備份與恢復方面,也需要制定相應的策略和流程,以確保數據的安全和恢復。
第四段:考慮應用性能。
應用的性能是用戶體驗的重要方面。在數據庫應用設計過程中,需要考慮如何處理大量數據請求和高并發訪問。在這個過程中,我們可以使用數據緩存技術、增加數據訪問點、優化數據庫連接、使用異步處理和分布式架構等技術,以確保應用的高效運行。
第五段:不斷優化和更新。
在實際運用中,一個好的數據庫應用需要不斷進行優化和更新。我們需要根據應用的情況進行數據庫性能和安全的監測和優化。同樣地,我們也需要不斷擴展和升級應用,以滿足新的業務要求,提高用戶體驗。
結尾段:總結。
在數據庫應用設計過程中,需要全面考慮數據庫架構、數據安全和應用性能等方面,才能設計出高效、可靠的應用。同時,隨著數據增長和業務發展,也需要不斷地更新和優化應用,以滿足不斷變化的業務需求。
一、課程設計的目的本課程設計通過實際設計一個小型數據庫管理系統,或者設計與實現一個頗具規模的數據庫應用系統,使學生進一步理解所學到的原理性知識,培養學生開發大型系統軟件的能力。
二、課程設計教學的基本內容和要求。
可由指導教師給定參考題目,允許學生自行設計題目,但必須經指導教師批準才可用。下面給出課程設計的幾個參考題目:
本項目對dbms的實現技術進行研究,通過建立和維護動態數據結構,實現數據的動態存儲,研究實現dbms核心功能的算法及數據結構,設計sql語言處理程序,在此基礎上,設計開發dbms原型系統,同時,也對系統軟件的研制方法進行有益的探索。
1.設計一個小型數據庫管理系統。
背景資料:
1)圖書室有各種圖書一萬多冊。
2)每種圖書都有書名、書號(isbn)、一名或多名作者(譯者)、出版社、定價、內容簡介:
3)借書證記錄有借閱者的姓名、所在單位、職業等。
4)憑借書證借書,每次最多能借8本書。借書期限最長為30天。
設計要求:
1)進行需求分析,編寫數據字典。
2)設計e-r圖。
3)實現新進圖書的數據錄入。
4)實現對所有購進圖書的分類查詢和分類統計。
5)能夠按書名、作者等分類查詢現有圖書的數量。
6)記錄借閱者的個人資料和所借圖書的書名、書號數據等。
3.員工薪資管理。
背景資料:
1)某單位現有1000名員工,其中有管理人員、財務人員、技術人員和銷售人員。
2)該單位下設4個科室,即經理室、財務科、技術科和銷售科。
3)工資由基本工資、福利補貼和獎勵工資構成,失業保險和住房公積金在工資中。
扣除。
4)每個員工的基本資料有姓名、性別、年齡、單位和職業(如經理、工程師、銷。
售員等)。
5)每月個人的最高工資不超過3000元。工資按月發放,實際發放的工資金額為。
工資減去扣除。
設計要求:
1)進行需求分析,編寫數據字典。
2)設計e-r圖。
3)實現按照科室錄入個人的基本資料、工資和扣除金額的數據。
4)計算個人的實際發放工資。
5)按科室、職業分類統計人數和工資金額。
6)實現分類查詢。
7)能夠刪除辭職人員的數據。
4.庫存物資管理。
背景資料:
1)有一個存放商品的倉庫,每天都有商品出庫和入庫。
2)每種商品都有名稱、生產廠家、型號、規格等。
3)出入庫時必須填寫出入庫單據,單據包括商品名稱、生產廠家、型號、規格、數量、日期、時間、入庫單位(或出庫單位)名稱、送貨(或提貨)人姓名。
設計要求:
1)進行需求分析,編寫數據字典。
2)設計e-r圖。
3)設計出入庫單據的錄入。
4)實現按商品名稱、出入庫日期的查詢。
5)實現分別按日、月和年對出入庫商品數量的統計。
5、學生學籍管理系統。
設計內容:主要的數據表,學生基本情況數據表,學生成績數據表,課程表,代碼表等。
主要功能模塊:
1)實現學生基本情況的錄入、修改、刪除等基本操作。
2)對學生基本信息提供靈活的查詢方式。
3)完成一個班級的學期選課功能。
4)實現學生成績的錄入、修改、刪除等基本操作。
5)能方便的對學生的個學期成績進行查詢。
6)具有成績統計、排名等功能。
7)具有留級、休學等特殊情況的處理功能。
8)能輸出常用的各種報表。
9)具有數據備份和數據恢復功能。
設計要求:進行需求分析,編寫數據字典。設計e-r圖。
學生成績表的設計,要考慮到不同年級的教學計劃的變化情況。
對于新生班級,應該首先進行基本情況錄入、選課、然后才能進行成績錄入。
6、銀行儲蓄系統。
設計內容:定期存款單,活期存款帳,存款類別代碼表等。
功能模塊。
1)實現儲戶開戶登記。
2)辦理定期存款帳。
3)辦理定期取款手續。
4)辦理活期存款帳。
5)辦理活期取款手續。
6)實現利息計算。
7)輸出明細表。
8)具有數據備份和數據恢復功能。
設計要求:要進行實際調研,系統功能在實現時參照實際的儲蓄系統的功能。同時要考慮銀行系統數據的安全與保密工作。數據要有加密功能。進行需求分析,編寫數據字典。設計e-r圖。
7、設備管理系統。
設計內容:設備明細帳表,設備使用單位代碼表,國家標準設備分類表等。
功能模塊:
1)實現設備的錄入、刪除、修改等基本操作。
2)實現國家標準設備代碼的維護。
3)能夠對設備進行方便的檢索。
4)實現設備折舊計算。
5)能夠輸出設備分類明細表。
6)具有數據備份和數據恢復功能。
設計要求:進行需求分析,編寫數據字典。設計e-r圖,具體設備編碼參考國家統一編碼方法,功能實現也要考慮通用性。
8、醫院藥品進銷存系統。
設計內容:藥品分類代碼表,藥品庫存表,供貨商信息表,采購信息表等。
功能模塊:
1)新藥品的入庫。
2)過期藥品的出庫登記、處理記錄。
3)藥品庫存檢索。
4)供貨商信息檢索。
5)藥品采購記錄管理。
6)藥品用藥說明信息管理。
7)輸出相應的數據報表。
8)具有數據備份和數據恢復功能。
設計要求:具體項目內容去醫院進行調研,藥品編碼也應參考國家統一編碼方法。
1.課程設計應按教學計劃的安排統一進行。
2.指導老師提前與學生見面,介紹課程設計的目的、意義、要求等。
3.每位學生自行選擇題目,在教師指導下獨立完成程序的設計、開發和調試等工作。
4.在指導老師的監督下學生分組完成課程設計答辯,答辯過程由學生主導,輪流擔任答辨委員。以此來加強和督促學生重視課程設計,達到課程設計效果。
6.指導老師在課程設計結束后1周內給出課程設計評語與成績,并報送有關單位。
四、評分標準。
課程設計成績采用五級(優、良、中、及格、不及格)評分制,指導教師依據課程設計報告、實際調試結果和答辯情況評定成績。注意:選擇第一個題目的,成績至少為良好。
五、其他。
1.對先修課程的要求:要求學生修過計算機導論、高級語言程序設計、數據庫原理及應用等課程。
2.注意事項:除了一人一題,學生還可以自行組團完成一個功能較完整的實用系統,每組人數限制在5人以內,每組一名負責人,并分工明確。
3.第11周周日舉行答辯。
附件:
一、可行性研究報告、項目開發計劃。
二、需求分析、數據要求說明。
四、詳細設計說明書。
六、總結。
1.正文宋體小四號字。
2.文中英文用新羅馬(timenewroman),四號。
3.源程序清單用英文新羅馬五號。
。
前言:
隨著信息化時代的到來,數據庫的應用日益廣泛,不僅僅是各大企業都有自己的數據庫,個人的電腦、手機上也人人都有不同類型的數據庫應用,越來越多的人開始關心、學習、設計數據庫。本文將分享我的數據庫應用設計心得體會。
一、需求分析是關鍵。
需求分析是數據庫應用設計的關鍵部分,不僅要考慮到用戶對數據的存儲需求,還要考慮到數據的使用、查詢、統計等需求。對于一個數據庫應用項目,要先對需求做到清晰的認識,并做出詳細的需求分析和規劃。在需求分析和規劃的過程中,要盡量和用戶進行充分的溝通,了解用戶對數據的整體使用情況和特殊需求,以便更好地滿足用戶需求。
數據建模是數據庫應用設計中的重要環節,正確的數據建模是保證設計質量和正確性的關鍵。在進行數據建模時,需要對每個實體和關系進行細心分析,并根據需求設計出相應的實體屬性、實體關系和約束條件等。在數據建模的過程中,需要提前預見各種可能出現的情況,合理地進行設計和規劃,保證在日后使用過程中不會出現預料之外的問題。
三、合理劃分表可以提高效率。
當數據庫應用項目的規模較大時,需要對數據進行有效地劃分和優化,以提高系統的運行效率。比如對數據按照時間、地域、類型等進行劃分,將不同的數據存儲在不同的表中。這樣不僅可以減少數據冗余、提高數據存儲效率,同時也可以從查詢效率、維護效率等多個方面提高系統的性能。
四、設計合理的索引能加速查詢。
當我們需要處理數據量比較大的查詢時,通過設計合理的索引可以大大提高查詢效率。對于日常使用相對較頻繁的字段,我們可以通過設置聯合索引或多列索引來加速查詢速度。通過設置主鍵、外鍵等約束條件,可以進一步提高查詢效率和數據安全性。
五、安全性和備份需充分考慮。
數據庫中存儲的數據對于企業或個人都是非常重要的資產。因此,在設計數據庫應用時,需要充分考慮數據安全性和備份。通過權限管理、數據備份、數據加密等多種方式保護數據安全,可以避免數據泄露和損壞等問題。同時,在備份數據時,需要定期進行倒庫備份和增量備份等措施,以保證系統數據的完整性和可回溯性。
結語:
以上是我在數據庫應用設計過程中的心得體會,希望能為大家提供一些幫助和借鑒。當然,數據庫應用設計是一個綜合性的過程,需要在多個方面進行考慮和規劃。只有通過多方面的學習和實踐,才能夠更好地掌握數據庫應用設計的技能,為企業和個人創造更大的價值。
版權聲明:此文自動收集于網絡,若有來源錯誤或者侵犯您的合法權益,您可通過郵箱與我們取得聯系,我們將及時進行處理。
本文地址:http://www.springy.cn/fanwendaquan/xindetihui/184124.html