版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> ORACLE數(shù)據(jù)庫課程設(shè)計(jì)</p><p> 班級 </p><p> 姓名 </p><p> 學(xué)號 </p><p> 一、目的:通過設(shè)計(jì)一數(shù)據(jù)庫實(shí)例綜合掌握ORACLE數(shù)據(jù)庫的設(shè)計(jì)及操作過程。</p><p><
2、;b> 二、設(shè)計(jì)內(nèi)容:</b></p><p><b> ?。ㄒ唬┙◣欤?lt;/b></p><p> 建立一圖書銷售數(shù)據(jù)庫BOOK。</p><p> 過程:通過DBCA建立數(shù)據(jù)庫,數(shù)據(jù)庫全局名稱:</p><p> BOOK.DOMAIN, SID: BOOK,密碼:sys</p>
3、<p><b> ?。ǘ┙⒂脩簦?lt;/b></p><p> 用戶名:TANG,密碼:tang,具有DBA角色,嘗試失敗登錄次數(shù):3次,失敗后鎖定天數(shù):3天。</p><p> Create user TANG identified by tang </p><p> Grant DBA to TANG</p>
4、<p> Create profile A limit </p><p> Failed_login_attempts 3</p><p> Password_lock_time 3</p><p> Alter user TANG profile A</p><p><b> ?。ㄈ┙⒈?lt;/b>
5、</p><p> 在方案TANG下建立如下基本表:</p><p> 職工(職工號,姓名,性別,年齡,電話,EMAIL)</p><p> 出版社(出版社代號,名稱,地址,聯(lián)系電話)</p><p> CREATE TABLE 出版社</p><p><b> (</b></p&
6、gt;<p> 出版社代號 char(10) primary key,</p><p> 名稱 char(10),</p><p> 地址 char(20),</p><p> 聯(lián)系電話 char(10)</p><p> )tablespace users;</p><p> 圖書類別(類別
7、編號,類別名稱)</p><p> create table 圖書類別</p><p><b> (</b></p><p> 類別編號 char(10) primary key,</p><p> 類別名稱 char(10)</p><p> )tablespace users;<
8、;/p><p> 圖書(圖書號,類別,書名,出版社代號,庫存量,價格) --該表的“類別”字段為外碼</p><p> create table 圖書</p><p> ( 圖書號 char(10) primary key,</p><p> 類別 char(10),</p><p> 書名 char(20),&
9、lt;/p><p> 出版社代號 char(10),</p><p><b> 庫存量 int,</b></p><p><b> 價格 float,</b></p><p> constraint c1 foreign key(類別) references 圖書類別(類別編號),</p&
10、gt;<p> constraint c2 foreign key(出版社代號) references 出版社(出版社代號)</p><p> )tablespace users;</p><p> 客戶(編號,名稱,信用度,聯(lián)系人,聯(lián)系電話)</p><p> create table 客戶</p><p><b
11、> (</b></p><p> 編號 char(10) primary key,</p><p> 名稱 char(10),</p><p> 信用度 char(10),</p><p> 聯(lián)系人 char(10),</p><p> 聯(lián)系電話 char(10)</p>&
12、lt;p> )tablespace users;</p><p> 銷售單(單號,銷售職工號,客戶編號,銷售時間)――該表的“銷售職工號”、“客戶編號”為外碼</p><p> create table 銷售單</p><p><b> (</b></p><p> 單號 char(10) primary
13、 key,</p><p> 銷售職工號 char(10),</p><p> 客戶編號 char(10),</p><p> 銷售時間 date,</p><p> constraint c3 foreign key(銷售職工號) references 職工(職工),</p><p> constraint
14、 c4 foreign key(客戶編號) references 客戶(編號)</p><p> )tablespace users;</p><p> 銷售明細(xì)(銷售單號,圖書號,銷售量,折扣,金額)――該表的“銷售單號”及“圖書號”為外碼</p><p> create table 銷售明細(xì)</p><p><b> (
15、</b></p><p> 銷售單號 char(10),</p><p> 圖書號 char(10),</p><p><b> 銷售量 int,</b></p><p><b> 折扣 float,</b></p><p><b> 金額 f
16、loat,</b></p><p> primary key(銷售單號,圖書號),</p><p> constraint c6 foreign key(銷售單號) references 銷售單(單號),</p><p> constraint c7 foreign key(圖書號) references 圖書(圖書號)</p>&l
17、t;p> )tablespace users;</p><p> ?。ㄋ模⒁陨厦總€表插入3條記錄</p><p> insert into 職工 VALUES('Z01','A','男', 30,'12345678','1@book');</p><p> insert i
18、nto 職工 VALUES('Z02','B','男', 20,'12345655','2@book');</p><p> insert into 職工 VALUES('Z03','C','男', 10,'12398655','3@book');<
19、;/p><p> INSERT INTO 出版社 VALUES('C01','ABC','EIsd','8882487');</p><p> INSERT INTO 出版社 VALUES('C02','BCD','Edsds','85888887');</
20、p><p> INSERT INTO 出版社 VALUES('C03','EFG','EIdfe','8886887');</p><p> INSERT INTO 圖書類別 VALUES('BC01','簡裝版');</p><p> INSERT INTO 圖書類別
21、 VALUES('BC02','精裝版');</p><p> INSERT INTO 圖書類別 VALUES('BC03','黃金版');</p><p> INSERT INTO 圖書 VALUES('B01','BC01','oralce','C01',
22、100,10);</p><p> INSERT INTO 圖書 VALUES('B02','BC01','sql server','C01',100,10);</p><p> INSERT INTO 圖書 VALUES('B03','BC02','C語言','C0
23、2',100,10);</p><p> INSERT INTO 客戶 VALUES('CH01','客戶1','好','吳','888888');</p><p> INSERT INTO 客戶 VALUES('CH02','客戶2','一般',
24、39;吳','888888');</p><p> INSERT INTO 客戶 VALUES('CH03','客戶3','差','吳','888888');</p><p> INSERT INTO 銷售單 VALUES('S01','Z01',
25、39;CH01',TO_DATE('2012/12/12</p><p> 12:12:12','yyyy/mm/dd/hh24:mi:ss'));</p><p> INSERT INTO 銷售單 VALUES('S02','Z02','CH02',TO_DATE('2012/12/12&
26、lt;/p><p> 12:13:12','yyyy/mm/dd/hh24:mi:ss'));</p><p> INSERT INTO 銷售單 VALUES('S03','Z01','CH01',TO_DATE('2012/12/12</p><p> 12:15:12',&
27、#39;yyyy/mm/dd/hh24:mi:ss'));</p><p> INSERT INTO 銷售明細(xì)(銷售單號,圖書號,銷售量,折扣,金額)</p><p> VALUES('S01','B01',10,8,20);</p><p> INSERT INTO 銷售明細(xì)(銷售單號,圖書號,銷售量,折扣,金額)&l
28、t;/p><p> VALUES('S01','B02',20,9,30);</p><p> INSERT INTO 銷售明細(xì)(銷售單號,圖書號,銷售量,折扣,金額)</p><p> VALUES('S01','B03',15,7,50);</p><p> ?。ㄎ澹﹫?zhí)行以
29、下數(shù)據(jù)操縱</p><p> 在職工表中插入記錄(Z01,唐僧,男,35,88888888,88@88.book)</p><p> insert into 職工 VALUES('201','唐僧','男', 35,'88888888','88@88book');</p><p>
30、 在出版社中插入記錄(C01,鐵扇出版社,北京故宮路110號,110110)</p><p> INSERT INTO 出版社 VALUES('C04','鐵扇出版社','北京故宮路110號','110110');</p><p> 修改表“圖書”,添加外碼約束C1,實(shí)現(xiàn)“圖書”表中“類別”字段與“圖書類別”表中“類別編號
31、”字段關(guān)聯(lián)</p><p> constraint c1 foreign key(類別) references 圖書類別(類別編號)</p><p> 查找客戶名稱為“牛魔王”的個人信息</p><p> Select * from 客戶 where 客戶名稱=’ 牛魔王’</p><p> 查找“類別名稱”為“精裝版”的圖書信息
32、</p><p> select * from 圖書類別 where 類別名稱='精裝版';</p><p> 查找?guī)齑媪?lt;10的圖書信息</p><p> SQL> select * from 圖書 where 庫存量<=10;</p><p> 查找職工姓名為“孫悟空”的銷售明細(xì)</p>
33、;<p> select * from 銷售明細(xì),銷售單,職工</p><p> where 銷售明細(xì).銷售單號=銷售單.單號 and 銷售單.銷售職工號=職工.職工 </p><p> and 職工.姓名='孫悟空';</p><p> 按銷售職工號分組統(tǒng)計(jì)銷售總金額,并按銷售總金額大小進(jìn)行排序</p><
34、p> select 銷售職工號,金額 from 銷售單,銷售明細(xì) where 銷售單.單號=銷售明細(xì).銷售單號 group by 銷售職工號 order by 金額;</p><p> 通過連接查詢或子查詢查找:職工姓名,客戶姓名,圖書名,銷售量,金額。</p><p> select 職工.姓名,客戶.名稱,圖書.書名,銷售明細(xì).銷售量,銷售明細(xì).金額 from 職工,客戶,
35、圖書,銷售明細(xì),銷售單</p><p> where 銷售明細(xì).圖書號=圖書.圖書號 and 客戶.編號=銷售單.客戶編號 and 職工.職工號=銷售單.銷售職工號;</p><p> 刪除名稱為“紅孩兒出版社”的出版社記錄。</p><p> Delete from 銷售單 where 單號 in (select 銷售單號 from 銷售明細(xì) where 圖
36、書號 in (select 圖書號 from圖書 where 出版社代號=(select 出版社代號 from 出版社 where 名稱=’紅孩兒出版社’)))Delete from 銷售明細(xì) where 圖書號 in (select 圖書號 from圖書 where 出版社代號=(select 出版社代號 from 出版社 where 名稱=’紅孩兒出版社’))Delete from 圖書 where 出版社代號=(select
37、出版社代號 from 出版社 where 名稱=’紅孩兒出版社’)Delete from 出版社 where 名稱=’紅孩兒出版 </p><p> ?。┐鎯^程和觸發(fā)器</p><p> 1、 建立一觸發(fā)器,要求在刪除銷售單同時刪除其下的銷售單明細(xì)</p><p> CREATE OR REPLACE TRIGGER del_XSMX<
38、/p><p> BEFORE DELETE ON 銷售單 for each row</p><p><b> begin</b></p><p> delete 銷售明細(xì) where 銷售單號=:old.單號:</p><p><b> end;</b></p><p>
39、 2、 建立一存儲過程,實(shí)現(xiàn)銷售明細(xì)數(shù)據(jù)的插入和修改操作(簡要說明:若是發(fā)現(xiàn)相同的“銷售單號”和“圖書號”的記錄,則只將相應(yīng)的“銷售量”、“折扣”、“金額”進(jìn)行修改;否則進(jìn)行記錄的插入操作),同時要求:(1)以“金額=銷售量*價格*(折扣/10)”對金額進(jìn)行自動計(jì)算(其中的價格來自“圖書”表;(2)銷售量發(fā)生變化后,“圖書”表中的庫存量也要相應(yīng)發(fā)生變化。</p><p> create or re
40、place procedure bbb (xsd_no IN CHAR,book_no IN CHAR,xsl IN INT,zk IN FLOAT)</p><p><b> as</b></p><p> in_count int;</p><p> old_xsl int:=0;</p><p> pric
41、e float;</p><p><b> begin</b></p><p> select count(*) into in_count from 銷售明細(xì)</p><p> where 銷售單號=xsd_no and 圖書號=book_no;</p><p> select 價格 into price fr
42、om 圖書</p><p> where 圖書號=book_no;</p><p> if in_count>0 then</p><p> select 銷售量 into old_xsl from 銷售明細(xì) where 銷售單號=xsd_no and 圖書號=book_no;</p><p> update 銷售明細(xì) se
43、t 銷售量=xsl,折扣=zk ,金額=xsl*price*zk </p><p> where 銷售單號=xsd_no </p><p> and 圖書號=book_no;</p><p><b> else </b></p><p> insert into 銷售明細(xì) values</p>&l
44、t;p> (xsd_no,book_no,xsl,zk,xsl*price*zk );</p><p><b> end if;</b></p><p> update 圖書 set 庫存量=庫存量-xsl+old_xsl;</p><p><b> end;</b></p><p>
45、<b> ?。ㄆ撸╅W回操作</b></p><p> 模擬誤刪除銷售明細(xì)表中的內(nèi)容,然后通過查詢閃回將其查找回來。</p><p> insert into 銷售明細(xì)</p><p> select * from 銷售明細(xì) as of timestamp</p><p> to_timestamp('20
46、13/1/4 15:47:00','YYYY/MM/DD HH24:MI:SS');</p><p><b> 課程設(shè)計(jì)(二)</b></p><p><b> 觸發(fā)器:</b></p><p> 二、物理備份與恢復(fù):</p><p><b> 備份:<
47、;/b></p><p> ?。ㄒ唬┬薷膫浞莪h(huán)境:</p><p> 保證數(shù)據(jù)庫在歸檔模式下運(yùn)行。</p><p><b> ?。ǘ﹤浞菸募?lt;/b></p><p> ?。?)將參數(shù)文件spfile備份到pfile(因?yàn)閜file是文本文件,允許用戶修改)。</p><p> ?。?)找
48、到物理文件(數(shù)據(jù)文件、日志文件、控制文件)shutdown數(shù)據(jù)庫將物理文件備份到某一物理地址</p><p> select file#,status,enabled,name from v$datafile;</p><p> select * from v$controlfile;</p><p> select * from v$logfile;<
49、/p><p> (三)模擬介質(zhì)故障:</p><p> 刪除原目錄下的數(shù)據(jù)文件、日志文件、控制文件</p><p><b> (四)數(shù)據(jù)庫恢復(fù):</b></p><p> 修改pfile中指向控制文件的語句信息以非登錄方式nolog啟動SQL PLUS通過pfile文件創(chuàng)建spfile文件啟動數(shù)據(jù)庫到MOUNT狀態(tài)修
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- oracle課程設(shè)計(jì)報(bào)告
- oracle課程設(shè)計(jì)--- oracle學(xué)生成績管理系統(tǒng)
- oracle課程設(shè)計(jì)--b樹索引
- oracle課程設(shè)計(jì)--論壇管理系統(tǒng)
- oracle課程設(shè)計(jì)--圖書管理系統(tǒng)
- oracle數(shù)據(jù)庫課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的oracle實(shí)現(xiàn)
- oracle數(shù)據(jù)庫課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的oracle實(shí)現(xiàn)
- 電影院售票系統(tǒng)_oracle課程設(shè)計(jì)
- oracle課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- oracle課程設(shè)計(jì)--圖書館書籍管理系統(tǒng)
- 學(xué)生學(xué)籍信息管理系統(tǒng)oracle課程設(shè)計(jì)
- oracle倉庫管理系統(tǒng)課程設(shè)計(jì)報(bào)告(數(shù)據(jù)庫部分,含oracle代碼)
- oracle課程設(shè)計(jì)說明書--圖書管理系統(tǒng)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)--基于oracle的cd管理系統(tǒng)
- oracle數(shù)據(jù)庫課程設(shè)計(jì)---在線考試系統(tǒng)數(shù)據(jù)庫
- 小型工資管理軟件_java+oracle_軟件綜合課程設(shè)計(jì)
- fpga課程設(shè)計(jì)課程設(shè)計(jì)報(bào)告
- 【課程設(shè)計(jì)】c語言課程設(shè)計(jì)
- java課程設(shè)計(jì)----課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)--unix程序設(shè)計(jì)課程設(shè)計(jì)
評論
0/150
提交評論