1. <nobr id="easjo"><address id="easjo"></address></nobr>

      <track id="easjo"><source id="easjo"></source></track>
      1. 
        

      2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
      3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>
          貴州做網站公司
          貴州做網站公司~專業!靠譜!
          10年網站模板開發經驗,熟悉國內外開源網站程序,包括DEDECMS,WordPress,ZBlog,Discuz! 等網站程序,可為您提供網站建設,網站克隆,仿站,網頁設計,網站制作,網站推廣優化等服務。我們專注高端營銷型網站,企業官網,集團官網,自適應網站,手機網站,網絡營銷,網站優化,網站服務器環境搭建以及托管運維等。為客戶提供一站式網站解決方案?。?!

          SQL Server實現某書店圖書進貨、銷售管理系統[通俗易懂]

          來源:互聯網轉載 時間:2023-12-13 12:46:45

          文末附帶數據庫文件及數據庫日志文件地址。

          一. 需求分析

          1、背景

          (1) 待開發的系統名稱:圖書進貨、銷售管理系統

          (2) 開發者:FriggaAZ

          (3) 用戶:書店管理人員

          (4) 開發環境:

          ①操作系統:Windows 10 專業版 Build17682

          ②數據庫:SQL Server 2017 Developer

          2、系統總體功能分析需求

          (1) 某書店圖書進貨、銷售管理系統

          (2) 實現圖書類別、出版社、圖書、倉庫信息的管理;

          (3)實現進貨、入庫管理;

          (4)實現銷售、出庫管理;

          (5)創建存儲過程查詢某段時間內各種圖書的進貨和銷售情況;

          (6)創建視圖查詢各類圖書的庫存總數;

          (7)創建觸發器當圖書入庫時自動修改相應圖書的總量和存放倉庫中該圖書的數量;

          (8)要求一單可以處理多種圖書(比如銷售設置銷售單及其明細兩個表);

          建立數據庫相關表之間的參照完整性約束。

          二. 概念結構設計

          1、概念結構設計步驟

          ① 進行局部E-R圖設計。

          ② 進行視圖的集成。

          2、局部E-R圖

          ① 出版社信息表

          圖1 出版社信息E-R圖

          ② 進貨訂單

          圖2 進貨訂單E-R圖

          ③ 進貨詳情單

          圖3 進貨詳情的E-R圖

          ④ 庫存信息表

          圖4 庫存的E-R圖

          ⑤ 圖書類別表

          圖5 圖書類別的E-R圖

          ⑥ 圖書信息表

          圖6 圖書信息的E-R圖

          ⑦ 銷售訂單

          圖7 銷售訂單的E-R圖

          ⑧ 銷售訂單詳情表

          圖8 銷售詳情表的E-R圖

          3、整體E-R圖

          4、物理結構設計

          (1) 出版社信息表(出版社,出版社地址,電話,聯系人)

          表1 出版社信息表

          cellpadding="0" cellspacing="0" >

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          出版社

          Char

          20

          N

          主鍵

          出版社地址

          Char

          20

          Y

          電話

          Char

          20

          Y

          聯系人

          Char

          20

          Y

          表2 進貨訂單表

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          進貨單號

          Char

          20

          N

          主鍵

          進貨者

          Char

          20

          Y

          備注

          Char

          20

          Y

          表3 進貨詳情表

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          進貨項號

          Char

          20

          N

          主鍵

          進貨單號

          Char

          20

          N

          外鍵

          圖書號

          Char

          20

          N

          外鍵

          圖書數量

          Char

          20

          N

          進貨日期

          Date

          N

          進貨價格

          Char

          20

          N

          表4 庫存信息表

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          圖書號

          Char

          20

          N

          主鍵

          圖書數量

          Char

          20

          N

          入庫信息

          Char

          20

          N

          出庫信息

          Char

          20

          N

          表5 圖書類別表

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          類別號

          Char

          20

          N

          主鍵

          類別

          Char

          20

          Y

          表6 圖書信息表

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          圖書號

          Char

          20

          N

          主鍵

          圖書名

          Char

          20

          N

          出版社

          Char

          20

          N

          外鍵

          類別號

          Char

          20

          N

          外鍵

          作者

          Char

          20

          Y

          圖7 銷售訂單表

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          銷售單號

          Char

          20

          N

          主鍵

          購買者

          Char

          20

          Y

          備注

          Char

          20

          Y

          圖8 銷售詳情表

          字段名

          數據類型

          字段大小

          是否允許空

          備注

          銷售項號

          Char

          20

          N

          主鍵

          銷售單號

          Char

          20

          N

          外鍵

          圖書號

          Char

          20

          N

          外鍵

          圖書數量

          Char

          20

          N

          銷售日期

          Date

          N

          銷售價格

          Char

          20

          N

          三. 數據庫的實施

          1、創建數據庫

          CREATE DATABASE 圖書系統

          2、創建出版社信息表

          CREATE TABLE 出版社信息表(
          
          出版社 char(20)primary key,
          
          出版社地址 char(20),
          
          電話 char(20),
          
          聯系人 char(20))

          3、創建圖書類別表

          CREATE TABLE 圖書類別表(
          
          類別號 char(20) primary key,
          
          類別 char(20),
          
          類別信息 char(20),
          
          備注 char(20))

          4、創建圖書信息表

          圖書號 char(20) primary key,
          
          圖書名 char(20),
          
          出版社 char(20)CONSTRAINT FK_1 foreign key references 出版社信息表(出版社),
          
          類別號 char(20)CONSTRAINT FK_2 foreign key references 圖書類別表(類別號),
          
          作者 char(20))
          
          

          5、創建進貨訂單

          CREATE TABLE 進貨訂單(
          
          進貨單號 char(20) primary key,
          
          進貨者 char(20),
          
          備注 char(20))

          6、創建銷售訂單

          CREATE TABLE 銷售訂單(
          
          銷售單號 char(20) primary key,
          
          購買者 char(20)
          
          )

          7、創建進貨詳情表

          CREATE TABLE 進貨詳情表(
          
          進貨項號 char(20) primary key,
          
          進貨單號 char(20)CONSTRAINT FK_3 foreign key references 進貨訂單(進貨單號),
          
          圖書號 char(20)CONSTRAINT FK_4 foreign key references 圖書信息表(圖書號) ,
          
          圖書數量 char(20),
          
          進貨日期 date,
          
          進貨價格 char(20))

          8、創建銷售詳情表

          銷售項號 char(20) primary key,
          
          銷售單號 char(20)CONSTRAINT FK_5 foreign key references 銷售訂單(銷售單號),
          
          圖書號 char(20)CONSTRAINT FK_6 foreign key references 圖書信息表(圖書號),
          
          圖書數量 char(20),
          
          銷售日期 date,
          
          銷售價格 char(20))

          9、創建存儲過程查詢某段時間內各種圖書的進貨情況

          CREATE procedure [dbo].[某段時間進貨查詢]
          
          @起始時間 date,@結束時間date
          
          as begin           
          
          SELECT *      
          
          from 進貨詳情表      
          
          where   進貨日期 >=@起始時間 and 進貨日期<=@結束時間
          
          end;

          10、創建存儲過程查詢某段時間內各種圖書的銷售情況

          CREATE procedure [dbo].[某段時間銷售查詢]
          
            @起始時間 date,@終止時間date
          
            as begin           
          
            SELECT *      
          
            from 銷售詳情表      
          
            where   銷售日期 >=@起始時間 and 銷售日期<=@終止時間         
          
            end;

          11、創建視圖查詢各類圖書的庫存總數

          CREATE VIEW [dbo].[V_各類圖書庫存總數]
          
          AS
          
          SELECT   dbo.庫存信息表.圖書號, dbo.圖書信息表.類別號,dbo.庫存信息表.圖書數量, dbo.圖書類別表.類別
          
          FROM      dbo.庫存信息表 INNERJOIN
          
                          dbo.圖書信息表 ON dbo.庫存信息表.圖書號 =dbo.圖書信息表.圖書號 INNER JOIN
          
                          dbo.圖書類別表 ON dbo.圖書信息表.類別號 =dbo.圖書類別表.類別號

          12、創建觸發器當圖書入庫時自動修改相應圖書的總量和存放倉庫中該圖書的數量

          Create Trigger [dbo].[進貨]   On [dbo].[進貨詳情表] 
          
          FOR Insert As   
          
          declare @n int     Select @n=圖書號 from inserted  
          
          declare @num int    Select@num=圖書數量 From inserted
          
          Update 庫存信息表   set 圖書數量=圖書數量+@num   Where 圖書號=@n

          13、創建觸發器當圖書銷售時自動修改相應圖書的總量和存放倉庫中該圖書的數量

          Create Trigger [dbo].[銷售]  On [dbo].[銷售詳情表] 
          
          FOR Insert As    
          
          declare @n int     Select @n=圖書號 from inserted  
          
          declare @num int    Select@num=圖書數量 From inserted
          
          Update 庫存信息表   set 圖書數量=圖書數量-@num   Where 圖書號=@n

          四. 測試

          (1)出版社信息表

          圖13 插入出版社信息

          (2)進貨訂單表

          圖14 插入訂單信息

          (3)進貨詳情表

          圖15 插入進貨詳情

          (4)庫存信息表

          圖16 插入庫存信息

          (5)圖書類別表

          圖17 插入類別信息

          (6)圖書信息表

          圖18 插入圖書信息

          (7)銷售訂單

          圖19 插入銷售信息

          (8)銷售詳情表

          圖20 插入銷售詳情

          2、測試

          ①測試存儲過程1:某段時間內的進貨情況

          exec 某段時間進貨查詢 @起始時間='2018-06-1',@結束時間='2018-07-1'

          結果:

          圖21 存儲過程1

          ②測試存儲過程2:某段時間內的進貨情況

          exec 某段時間銷售查詢 @起始時間='2019-04-1',@終止時間='2019-07-1'

          結果:

          圖22 存儲過程2

          ③測試視圖查詢各類圖書的庫存總數

          圖23 使用視圖查詢庫存

          ④測試觸發器1:入庫修改圖書總量和倉庫中該圖書數量入庫前的庫存信息

          圖24 入庫前庫存信息

          在入庫詳情表中插入777本圖書號為1的圖書

          再次查看庫存信息表,圖書號為1的圖書數量已經增加777 本,說明觸發器正確運行。

          圖25 入庫后庫存信息

          ⑤測試觸發器2:銷售修改圖書總量和倉庫中該圖書數量銷售前的庫存信息

          圖26 銷售前庫存信息

          在銷售詳情表中插入700本圖書號為4的圖書

          再次查看庫存信息表,圖書號為4的圖書數量已經減少700 本,說明觸發器正確運行。

          圖27 銷售后庫存信息

          五. 總結

          通過本次的圖書進貨銷售數據庫系統的設計,我學到了之前在課程中不能學到的知識,并將平時所學所知的理論知識完全運用在實踐中,這樣的機會非常難得。

          由于一開始對數據庫相關知識掌握不牢固,所以面對題目中的“觸發器”、“存儲過程”、“視圖”等相關名詞比較陌生,通過搜索引擎搜索相關知識,利用書本學習相關概念,通過在線視頻了解如何在一個數據庫中創建和使用“觸發器”、“存儲過程”、“視圖”,最終完成了題目要求。

          因為沒有實戰經驗,所以對圖書系統中的各個部分的用處不了解,因而無法創建表。后來通過學習,畫了數據流圖,然后畫了各個實體的局部E-R 圖。在創建數據庫的過程中,一開始使用了英文的表名,后來因為表和列的數量過多而導致混淆,所以改用了中文命名的表名和列名。通過E-R 圖,能更清楚了解了各個部分的相關關系,理清了約束條件等,將基本的數據庫框架搭建好,同時參考題目要求和數據流圖,最終完善了數據庫。

          在整個過程中,最難的部分在于觸發器的創建,由于教材中只是粗淺的介紹了概念和語法,所以我通過在線視頻的方式,學習了觸發器的知識,最終一步一步寫出了題目要求的觸發器。

          通過這次親自動手實踐,我學會了分析需求,并按照要求去做出一個系統,并深知其不易。只有親手去操作,才能知道在理論學習的過程中的不足,彌補這些不足的方法,可以通過搜索引擎,書本,以

          及在線視頻的講解。我也更加期待下一次的動手實踐課程。

          數據庫文件以及數據庫日志文件地址:

          https://github.com/FriggaAZ/BookManageDatabase

          對你有用的話歡迎star嗷~

          網絡推廣與網站優化公司(網絡優化與推廣專家)作為數字營銷領域的核心服務提供方,其價值在于通過技術手段與策略規劃幫助企業提升線上曝光度、用戶轉化率及品牌影響力。這...

          在當今數字化時代,公司網站已成為企業展示形象、傳遞信息和開展業務的重要平臺。然而,對于許多公司來說,網站建設的價格是一個關鍵考量因素。本文將圍繞“公司網站建設價...

          在當今的數字化時代,企業網站已成為企業展示形象、吸引客戶和開展業務的重要平臺。然而,對于許多中小企業來說,高昂的網站建設費用可能會成為其發展的瓶頸。幸運的是,隨...

          怎樣申請多個淘寶賬號?1.可以申請多個淘寶賬號,只要ID不重復,郵箱不重復,個人真實信息不限;2.也可以申請多個支付寶賬戶。只要郵箱地址不重復,個人真實信息同樣不限,都可以填寫。但是,實名一旦填寫就無法更改;3.一個身份證只能認證一個淘寶/支付寶賬號,其他不能認證。但可以授權其他賬號,掛在已認證的支付寶賬號下,即使不是自己的(不鼓勵授權給不重要或不知名的人,畢竟關系到錢和真實身份);4.正確填寫收...

          iphone4s怎么拆?Iphone4s拆解方法示意圖:1.先把最下面的兩個螺絲打開,注意梅花和十字的區別。2.拆下螺絲后,拇指壓住后殼,向上推,打開后殼。3.擰下電池螺絲,拔下相機電源的卡簧。4.拉開塑料墊,取下電池(注意:還有彈簧墊圈)。5.把SIM卡槽拿出來,必須先拿出來,不然以后主板就拆不了了。6.拆下揚聲器麥克風的扁平電纜壓片,注意兩個螺絲的大小。7.撬開音箱麥克風的卡口,拉起排線,注意...

          如何才能得到騰訊QQ公仔?你好!這是微信登錄的活動。您需要在手機上安裝微信應用程序,單擊我的,然后單擊登錄保存金幣。如果金幣夠了,你可以兌換或者畫QQ玩偶。大家還記得馬化騰的拍拍網嗎?大家都知道拍拍網是騰訊的購物網站。然而,即使有騰訊的堅強后盾,與同類淘寶網相比,其銷量也“慘不忍睹”。深圳哪有正版qq公仔買最好是南山或者是福田?不太清楚外面的商店在哪里能賣。我的QQ娃娃是騰訊公司和騰訊內部員工買的...

          TOP
          国产初高中生视频在线观看|亚洲一区中文|久久亚洲欧美国产精品|黄色网站入口免费进人
          1. <nobr id="easjo"><address id="easjo"></address></nobr>

              <track id="easjo"><source id="easjo"></source></track>
              1. 
                

              2. <bdo id="easjo"><optgroup id="easjo"></optgroup></bdo>
              3. <track id="easjo"><source id="easjo"><em id="easjo"></em></source></track><option id="easjo"><span id="easjo"><em id="easjo"></em></span></option>