個人第一個python web開發框架(4)——數據庫結構設計與建立

  小白作好前端html設計後,立刻開始進入數據庫結構設計步驟。html

  

  在開始以前,小白回憶了一下老大在公司裏培訓時講過的數據庫設計解說:前端

  對於初學者來講,不少拿到原型時不知道怎麼設計數據表結構,這是很正常的事,能夠經過借鑑別人的項目總結經驗,慢慢就會了。python

  拿到原型後,咱們要認真觀察原型裏顯示的內容有那些,考慮一下這些內容中那些是不變的,即寫死在頁面中的,那些是須要後臺更改變更的,將這些變更的記錄下來,添加到數據字典中。在記錄這些字段時,還要作的事就是分類,一個類別就是一個數據表。(固然若是初學者很牛的話,那你也能夠像一些架構師大神那樣,不用原型直接打開設計工具繪製表結構關係圖也沒有任何問題)sql

  而後咱們再根據業務流程與業務需求,對字段進行增減優化。數據庫

  最後再根據目標業務量,與一些非功能的質量屬性要求,來優化表結構。作完這一步,數據表結構設計就八九不離十了。數據結構

  固然在設計時,咱們要注意的是表結構的可擴展性,也就是說某些字段會不會存在一對多的狀況,若是你設計成一對一的話,那有可能後續要升級功能時就會遇到不少障礙了。架構

  另外,咱們也要立足當前,不能爲了未來有可能的事情去增長一大堆冗餘字段,到最後可能多了好多沒有用過的字段存在。對於python來講,它不須要去生成一大堆實體類,因此咱們在後續根據須要添加各類字段也是很是方便的,建議絕要用到時再添加對應的字段。數據庫設計

 

  1、表結構設計編輯器

  首先咱們打開有公司介紹的頁面分佈式

  

  

  能夠看到公司介紹裏面顯示的是圖片和文字信息,它屬於信息編輯類型,而聯繫咱們也是同樣的,因此能夠把它們放到一個信息表中統一管理,根據原型咱們能夠看到首頁和公司介紹頁面展現的圖片大小是不同的,因此須要增長一個封面圖片地址字段,用來存放首頁顯示的圖片地址,而公司介紹頁的圖片與內容文字能夠一塊兒存儲到內容字段中(首頁展現內容時,可使用代碼過濾掉內容中的圖片),因此這裏須要兩個字段來存儲對應的內容。另外,爲了方便後臺管理員區分這是什麼內容的記錄,因此再增長一個標題字段來進行說明,不用作前端展現用。

  前面的分析,小白使用老大給的數據字典excel模板,設計對應的數據表結構(使用的是postgresql數據庫,見下圖)

  

  PS:主鍵幾乎每一個數據表都是必須的,通常使用自增類型的整形數值,對於數據量比較大的分佈式數據結構,多數會用uuid作爲主鍵id;另外對於信息表,還會增長一個額外的add_time來存儲這條記錄添加的時間

 

  打開產品中心與產品詳情頁面

  

  

  從原型的產品中心頁面,咱們能夠看到左欄有產品分類列表,右欄是產品詳細內容,因此咱們須要分兩個表來進行存儲,並將它們關聯起來。產品分類表用來存儲分類信息(須要有分類名稱字段),用於管理前端分類列表的展現,能夠增長是否啓用字段,方便新增或下架某個系列產品時,批量上線或下線操做用的(顯示或隱藏該分類)。

  而產品信息表則能夠根據產品詳情頁面所展現的內容字段來進行添加(從產品詳情頁面上能夠看到,須要產品名稱、編碼、規格、保質期、產地與產品描述字段)。除了頁面展現內容外,咱們還須要增長產品分類id字段,用來綁定產品分類表,用於點擊產品分類時,後臺根據這個分類id來查詢出對應的產品。另外增長封面圖片地址字段,用於顯示產品列表時,展現對應的圖片。最後是否啓用字段也是爲了顯示和隱藏產品用的。

  

 

  除了以上內容外,咱們還須要增長一個管理員管理表,用來管理後臺登陸用戶用的,因爲這個企業站過小了,因此小菜鳥偷懶不作這個管理頁面,哈哈...後面的故事慢慢展開後會逐漸完善系統功能

  

 

  2、數據表SQL代碼生成

  運行下載包中的ExcelToPostgreSql.exe(這是用C#開發的,須要Framework 3.5才能運行),選擇下載包中的數據字典,而後填入Excel表名稱Sheet1,點擊運行就能夠看到生成好的Sql執行代碼了(若是用WPS打開了數據字典,點運行可能會無反應,是由於WPS獨佔了excel文件,須要關閉後纔會正常運行)

  

  PS:因爲這個軟件是隨手寫出來的,因此不是很完善,必須遵循下面一些要求才行

  第一行列的中文說明不能刪除,否則運行時會出錯;表與表之間要空一行;主鍵列支持PK(建立主鍵)、IX(生成索引)與UX(建立惟一索引)三種,若是想要建立複合索引,只能手動添加;容許空列,只須要添加no就會添加非空限制;默認值列,默認時間類型字段爲null值,若是想要設置爲now(),即生成當前時間,則須要將容許空列設置爲no就能夠了,由於now多是excel的關鍵字,這個默認值程序讀不出來;另外,text類型字段默認值爲'',即生成時會自動添加。

 

  3、建立數據庫與數據表

  打開pgAdmin鏈接本地postgresql數據庫

  點擊

  在彈出窗口中,輸入數據庫名稱:simple_db,點擊肯定,完成數據庫建立。

  

  

  而後點擊剛建立好的數據庫後,再點擊標題欄的sql查詢分析器

  

 

  在彈出來的sql編輯器窗口中粘貼前面生成好的sql語句進來,而後點擊執行查詢,數據表就建立好了

  

  接着清空sql編輯器裏的代碼,輸入下面語句,點擊執行建立後臺管理員帳號,方便後面開發操做

INSERT INTO manager(login_name, login_password, is_enable) VALUES ('admin', 'E10ADC3949BA59ABBE56E057F20F883E', 1);

  到這裏就完成了數據庫的相關設計與建立工做了,點擊下面連接下載相關文件

  下載數據字典與sql語句生成工具

 

 

版權聲明:本文原創發表於 博客園,做者爲 AllEmpty 本文歡迎轉載,但未經做者贊成必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接,不然視爲侵權。

python開發QQ羣:669058475(本羣已滿)、733466321(能夠加2羣)    做者博客:http://www.cnblogs.com/EmptyFS/

相關文章
相關標籤/搜索