【正文】
elect * from BuyBook_view 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 28 建立供管理者查詢圖書信息的視圖 go create view AdmBook_view as select ,Bname,Bprice,Bwriter,Inprice from Book go select * from AdmBook_view 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 29 建立查詢供應(yīng)商信息的視圖 go create view AdmS_view as select SID,Sname,Phone from S go select* from AdmS_view 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 30 建立倉(cāng)庫(kù)信息的 視 圖 go create view KC_view as select KCID,Area,Address from Ck go select* from KC_view 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 31 建立缺貨單視圖 go create view QH_view as select BID,Bname from Book where KCNum=0 缺貨單 go select * from QH_view 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 32 SQL SERVER 2020 中 存儲(chǔ)過(guò)程的創(chuàng)建 存儲(chǔ)過(guò)程 建立查詢的存儲(chǔ)過(guò)程 go create procedure p1_query_Adm /*查詢指定書籍有無(wú)庫(kù)存 */ @Bname char(20) as select KCNum from Book where Bname=@Bname exec p1_query_Adm 本草 綱目 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 33 go create procedure BuyList_insert/*插入銷售(購(gòu)買)信息 */ @BID char(20), @CID char(20), @Buynum int, @BuyDay DateTime as insert into Buy values(@BID,@CID,@Buynum,@BuyDay) exec BuyList_insert 39。20200903839。,39。939。,1,39。2020121239。 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 34 go create procedure P_insert/*插入供應(yīng)(采購(gòu))信息 */ @PID char(20), @SID char(20) , @BID char(10), @InTime DateTime, @InNum int as insert into P values(@PID,@SID,@BID,@InTime,@InNum) exec P_insert 39。P2539。,39。9500039。,39。20200912139。,39。20201139。,100 SQL SERVER 2020 中 觸發(fā)器的創(chuàng)建 觸發(fā)器 進(jìn)貨后在庫(kù)存表中更新記錄的觸發(fā)器 go create trigger tr_P_Store on P after insert as declare @InNum int,@BID char(20) select @InNum=InNum,@BID=BID from inserted 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 35 update Book set KCnum=KCnum+@InNum where BId=@BID 驗(yàn)證該觸發(fā)器 insert into P values (39。pa39。,39。9500239。,39。20200912139。,39。20201239。,10) 執(zhí)行前: 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 36 圖有點(diǎn)大,放不下,就縮小了一點(diǎn) 執(zhí)行后: 銷售圖書后在存儲(chǔ)表中更新記錄的觸發(fā)器 go Create trigger tr_Buy_Save on Buy after insert as declare @BID char(20) ,@CID char(20),@BuyNum int,@BuyDay datetime select @BuyNum= ,@BID= from inserted,Book where = update Book set KCnum=KCnum@BuyNum 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 37 where =@BID 驗(yàn)證該觸發(fā)器 insert into Buy values(39。20200913939。,39。2939。,27,39。20206639。) 執(zhí)行前: 執(zhí)行后: 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 38 修改顧客積分信息 go Create trigger tr_CLevel on Buy after insert as declare @BID char(20) ,@CID char(20),@BuyNum int,@Bprice float select @BuyNum= ,@CID=,@BId=,@Bprice=Bprice from inserted,Book where = update C set CLevel=CLevel+@BuyNum*@Bprice where =@CID 驗(yàn)證該觸發(fā)器 insert into Buy values(39。20200912139。,39。339。,1,39。20201139。) 插入數(shù)據(jù) 觸發(fā)器生效前 觸發(fā)器生效 后 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 39 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 40 附錄 3 ORCl 下 數(shù)據(jù)操縱驗(yàn)證 ORCl 中基本表的創(chuàng)建 創(chuàng)建好的表: ORCl 中 視圖 的創(chuàng)建 購(gòu)書單視圖: 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 41 建立供顧客查詢圖書信息的視圖 建立供管理者查詢圖書信息的視圖 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 42 建立缺貨單視圖 建立查詢倉(cāng)庫(kù) 情況的視圖 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 43 以上語(yǔ)句與 SQL server 2020 中完全一樣, 這里就不再重復(fù) ORCl 中 存儲(chǔ)過(guò)程 的創(chuàng)建 存儲(chǔ)過(guò)程: 查詢指定書籍有無(wú)庫(kù)存 create or replace procedure p1_query_Adm(v_Bname in %type,v_KCNum out number) is begin select KCNum into v_KCNum from Book where BName=v_Bname。 end 。 查詢驗(yàn)證 結(jié)果 插入銷售(購(gòu)買)信息 Create or replace procedure BuyList_insert(v_BID %type,v_CID %type,v_BuyNum %type,v_BuyDay %type) as 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 44 begin insert into Buy(BID,CID,BuyNum,BuyDay) values(v_BID,v_CID,v_BuyNum,v_BuyDay)。 mit。 end。 插入驗(yàn)證 插入供應(yīng)(采購(gòu))信息 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 45 插入驗(yàn)證 ORCl 中 觸發(fā)器 的創(chuàng)建 進(jìn)貨后在庫(kù)存表中更新記錄的觸發(fā)器 create or replace trigger tr_P_Store after insert on P for each row begin if(::) then update Book set KCnum=KCnum+: where =: 。 end if。 end 。 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 46 驗(yàn)證觸發(fā)器 begin insert into p values (39。pa39。,39。9500239。,39。20200912139。,to_date(39。2020100139。,39。yyyymmdd39。),10)。 mit 。 end。 執(zhí)行之前忘了截圖,就在 SQL server 2020 中截了個(gè)圖,數(shù)據(jù)是一樣的。 執(zhí)行觸發(fā)器之后的數(shù)據(jù) 銷售圖書后在存儲(chǔ)表中更新記錄的觸發(fā)器 create or replace trigger tr_Buy_Save after insert on Buy for each row begin update Book set KCnum=KCnum+: where =: 。 end 。 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 47 驗(yàn)證觸發(fā)器 begin insert into Buy values (39。20200913939。,39。2939。,27,to_date(39。20206639。,39。yyyymmdd39。))。 mit 。 end。 觸發(fā)前 觸發(fā)后 修改顧客積分信 息 create or replace trigger tr_CLevel after insert on Buy for each row 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 48 declare price number。 begin select Bprice into price from Book where =:。 update C set CLevel=CLevel+:*price where =: 。 end 。 驗(yàn)證 begin insert into Buy values(39。20200901239。,39。1339。,1,to_date(39。20206639。,39。yyyymmdd39。))。 mit。 end。插入數(shù)據(jù) 觸發(fā)前 11 級(jí)信息管理與信息系統(tǒng)專業(yè) 2 班數(shù)據(jù)庫(kù) 應(yīng)用系統(tǒng)課程設(shè)計(jì)課程論文 49 觸發(fā)后