資料庫設計心得 臭皮匠小隊

2022-07-09 06:18:14 字數 3200 閱讀 8593

組員心得體會:

鄒智翼:

庫連線起來的核心部分。我們小組的專案是智慧型紀檢:做乙個用來審核審批的手機軟體,實際上就是乙個流水線式的任務處理應用,用於給使用者來處理在web端發起的任務,需要在手機端顯示任務流程內的所有內容和相關檔案資訊。

這次資料庫小組設計,在統籌上存在一些問題,導致彙總真和成乙個表時十分麻煩。雖然提前開會商討了資料庫中表的命名方式以及各屬性型別的選擇,但是varchar的長度沒有統一,並且部分內容沒有按照統籌要求設定,導致後面必須修改統一。由於約束名字忘記提醒組員進行修改,各種外來鍵的命名全是預設字串,雖然沒有影響,但是如果以後需要刪除外來鍵時,會非常麻煩,所以必須將其規範化,但是這本應該在彙總前就修改好的,統一修改極其耗時間。

部分資料庫設計不滿足正規化要求,經過老師提出意見後進行了修改,由於任務中大部分的資料都是通過在前端進行選擇填寫的,所以說為此建立了很多的小表,用於儲存選擇的結果編號,然後使用乙個對映表對應選擇結果內容。

陳柏宇:

洪綿權:

在這個專案中我們進行了資料庫設計,對於從來沒有過資料庫設計經驗的我來說,還沒設計之前我以為只是簡單的根據專案進行設計字段,可是真正的進入設計階段才發現資料庫設計沒有想象中的那麼簡單,我們需要考慮到這個字段對應在實際專案中的哪個功能,有什麼作用,與其他表中的字段有沒有關聯。就從最簡單的命名都需要注意,我們需要保證命名的統一,不能造成二義性且不能晦澀難懂;然後就是資料型別,資料的長度,我們需要有預留空間,考慮到更多的其他情況; 然後就是資料庫表的設計最後多寫些注釋,方便其他人,也方便開發人員本身在後續的開發中能夠更快的了解資料庫的結構,尤其是當資料庫表很多時。還有就是需要理清每個表之間的關係,設定好相關的約束比如主鍵外來鍵等,以方便維護。

其次,對於沒有專案經驗的我來說,可能還不是很籠統的了解資料庫設計對於乙個專案的重要性。首先對於乙個專案來說,需要儲存管理的資料量可能會非常大,因此我們首先需要進行資料庫設計,乙個良好的資料庫設計可以節省資料的儲存空間,並且能夠保證資料的完整性,也方便進行資料庫應用系統的開發,最重要的是方便我們對資料的管理及維護。而如果資料庫設計比較糟糕,就會造成資料冗餘、儲存空間浪費,資料更新和插入的異常等一系列問題,因此資料庫設計在專案開發中十分的重要。

最後,資料庫設計的步驟也很重要,一般是有如下幾個階段:

需求分析階段,概念結構設計階段,邏輯結構設計階段,物理結構設計階段,資料庫實施階段及資料庫的執行和維護階段。遵循資料庫的設計步驟能夠幫助我們設計更合理且優良的資料庫,但是我們這次好像並沒有完全按照這些步驟進行資料庫的設計,希望在以後能夠繼續完善。

雷佳晨:

這次資料庫設計的時候,正如資料庫實驗的老師教我們的那樣,設計資料庫的人,要對最終的前端軟體、產品做到「心裡有數」:我的這個資料庫設計完成後,它的前端產品該是什麼樣子的,該如何如何使用,有哪些細節問題等等,只有做到心中有前端產品,知道各種資料該如何存放,主鍵怎麼設定,各個表之間有什麼關係,各種資料都需要怎麼樣的表,大致需要多少張表來存放資料,有哪些資料需要儲存,哪些資料又不需要儲存,哪些資料怎麼樣存才能更加合理,怎麼樣存才能更好的滿足我的業務需求,同時還要思考該如何讓他們滿足第

一、二、三正規化等、以及更高的要求,所以說,按我的理解來說,資料庫的設計者,在設計資料庫的過程中以及資料庫設計完成之後,必然是已經對最終的前端產品有了乙個詳細的了解了,只有心裡有了成品,才能設計出真正合理的資料庫。

