《數(shù)據(jù)庫(kù)課程設(shè)計(jì)》課程設(shè)計(jì)外貿(mào)公司的訂單管理系統(tǒng)
《《數(shù)據(jù)庫(kù)課程設(shè)計(jì)》課程設(shè)計(jì)外貿(mào)公司的訂單管理系統(tǒng)》由會(huì)員分享,可在線閱讀,更多相關(guān)《《數(shù)據(jù)庫(kù)課程設(shè)計(jì)》課程設(shè)計(jì)外貿(mào)公司的訂單管理系統(tǒng)(14頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、杭州電子科技大學(xué) 《數(shù)據(jù)庫(kù)課程設(shè)計(jì)》課程設(shè)計(jì)手冊(cè) 外貿(mào)公司的訂單管理系統(tǒng) 姓 名 學(xué) 號(hào) 07031760 設(shè)計(jì)小組長(zhǎng) 其 他 設(shè) 計(jì) 小 組 成 員 指 導(dǎo) 教 師 設(shè) 計(jì) 時(shí) 間 2009.9.7 至 2009.9.18 杭州電子科技大學(xué)管理學(xué)院編制 一、需求分析 1.針對(duì)外貿(mào)
2、企業(yè)的訂單管理系統(tǒng),分別對(duì)商品、訂單、訂單明細(xì)、客戶、生產(chǎn)商和供應(yīng)商在整個(gè)訂單管理系統(tǒng)中的定位進(jìn)行詳細(xì)的分析,獲得其需求信息如下: 訂單的接收是按照商品分類進(jìn)行的,所以需要有每個(gè)商品的信息。 登記于同一張訂單明細(xì)的必須是同一種商品。 如果一個(gè)商品的訂單有一個(gè)或者多個(gè)勝生產(chǎn)商滿足,則該訂單不可被退回。 需要完整地記錄商品、客戶、生產(chǎn)商、供應(yīng)商的信息。 針對(duì)每一筆業(yè)務(wù),在訂單中的商品信息欄中都要仔細(xì)的紀(jì)錄每一種商品的編號(hào)、日期、數(shù)量、單價(jià)和總價(jià)。 在每一張訂單中都要詳盡的紀(jì)錄下訂單的單位名稱、單位號(hào)、單位地址、交貨日期、貨品名稱、貨品號(hào)、貨品單價(jià)和貨品總價(jià)。 把所有相同的產(chǎn)品紀(jì)錄到同
3、一張訂單明細(xì)表中,每一張訂單明細(xì)表中只能紀(jì)錄同一種商品。 在每一張訂單明細(xì)表中需要紀(jì)錄訂單號(hào)、單位名稱、商品號(hào)、商品名、規(guī)格、交貨日期、數(shù)量、單價(jià)和簽訂日期等。 根據(jù)貨品名稱、交貨日期、貨品數(shù)量、生產(chǎn)商的生產(chǎn)能力以及單位地址等實(shí)際因素,將訂單明細(xì)表進(jìn)行合理的合并和拆分,從而達(dá)到降低成本的目的。 對(duì)接收訂單的貨品的生產(chǎn)商以及貨品的供應(yīng)商信息進(jìn)行詳盡的紀(jì)錄。 訂單的接收、處理要有相應(yīng)的業(yè)務(wù)員信息。 只有管理員登錄之后才可以使用系統(tǒng)。 默認(rèn)的管理員不可以刪除。 可以對(duì)作廢的、待生產(chǎn)的、正生產(chǎn)的、生產(chǎn)完成的訂單進(jìn)行分類查找,但不能進(jìn)行修改、添加、刪除等操作。 當(dāng)進(jìn)行訂單接收和處理操作后
4、,能相應(yīng)更新數(shù)據(jù)庫(kù)更新。 對(duì)所接收的訂單進(jìn)行數(shù)據(jù)分析,總結(jié)相應(yīng)商品的訂單服務(wù)。 2. 經(jīng)上述系統(tǒng)功能分析和需求總結(jié),考慮其業(yè)務(wù)和功能的不斷擴(kuò)展,設(shè)計(jì)如下的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu): 商品信息,包括的數(shù)據(jù)項(xiàng)有: 商品號(hào),名稱,規(guī)格,單價(jià),描述。 訂單明細(xì)信息,包括的數(shù)據(jù)項(xiàng)有: 訂單號(hào),單位名稱,商品號(hào),商品名,規(guī)格,交貨日期,數(shù)量,單價(jià),簽訂日期。 訂單信息,包括的數(shù)據(jù)項(xiàng)有: 訂單號(hào),單位,操作員號(hào),地址,簽訂日期,單價(jià),數(shù)量,商品號(hào),交貨日期。 業(yè)務(wù)員信息,包括的數(shù)據(jù)項(xiàng)有: 職工號(hào),姓名,年齡,職稱。 客戶信息,包括的數(shù)據(jù)項(xiàng)有:客戶姓名,賬號(hào),地址,聯(lián)系方式。 生產(chǎn)訂單信息,包括的數(shù)
5、據(jù)項(xiàng)有:生產(chǎn)商,商品名,數(shù)量,單價(jià),賬號(hào),聯(lián)系方式。 供應(yīng)商信息,包括的數(shù)據(jù)項(xiàng)有: 姓名,地址,電話號(hào)碼,賬號(hào)。 3.數(shù)據(jù)流圖 訂單管理系統(tǒng)數(shù)據(jù)流圖如下: 在整個(gè)數(shù)據(jù)流圖中,P1,P2,P3,P4分別是客戶信息管理系統(tǒng),產(chǎn)品信息管理系統(tǒng),員工信息管理系統(tǒng),供應(yīng)商管理系統(tǒng),我們這里只作簡(jiǎn)單處理。P5.1,P5.2,P5.3是訂單管理系統(tǒng)的核心部分,P5.2審核系統(tǒng)是根據(jù)客戶的信用情況,剔除一部分不合格的訂單并觸發(fā)修改訂單明細(xì),P5.3是根據(jù)供應(yīng)商的供應(yīng)能力等情況對(duì)訂單明細(xì)進(jìn)行拆分和合并處理,最終形成生產(chǎn)訂單。 4.數(shù)據(jù)字典 (1)、數(shù)據(jù)項(xiàng) 數(shù)據(jù)項(xiàng)描述= {職工號(hào)
6、,char(6),000000~999999,前兩個(gè)數(shù)字表示所屬部門,中間兩個(gè)數(shù)字表示工作起始年份}; {姓名,varchar(8)}; {年齡,int(2),18~65,職工的年齡必須大于18周歲且小于65周歲}; {商品號(hào),char(14) ,由阿拉伯?dāng)?shù)字和英文小寫字母組成}; {單位名稱,varchar(10)} {單位號(hào),char(10)} (2)、數(shù)據(jù)結(jié)構(gòu) 數(shù)據(jù)結(jié)構(gòu)描述= {業(yè)務(wù)員信息,組成:{職工號(hào),姓名,年齡,職稱}}; {訂單信息,組成:{訂單號(hào),單位號(hào),操作員號(hào),地址,簽訂日期,單價(jià),數(shù)量,交貨日期}}; {客戶信息,組成:{客戶號(hào),客戶姓名,賬號(hào),地
7、址,聯(lián)系方式}}; (3)、數(shù)據(jù)流 數(shù)據(jù)流描述= {員工信息流,來(lái)源:人工錄入,去向:?jiǎn)T工信息表,組成:{業(yè)務(wù)員信息}}; (4)、數(shù)據(jù)存儲(chǔ) 數(shù)據(jù)存儲(chǔ)描述={訂單明細(xì),{客戶信息流,產(chǎn)品信息流,員工信息流},{訂單明細(xì)信息流},組成:{業(yè)務(wù)員信息,商品信息,客戶信息}}; (5)、處理過(guò)程 處理過(guò)程描述={下單,輸入:{客戶信息流,產(chǎn)品信息流,員工信息流},輸出:{訂單明細(xì)信息流},處理:{通過(guò)員工的操作,使顯示具體的訂單信息表和訂單明細(xì)表}}; 2、 概念模型設(shè)計(jì) 訂單管理系統(tǒng)E-R圖如下: 在這里,我們?yōu)榱撕?jiǎn)化數(shù)據(jù)庫(kù),將訂單管理設(shè)置為只處理一種商品,
8、所以訂單的拆分和合并聯(lián)系分別是1:n 和n:1 。在訂單明細(xì)中可以反映商品的供應(yīng)者,在生產(chǎn)訂單中可以顯示每個(gè)供應(yīng)商的供應(yīng)量等信息。 生產(chǎn)訂單屬性中的生產(chǎn)商號(hào)和供應(yīng)商供應(yīng)商號(hào)為異名同義,訂單明細(xì)屬性中的單位名稱和客戶信息屬性的客戶姓名為異名同義。 三、邏輯模型設(shè)計(jì) 職工信息表 屬性名 數(shù)據(jù)類型 可否為空 備注 職工號(hào) Char(6) 否 主鍵 姓名 Varchar(8) 否 年齡 Int 否 職稱 Varchar 否 訂單信息表 屬性名 數(shù)據(jù)類型 可否為空 備注 訂單號(hào) Char(6) 否 主鍵
9、 單位姓名 Varchar(20) 否 外鍵 地址 Varchar(100) 否 商品單價(jià) Money 否 數(shù)量 Int 否 簽訂日期 Datetime 否 交貨日期 Datetime 否 操作員號(hào) Char(6) 否 外鍵 商品號(hào) Varchar(10) 否 外鍵 商品信息表 屬性名 數(shù)據(jù)類型 可否為空 備注 商品號(hào) Varchar(10) 否 主鍵 名稱 Varchar(20) 否 單價(jià) Money 否 規(guī)格 Varchar(20) 否
10、描述 Varchar(50) 可 訂單明細(xì)表 屬性名 數(shù)據(jù)類型 可否為空 備注 訂單號(hào) Char(6) 否 外鍵 商品號(hào) Char(10) 否 外鍵 商品名 Varchar(20) 否 單價(jià) Money 否 數(shù)量 Int 否 簽訂日期 Datetime 否 交貨日期 Datetime 否 單位名稱 Char(10) 否 外鍵 規(guī)格 Varchar(20) 否 生產(chǎn)商號(hào) Char(10) 否 外鍵 生產(chǎn)訂單信息表 屬性名 數(shù)據(jù)類型 可否為空
11、備注 生產(chǎn)商 Varchar(20) 否 外鍵 地址 Varchar(100) 否 單價(jià) Money 否 賬號(hào) Varchar(20) 否 聯(lián)系方式 Varchar(21) 否 供應(yīng)量 Int 否 訂單號(hào) Char(6) 否 外鍵 商品號(hào) Char(10) 否 外鍵 供應(yīng)商信息表 屬性名 數(shù)據(jù)類型 可否為空 備注 姓名 Varchar(20) 否 主鍵 地址 Varchar(100) 否 電話號(hào)碼 Varchar(20) 可 賬號(hào) Varchar(20) 否
12、 客戶信息表 屬性名 數(shù)據(jù)類型 可否為空 備注 客戶姓名 Varchar(20) 否 主鍵 賬號(hào) Varchar(20) 否 地址 Varchar(100) 否 聯(lián)系方式 Varchar(20) 否 4、 物理模型設(shè)計(jì) (1) 、由于經(jīng)常在查詢條件中出現(xiàn),所以決定在職工信息表中的職工號(hào)上建立 唯一索引; (2) 、由于經(jīng)常在連接操作的鏈接條件中出現(xiàn),所以決定在訂單信息表中的訂 單號(hào)上建立唯一索引; (3) 、由于經(jīng)常在查詢條件中出現(xiàn),所以決定在客戶信息表中的客戶姓名上建 立唯一索引; (4) 、由于經(jīng)常在查詢條
13、件中出現(xiàn),所以決定在供應(yīng)商信息表中的姓名上建立 唯一索引; (5) 、由于經(jīng)常在連接操作的鏈接條件中出現(xiàn),所以決定在商品信息表中的商 品號(hào)上建立唯一索引; 5、 數(shù)據(jù)庫(kù)實(shí)施和維護(hù) 1、 創(chuàng)建數(shù)據(jù)庫(kù) create database 訂單管理系統(tǒng) 2、 創(chuàng)建表 創(chuàng)建職工信息表 create table 職工信息表 (職工號(hào) char(6) not null primary key, 姓名 Varchar(8) not null, 年齡 Int not null, 職稱 Varchar(10) not null,) 創(chuàng)建商品信息表 create
14、table 商品信息表 (商品號(hào) Varchar(10) not null primary key, 名稱 Varchar(20) not null, 單價(jià) Money not null, 規(guī)格 Varchar(20) not null, 描述 Varchar(50)) 創(chuàng)建供應(yīng)商信息表 create table 供應(yīng)商信息表 (姓名 Varchar(20) not null primary key, 地址 Varchar(100) not null, 電話號(hào)碼 Varchar(20) not null, 賬號(hào) Varchar(50) not null) 創(chuàng)
15、建客戶信息表 create table 客戶信息表 (客戶姓名 Varchar(20) not null primary key, 賬號(hào) Varchar(20) not null, 地址 Varchar (100)not null, 聯(lián)系方式 Varchar(20) not null) 創(chuàng)建訂單信息表 create table 訂單信息表 (訂單號(hào) char(6) not null primary key, 地址 Varchar(100) not null, 商品單價(jià) Money not null, 數(shù)量 int not null, 簽訂日期 datetim
16、e not null, 交貨日期 datetime not null, 單位 Varchar (20) foreign key references 客戶信息表(客戶姓名), 操作員號(hào) char(6) foreign key references 職工信息表(職工號(hào)), 商品號(hào) Varchar(10)foreign key references 商品信息表(商品號(hào))) 創(chuàng)建訂單明細(xì)表 create table 訂單明細(xì)表 (訂單號(hào) char(6) not null foreign key references 訂單信息表(訂單號(hào)), 商品號(hào) Varchar(10) no
17、t null foreign key references 商品信息表(商品號(hào)), 商品名 Varchar(20) not null, 單價(jià) Money not null, 數(shù)量 int not null, 簽訂日期 datetime not null, 交貨日期 datetime not null, 單位 Varchar(20) foreign key references 客戶信息表(客戶姓名), 規(guī)格 Varchar(20) not null, 生產(chǎn)商 Varchar (20) foreign key references 供應(yīng)商信息表(姓名)) 創(chuàng)建生產(chǎn)訂單信息表
18、 create table 生產(chǎn)訂單信息表 (地址 Varchar (100) not null, 單價(jià) Money not null, 賬號(hào) Varchar(20) not null, 聯(lián)系方式 Varchar(21) not null, 供應(yīng)量 int not null, 生產(chǎn)商 Varchar(20) not null foreign key references 供應(yīng)商信息表(姓名), 訂單號(hào) char(6) not null foreign key references 訂單信息表(訂單號(hào)), 商品號(hào) Varchar(10) not null foreign k
19、ey references 商品信息表(商品號(hào))) 3、創(chuàng)建視圖 Create view 訂單明細(xì)視圖 As select 訂單號(hào),單位,商品號(hào),生產(chǎn)商 From 訂單明細(xì)表 Create view 生產(chǎn)訂單視圖 As select 生產(chǎn)商,訂單號(hào),商品號(hào),供應(yīng)量,聯(lián)系方式 From 生產(chǎn)訂單表 4、 創(chuàng)建索引 在主鍵屬性和外鍵屬性列上都建立索引,檢查唯一性和完整性,加快連接查詢速度。 Create unique index IX_職工號(hào) on 職工信息表(職工號(hào)); Create unique index IX_訂單號(hào) on 訂單信息表(訂單號(hào)
20、); Create unique index IX_客戶姓名 on 客戶信息表(客戶姓名); Create unique index IX_姓名 on 供應(yīng)商信息表(姓名); Create unique index IX_商品號(hào) on 商品信息表(商品號(hào)); 5、 表中數(shù)據(jù)操作 1、給數(shù)據(jù)庫(kù)賦值 insert into 職工信息表 values(070934,kimikong,24,操作員); insert into 職工信息表 values(070317,massa,29,主管); insert into 職工信息表 Values
21、(040201,aloso,34,操作員) Insert Into 商品信息表 Values (07031760,klmin,2000,長(zhǎng)度172cm,重量60KG,暢銷貨啊); Insert Into 商品信息表 Values(07031763,lljing,1500,長(zhǎng)度165cm,體重70KG,有點(diǎn)胖胖); Insert Into 客戶信息表 Values(雷敬文,07031761,16-624,15869027542); Insert Into 客戶信息表 Values(李俊,07031764,16-610,1586902432);
22、 Insert Into 訂單信息表 Values(001, 杭電16#624,2000,10,2009.09.15,2009.09.18,雷經(jīng)文,070934,07031760) Insert Into 訂單信息表 Values(002, 杭電16#625,1500,20,2009.09.14,2009.09.17,李俊,040201,07031763) Insert Into 訂單明細(xì)表 Values(001,07031760,klmin,2000,10,2009.09.15,2009.09.16,雷經(jīng)文,長(zhǎng)度172cm,重量60KG,老大) Ins
23、ert Into 訂單明細(xì)表 Values(002,07031763,lljing,1500,20,2009.09.14,2009.09.17,李俊,長(zhǎng)度165cm,重量70KG,老邱) Insert Into 生產(chǎn)訂單信息表 Values(杭電2,2000,166261,110轉(zhuǎn)1,10,老大,001,07031760) Insert Into 生產(chǎn)訂單信息表 Values(杭電3,1500,166262,110轉(zhuǎn)2,20,老邱,002,07031763) Insert In耀 供應(yīng)商信息表 Values(老大,杭電2,110轉(zhuǎn)1,166261)
24、 Insert Into 供應(yīng)商信息表 Values(老邱,杭電3,110轉(zhuǎn)2,166262) 2、其他操作 把客戶信息表中李俊的聯(lián)系方式更正為15869023242 update 客戶信息表 set 聯(lián)系方式=15869023242 where 客戶姓名=李俊; 員工因故辭職 Delete from 職工信息表 where 職工號(hào)=070317 6、 使用表格操作 1、查找所有職工的年齡,并按年齡大小進(jìn)行排序 select 職工號(hào),姓名,年齡 from 職工信息表 order by 年齡 2、 查找訂單號(hào)為001的商品的描述 sele
25、ct 訂單號(hào),a.商品號(hào),名稱,單價(jià),描述 from 訂單信息表 as a,商品信息表 as b where 訂單號(hào)=001 and b.商品號(hào) = (select 商品號(hào) from 訂單明細(xì)表 where 訂單號(hào)=001) 3、 查找由供應(yīng)商老大供應(yīng)商的商品情況 select 商品號(hào),商品名,單價(jià),規(guī)格,數(shù)量 from 訂單明細(xì)表 where 生產(chǎn)商=老大 4、 查找指定客戶購(gòu)買的商品的具體信息 select 商品號(hào),名稱,單價(jià),規(guī)格,描述 from 商品信息表 where 商品號(hào)=(select 商品號(hào) from 訂單明細(xì)表 where
26、單位=雷經(jīng)文) 7、 創(chuàng)建觸發(fā)器,游標(biāo)和存儲(chǔ)過(guò)程 在訂單明細(xì)表上建立觸發(fā)器,實(shí)現(xiàn)在商品規(guī)格作出改變時(shí),相應(yīng)的訂單明細(xì)信息也作出更正。 Use 訂單管理系統(tǒng) Go Create trigger tri_商品信息更新 on 訂單明細(xì)表 For update As If @@rowcount=0 Return Update 商品信息表 Set 規(guī)格=(select 規(guī)格 from inserted) Where 規(guī)格=(select 規(guī)格
27、from deleted) If @@error!=0 Begin Rollback Return End Return Go 在客戶信息表建立游標(biāo),用游標(biāo)和變量逐行輸出客戶姓名和聯(lián)系方式 declare @name varchar(20),@telephone varchar(20) declare cur_1 cursor for select 客戶姓名,聯(lián)系方式 from 客戶
28、信息表 for read only open cur_1 fetch from cur_1 into @name,@telephone print 客戶姓名+@name+聯(lián)系方式+@telephone while @@fetch_status=0 begin fetch from cur_1 into @name,@telephone print 客戶姓名+@name+聯(lián)系方式+@telephone end close cur_1 deallocate cur_1 在數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,返回指定的生產(chǎn)訂單信息 create proc pro_生產(chǎn)訂單
29、信息 @生產(chǎn)商 Varchar(20), @訂單號(hào) char(6),@商品號(hào) Varchar(10),@單價(jià) Money,@供應(yīng)量 int output As select 訂單號(hào),商品號(hào),單價(jià),供應(yīng)量 from 生產(chǎn)訂單信息表 where 生產(chǎn)商=老邱 Go 6、 總結(jié) 通過(guò)這次數(shù)據(jù)庫(kù)課程,我學(xué)到了不少。我發(fā)現(xiàn)考試題目會(huì)做根本不代表也會(huì)設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng),整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)最重要的環(huán)節(jié)是需求分析,只有把業(yè)務(wù)流程都理順了之后才能做下面的環(huán)節(jié)。我們的課題——外貿(mào)公司的訂單管理,網(wǎng)上資料比較少,在老師的指導(dǎo)下,我們最終搞明白了訂單管理的具體流程和板塊。E-R圖不是那么好畫的,在設(shè)計(jì)的時(shí)候要考慮的因素,因?yàn)槲覀兪堑谝淮?,在轉(zhuǎn)換為邏輯模式和后面的數(shù)據(jù)庫(kù)實(shí)施時(shí),我們對(duì)E-R圖作了一遍又一遍的修改,發(fā)現(xiàn)最后的圖跟剛開始的圖已經(jīng)很不一樣了。 在整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中,我們得到了陳老師細(xì)心的指導(dǎo),尤其是前面需求分析和概念模型設(shè)計(jì)階段,這對(duì)我們的成果非常重要。
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 銷售技巧培訓(xùn)課件:接近客戶的套路總結(jié)
- 20種成交的銷售話術(shù)和技巧
- 銷售技巧:接近客戶的8種套路
- 銷售套路總結(jié)
- 房產(chǎn)銷售中的常見問(wèn)題及解決方法
- 銷售技巧:值得默念的成交話術(shù)
- 銷售資料:讓人舒服的35種說(shuō)話方式
- 汽車銷售績(jī)效管理規(guī)范
- 銷售技巧培訓(xùn)課件:絕對(duì)成交的銷售話術(shù)
- 頂尖銷售技巧總結(jié)
- 銷售技巧:電話營(yíng)銷十大定律
- 銷售逼單最好的二十三種技巧
- 銷售最常遇到的10大麻煩
- 銷售資料:銷售10大黃金觀念
- 銷售資料:導(dǎo)購(gòu)常用的搭訕?lè)椒?/a>