鄭家宇
摘要 數據庫系統(DatabaseSys tem)是由數據庫及其管理軟件組成的系統。在現在社會中,DBS是比較理想的一種實際可運行的存儲、維護和向應用系統提供數據的軟件系統。在實際生活中,能夠用DBS對數據庫進行管理,從而解決數據獨立性問題,實現數據的統一管理以及達到數據的共享目的。文章圍繞DBS在超市管理系統中的實踐設計應用,從需求出發,對數據庫的概念結構,邏輯結構以及物理結構的設計來分析,進行優化維護,來實現對DBS在信息管理方向的初步應用。
【關鍵詞】DBS 超市管理系統 結構設計
從20世紀60年代后期,使用電子計算機進行對數據處理的規模越來越大,操作系統也日益成熟,出現了數據庫技術。直到今天,數據庫歷經三代演變,從第一代的發展到現今面向對象數據庫模型為主的數據庫系統取得的巨大成功,致使數據庫系統在現今社會得以蓬勃發展和廣泛應用。作為最流行的最流行的數據管理方式之一,超市管理系統將是一次DBS初步在信息管理方向應用的最好體現。
1 超市管理系統的實現以及流程
1.1 從需求出發設計超市管理系統的主要功能
登記超市里的所有商品,提供查詢商品價格庫存等功能
查詢特定商品的銷售記錄,包括銷售數量,銷售時間以及銷售人員的相關查詢
擁有職工人員的不同權限,如銷售員能夠查看商品信息,店鋪老總能夠查看各職員的銷售記錄。
1.2 數據庫概念結構設計
概念結構設計一般采用E-R圖的方式來清晰的描述各局部之間的聯系,本文采取自頂向下的方式進行需求分析,然后自底向上進行概念設計。在需求分析時,盡量多從超市出發,尋求超市的實質需求,直到超市商家滿意為止。從需求出發,需求有商品,銷售,銷售人員三大塊,但是不同的職員要有不同的權限,所以需要一個登錄實體去區分權限,商品要有商品的各項內容,銷售以及銷售人員類似,所以在設計概念結構時,定義了登錄,商品,銷售,以及銷售人員四個實體。
1.3 數據庫邏輯結構設計
將E-R圖轉化為關系模型,需要確定各個實體各自的屬性,以及建立各個實體之間的聯系。登錄有用戶名和密碼兩個屬性,商品有商品號,單價,商品名稱,商品類型,庫存量,廠商屬性,銷售有銷售號,銷售數量,銷售時間,職工號,商品號屬性,銷售人員有職工號,姓名,性別,用戶類型屬性。建立聯系是,登錄與商品,銷售和銷售人員之間為三元聯系(因為權限不同),商品能夠查看銷售情況,從銷售情況能查看銷售人員的信息。
l.4 數據庫物理設計
講關系邏輯模型轉化為物理模型,登錄頁面實現用戶登錄注冊退出三個功能。頁面登入后可選擇商品信息查詢,銷售記錄查詢,員工信息查詢以及退出四個功能,相當于選擇所需查詢的過渡頁面,不過權限不同,所顯示的內容不同。商品頁面可查詢添加刪除特定商品的記錄,記錄上會顯示商品號,單價,庫存,廠商等信息記錄,商品號為主碼。銷售頁面與商品頁面類似,所查詢的記錄內容不同,為銷售號,銷售數量,職工號等信息,可添加刪除,有權限要求。職工頁面記錄內容為職工號,性別,名字,可選擇用戶類型,用于限制登入后的權限,同樣可添加刪除,有權限要求。
同時需要建立數據庫的四張表以及各表的功能,登錄表,商品表,銷售表以及銷售人員表。
(1)登錄表:用于登錄小型超市管理系統,有注冊和登錄功能(需要用戶名和密碼)
(2)商品表:用查詢添加刪除庫存商品(包括商品號,單價,商品名稱,商品類型,庫存量,廠商)。
(3)銷售表:用于記錄職工銷售的商品(包括銷售號,銷售數量,銷售時間,職工號,商品號)。
(4)銷售人員表:用于查詢添加刪除銷售人員信息(包括職工號,姓名,性別,用戶類型)。
各表結構數據類型約束條件不細分析。
1.5 數據的保護設計
1.5.1 防止用戶直接操作數據庫的方法
設計登錄頁面,需要注冊以及登錄才能使用數據庫。
.5.2 用戶帳號密碼加密方式
出現“*****”這樣就不會讓別人知道密碼是什么。
1.5.3 商品與銷售掛鉤
當銷售商品后,商品表庫存會相應減少,以減免因銷售庫存沒有但商品表顯示還有庫存的顯示錯誤。
1.5.4 角色與權限
老板可訪問的表:商品表,銷售表,銷售人員表,操作權限為所有
收營員可訪問的表:商品表,銷售表,商品表操作權限查看商品以及庫存,銷售表操作權限查看銷售的物品。
2 數據庫的實施與優化
2.1 注意時空效率
分析并優化數據庫的“時.空”效率,盡可能地“提高處理速度”并且“降低數據占用空間”。
由于該系統用于超市系統,超市里面商品種類繁多,以及同一類別的商品也有多種口味,因此商品的數量將可能達到百萬級,這對商品的檢索帶來了極大的時間消耗。
2.2 對于百萬級的數據進行優化
(1)對查詢進行優化,盡量避免全表掃描。
(2)在寫代碼的時候要注意個別子句的使用,如避免where語句使用NULL來判斷,避免where使用or來連接條件,慎用in和notin等
(3)盡量避免使用游標,因為游標的效率較差,如果游標操作的數據超過1萬行,那么就應該考慮改寫。
(4)對于多張大數據量(這里幾百條就算大了)的表JOIN,要先分頁再JOIN,否則邏輯讀會很高,性能很差。
3 結論
DBS是一種先進的數據信息管理的管理系統,在社會各界都有著密不可分的作用。從超市管理系統可以看出,DBS在用戶與關系數據庫之間是十分靈活友好的,建庫相對簡單以及結構簡單分明,非常適合像小超市小餐廳之類的商家使用。還有DBS的數據共享性高,冗余度低且易擴充,從使用者的角度看,有著易操作,節約儲存空間等好處。在建庫初期,對產品的需求分析,以及為了區分商家與雇員的使用,加入了使用權限,這十分符合現實生活中場景的需求。
參考文獻
[1]劉志嫵等,基于VB和SQL的數據庫編程技術[M].北京:清華大學出版社,2008 (04).
[2]劉彬彬等.Visual Basic從入門到精通(第2版)[M].北京:清華大學出版社,2010 (07).
[3]劉志成:主編.SQL Server 2005實例教程[M].北京:電子工業出版社,2008 (07).
[4] CSDN數據庫SQL優化大總結