-
閱讀下列說明,回答問題 1 至問題 5 ,將解答填入答題紙的對應欄內。 【說明】 某公司要對其投放的自動售貨機建立商品管理系統,其數據庫的部分關系模式如下: 售貨機: VEM(VEMno, Location) ,各屬性分別表示售貨機編號、部署地點; 商品: GOODS(Gno, Brand, Price) ,各屬性分別表示商品編號、品牌名和價格; 銷售單: SALES(Sno, VEMno,Gno,SDate,STime),各屬性分別表示銷售號、售貨機編號、商品編號、日期和時間。 缺貨單: OOS(VEMno,Gno,SDate,STime ),各屬性分別表示售貨機編號、商品編號、 日期和時間。 相關關系模式的屬性及說明如下:(1)售貨機擺放固定種類的商品,售貨機內每種商品最多可以儲存10 件。管理員在每天結束的時候將售貨機中所有售出商品補全 (2)每售出一件商品,就自動向銷售單中添加一條銷售記錄。如果一天內某個售貨機上某種商品的銷售記錄達到10 條,則表明該售貨機上該商品已售完,需要通知系統立即補貨,通過自動向缺貨單中添加一條缺貨記錄來實現。 根據以上描述,回答下列問題,將 SQL 語句的空缺部分補充完整。【問題 1】 (3 分)請將下面創建銷售單表的 SQL 語句補充完整,要求指定關系的主碼和外碼約束。 CREATE TABLE SALES(Sno CHAR(8) (a)VEMno CHAR(5) (b)Gno CHAR(8) (c)SDate DATE,STime TIME); 【問題 2】 (4分) 創建銷售記錄詳單視圖 SALES_Detail ,要求按日期統計每個售貨機上各種商品的銷售數量,屬性有 VEMno、Location 、Gno、Brand 、Price 、amount 和 SDate。為方便實現,首先建立一個視圖 SALES_Total ,然后利用SALES_Total 完成視圖 SALES_Detail 的定義。 CREATE VIEW SALES _Total(VEMno,Gno,SDate,amount) AS SELECT VENno ,Gno ,SDate ,count(*) FROM SALES GROUP BY (d); CREATE VIWE (e) ASSELECT VEM.VEMno,Location ,GOODS.Gno ,Brand,Price,amount,SDate FROM VEM,GOODS,SALES_TotalWHERE (f) AND (g) 【問題 3】 (3分)每售出一件商品,就自動向銷售單中添加一條銷售記錄。如果一天內某個售貨機上某種商品的銷售記錄達到 10 條,則自動向缺貨單中添加一條缺貨記錄。需要用觸發器來實現缺貨單的自動維護。程序中的 GetTime()獲取當前時間。CREAT(h) OOS_TRG AFTER (i)ON SALES REFERENCING new row AS nrow FOR EACH ROW BEGIN INSERT INTO OOS SELECT SALES .VENno, (j) GetTime() FROMSALES WHERE SALES.VEMno = nrow.VEMno AND SALES.Gno = nrow.Gno AND SALES.SDate = nrow.SDateGROUP BY SALES.VEMno,SALES.Gno,SALES.SDateHAVING count(*)> 0 AND mod(count(*), 10)=0; END 【問題 4】 (3分) 查詢當天銷售最多的商品編號、品牌和數量。程序中的 GetDate()獲取當天日期。 SELECT GOODS.Gno ,Brand, (k) FROM GOODS,SALES WHERE GOODS.Gno=SALES.GNO AND SDATE =GetDate() GROUP BY (1)HAVING(M) (SELECT count(*) FROM SALELS WHERE SDATE = GetDate() GROUP BY Gno); 【問題5】 (2分) 查詢一件都沒有售出的所有商品編號和品牌。 SELECT Gno ,Brand FROM GOODS WHERE GNO(N) SELECT DISTINCT GNO FROM(o);
-
閱讀下列說明,回答問題1至問題5,將解答填入答題紙的對應欄內。【說明】某公司要對其投放的自動售貨機建立商品管理系統,其數據庫的部分關系模式如下:售貨機: VEM(VEMno, Location) ,各屬性分別表示售貨機編號、部署地點;商品: GOODS(Gno, Brand, Price) ,各屬性分別表示商品編號、品牌名和價格;銷售單: SALES(Sno, VEMno,Gno,SDate,STime),各屬性分別表示銷售號、售貨機編號、商品編號、日期和時間。缺貨單: OOS(VEMno,Gno,SDate,STime ),各屬性分別表示售貨機編號、商品編號、 日期和時間。相關關系模式的屬性及說明如下: (1)售貨機擺放固定種類的商品,售貨機內每種商品最多可以儲存10 件。管理員在每天結束的時候將售貨機中所有售出商品補全(2)每售出一件商品,就自動向銷售單中添加一條銷售記錄。如果一天內某個售貨機上某種商品的銷售記錄達到10 條,則表明該售貨機上該商品已售完,需要通知系統立即補貨,通過自動向缺貨單中添加一條缺貨記錄來實現。根據以上描述,回答下列問題,將SQL語句的空缺部分補充完整。【問題1】請將下面創建銷售單表的 SQL 語句補充完整,要求指定關系的主碼和外碼約束。CREATE TABLE SALES (Sno CHAR(8) (a)VEMno CHAR(5) (b)Gno CHAR(8) (c) SDate DATE,STime TIME);【問題2】創建銷售記錄詳單視圖 SALES_Detail ,要求按日期統計每個售貨機上各種商品的銷售數量,屬性有 VEMno、Location 、Gno、Brand 、Price 、amount 和 SDate。為方便實現,首先建立一個視圖 SALES_Total ,然后利用SALES_Total 完成視圖 SALES_Detail 的定義。CREATE VIEW SALES _Total(VEMno,Gno,SDate,amount)ASSELECT VENno ,Gno ,SDate ,count(*)FROM SALESGROUP BY (d);
CREATE VIWE (e)ASSELECTVEM.VEMno,Location ,GOODS.Gno ,Brand,Price,amount,SDateFROMVEM,GOODS,SALES_TotalWHERE (f) AND (g)【問題3】每售出一件商品,就自動向銷售單中添加一條銷售記錄。如果一天內某個售貨機上某種商品的銷售記錄達到 10 條,則自動向缺貨單中添加一條缺貨記錄。需要用觸發器來實現缺貨單的自動維護。程序中的 GetTime()獲取當前時間。CREAT (h)OOS_TRG AFTER (i) ON SALES REFERENCINGnew row AS nrow FOR EACH ROWBEGININSERT INTO OOSSELECT SALES .VENno, (j) GetTime( )FROMSALESWHERE SALES.VEMno = nrow.VEMno AND SALES.Gno = nrow.GnoAND SALES.SDate = nrow.SDateGROUP BYSALES.VEMno,SALES.Gno,SALES.SDateHAVING count(*)> 0 ANDmod(count(*),10)=0;END【問題4】查詢當天銷售最多的商品編號、品牌和數量。程序中的 GetDate( )獲取當天日期。SELECT GOODS.Gno ,Brand, (k)FROM GOODS,SALESWHERE GOODS.Gno=SALES.GNO AND SDATE =GetDate( )GROUP BY (l)HAVING(m) (SELECT count(*)FROM SALELSWHERE SDATE = GetDate( )GROUP BY Gno);【問題5】查詢一件都沒有售出的所有商品編號和品牌。SELECTGno ,BrandFROM GOODSWHERE GNO(n)SELECTDISTINCTGNOFROM(o);
-
非商店零售包括( )。
A.電話促銷
B.上門推銷
C.自動售貨機
D.超級市場
E.電子購物
-
現在要對一個自動飲料售貨機軟件進行黑盒測試,該軟件的規格說明如下:一個自動售貨機軟件可以銷售單價1元5角的盒裝飲料。該售貨機只接收1元和5角兩種硬幣,若投入1元5角硬幣,按下“可樂”、“雪碧”或“紅茶”按鈕,則送出相應的飲料;若投入的硬幣少于1元5角,則顯示錯誤信息并退出硬幣;若投入的硬幣多于1元5角,則送出飲料的同時退還多余的硬幣。請設計測試該軟件的全部測試用例。
-
論述題2:以下是一個自動飲料售貨機軟件的操作規格說明,請按要求回答問題
設要對一個自動飲料售貨機軟件進行黑盒測試。該軟件的規格說明如下:
有一個處理單價為1元5角錢的盒裝飲料的自動售貨機軟件。若投入1元5角硬幣,按下“可樂”、“雪碧”或“紅茶”按鈕,相應的飲料就送出來。若投入的是2元硬幣,在送出飲料的同時退還5角硬幣。”
(1)試利用因果圖法,建立該軟件的因果圖
(2)設計測試該軟件的全部測試用例