這次我們的資料庫中,主要要儲存的就是八個任務的發起流程的填表階段,那些表中的資料很多,很雜亂,並且一長串的資訊中,只能由乙個任務編號作為它整張表的主鍵,很難再去具體的細分出其他的小表,所以說,從資料庫的設計角度來說,這次我們的資料庫設計顯得很冗餘,每張表存放的資料都很多,可能有三四十個字段,這在查詢等操作時是很麻煩的,但按照我們資料庫的實際應用來說,這些表的應用背景應該是多「寫」少「讀」少「修改」的,也就是說,一張存放發起流程**資訊的大表一般來說只進行一次寫入,在寫入完成後,是極少對其資料進行增刪改的,所以說,這個資料庫的發起表的設計,從普遍意義上來講的確是很容易,很反常,但按照實際的應用背景來看,其實是沒有太多的問題的。在這次資料庫的設計的時候,我又再一次的感受到了團隊的力量,正如老師說的那樣,每個人的思考方式不一樣,思考角度不一樣,資料庫的設計也是不一樣的,每個人的資料庫只要能正常使用,就算合理,但要有道理、要符合實際的應用。七八周設計資料庫時,我們小組進行了很多次的線下討論,每個人都來分析、介紹一下自己對各個流程的理解以及建表的具體想法,我們小組互相交流、討論,最終整合意見、確定了一種最符合我們的前端實際使用的設計方法,而這些肯定是乙個人設計資料庫時所做不到的事情,所以團隊在資料庫的設計等方面起到的作用是無比重大的。

資料庫的設計目前已經告一段落了,現在的任務是α迭代版本的完成了,加油吧!

梁耀公升:

我們小組的專案是智慧型紀檢監察系統,對於這個系統,前面部分的線索管理涉及很多需要儲存的資訊,工程還是比較大。

相對於我們之前做過的專案,就比如結對程式設計,資料都是靜態的,而現在做的專案,是前端要與資料庫對接,來去獲取,去展示這麼乙個動態資料,這是和以往的最大差別。

對於資料庫設計之前,我們應該首先確定好設計的規範性。比如說資料型別的應確定好標準,由於前面需求文件,我們都對需求有了一定的了解,然後我們可以更好地去設計資料庫,對於資料庫,我們要分析出來有哪些實體,以及他們的屬性,以及實體之間的關係,如何建立連線。

在這次資料庫的設計與建立中,在學習的過程我們學到了很多,懂得也很多,在資料庫設計方面我們選擇使用power designer工具,通過構建cdm和pdm,然後將資料字典匯出,將建表指令匯出,可以省去很大一部分的工作量,同時,對於在構建pdm的過程中,我們也會對整個資料庫的結構慢慢地滲入了解清晰。

在資料庫的建立的時候,我們也遇到了一些問題,比如說資料冗餘,重複的資料要盡量要少,乙個屬性不應該存在多個表中,如果出現這種情況,對於這個資料的更新或者檢查的時候就會出現問題,如果資料發生變化的時候,都掉了某個表,那麼就會導致資料儲存就會不一致了。

在整個過程中我們學到了很多有用的技能,對資料庫的有了更好的認知和理解,對於設計的過程中,需要合理的分工和協作,揚長避短可以很好地提高大家的積極性,同時對於設計表的時候,需要多聽取其他人的意見,不能固執己見。

小組總結:

在這次資料庫設計中,由於我們組的專案是乙個任務處理型專案,需要建立很多個表,所以建表的任務就按任務流程分配給了各個組員。由於各個任務表的設計分開了,所以需要我們進行統籌規劃,避免整合時出現太多問題。在整合規劃上,組內認為的難題有:表內屬性如何命名、表內屬性如何規範化設定,而解決改問題的方法就是多交流,然後定下乙個命名規範和資料型別規範,但是實際操作上,我們組設定了屬性的命名規範和資料型別規範,但是忘了讓組員重新命名約束名,使得整合時的時間消耗更大。設計資料庫時,組內的交流、分工、協作必不可少,只有多加交流,了解各組員的設計思路、想法,才可以減少在整合階段出現的矛盾衝突。

資料庫設計心得

在培訓學校學習期間,老師一直很重視培養我們的 在這裡只指關聯式資料庫 資料庫設計能力的提高,在軟工期間很注意,現在的專案練習中又重點訓練,這是我對資料庫的設計不敢輕視。第乙個問題,資料庫的表依據什麼來建立。第二個問題,乙個優秀的資料庫具備哪些標準。我想,首先以滿足業務要求為底線,業務需要操作的資料及...

資料庫設計心得

今天,是我實習的第三個星期,也就是星期一,公司在趕乙個專案,短時間內需要快速融入公司的專案,了解整個大概,主要是要考自己能夠快速看懂,並且理解。在這過程中,看了這個專案的資料庫後,我對資料庫方面有了新的認識,而不單單是在學校所學的,在學校的時候,只懂得跟著書本上走,顯示分析出整個系統的實體,然後畫出...

資料庫設計心得

例子 alter table bx message 表名 addcolumn sendchannel 欄位名 int 4 null comment sendchannel的型別是int,它的標識是從0開始的,這樣帶來的問題就是,我在使用mvc的模型驗證時 required 沒有傳sendchanne...