數(shù)據(jù)庫實驗報告(實驗一)(共11頁)_第1頁
數(shù)據(jù)庫實驗報告(實驗一)(共11頁)_第2頁
數(shù)據(jù)庫實驗報告(實驗一)(共11頁)_第3頁
數(shù)據(jù)庫實驗報告(實驗一)(共11頁)_第4頁
數(shù)據(jù)庫實驗報告(實驗一)(共11頁)_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、沈 陽 工 程 學 院學 生 實 驗 報 告(課程名稱:數(shù)據(jù)庫原理及應用)實驗題目: 數(shù)據(jù)庫模式設計 班 級 軟件本111學 號2011417104姓 名 吳月芬日 期 2012.10.16 地 點F座606 指導教師 孫憲麗 祝世東一、實驗目的熟練掌握采用SQL命令建立數(shù)據(jù)庫表、索引和視圖的方法。二、實驗環(huán)境Oracle10g數(shù)據(jù)庫系統(tǒng)。三、實驗內(nèi)容與要求(一)實驗內(nèi)容1建立學生數(shù)據(jù)庫模式學生表:student (sno學號,sname姓名,ssex性別,sage年齡,sdept所在系)其中:sno 長度為4的字符串,為主碼;sname 長度為8的字符串;ssex 長度為2的字符串,其值只取

2、男、女;sage 短整數(shù),其值在0-150之間;sdept 長度為10的字符串。2建立課程數(shù)據(jù)庫模式課程表:course ( cno課程號,cname課程名,ccredit學分)其中:cno 長度為4的字符串,為主碼cname 長度為10的字符串,不能為空,且不能有重復課程名;ccredit 短整數(shù)。3建立選課數(shù)據(jù)庫模式。選課表: sc (sno學號, cno課程號, grade成績)其中:sno 長度為4的字符串,和student表sno外鍵關聯(lián),且級聯(lián)刪除cno 長度為4的字符串,course表cno外鍵關聯(lián),grade 短整數(shù),值或空或為0100之間,(sno, cno) 聯(lián)合作主碼。(

3、二)實驗要求在Oracle10g的iSQLPlus中完成下列操作:(1)創(chuàng)建上述三個表。(2)向Student 表增加"入學時間"列(列名為Scome,日期型)。(3)將年齡的數(shù)據(jù)類型改為半字長整數(shù)。(4)為Student中sname添加列級完整性約束,不能為空。(5)刪除Student中sname列級完整性約束。(6)為SC建立按學號升序和課程號降序建立唯一索引.(7)在表student的sname字段建立一個升序索引。(8)刪除在表student的sname字段建立的索引。(9)給student表增加一個地址(address)屬性。(10)給student表刪除地址(a

4、ddress)屬性。(11)建立視圖 view1,要求有sno,sname,cname,grade四個字段。(12)建立視圖view2,要求有sno,ssex,sage三個字段。四、實驗過程及結(jié)果分析(1)1)創(chuàng)建學生數(shù)據(jù)庫模式,代碼如下:create table student( sno char(11) primary key, sname char(8), ssex char(2) check ssex in (男,女), sage number check between 0 and 150, sdept char(10);結(jié)果:ssex char(2) check ssex in (

5、男,女), *第 4 行出現(xiàn)錯誤: ORA-00906: 缺失左括號 分析錯誤原因:“check”檢查必須用括號將條件括起,改正代碼如下:create table student( sno char(11) primary key, sname char(8), ssex char(2) check( ssex in ('男','女'), sage number check ( sage between 0 and 150), sdept char(10);結(jié)果:表已創(chuàng)建,如圖1.1所示。NameNull?TypeSNONOT NULLCHAR(11)SNAME

6、CHAR(8)SSEXCHAR(2)SAGENUMBERSDEPTCHAR(10)圖1.1所示2)創(chuàng)建課程數(shù)據(jù)庫模式,代碼如下:create table course( cno char(4) primary key,cname char(10) unique not null,ccredit number );結(jié)果:表已創(chuàng)建,如圖1.2所示Name Null? Type CNO NOT NULL CHAR(11) CNAME NOT NULL CHAR(10) CCREDIT   NUMBER 圖1.2所示3)創(chuàng)建選課數(shù)據(jù)庫模式,代碼如下:create table sc( sno

7、char (11), cno char(11) , grade number null or check (grade between 0 and 100) ; primary key (sno,cno),foreign key (sno) references student (sno) on delete cascade,foreign key (cno) references course (cno);結(jié)果:grade number null or check (grade between 0 and 100), *第 4 行出現(xiàn)錯誤: ORA-00907: 缺失右括號分析錯誤原因: “

8、check” 里條件寫錯,同時還是錯在括號上。改正如下:create table sc( sno char (11), cno char(11) , grade number check(grade is null or (grade between 0 and 100),primary key (sno,cno),foreign key (sno) references student (sno) on delete cascade,foreign key (cno) references course (cno);結(jié)果:表已創(chuàng)建,如圖1.3所示。Name Null? Type SNO NO

9、T NULL CHAR(11) CNO NOT NULL CHAR(11) GRADE   NUMBER 圖1.3所示(2)alter table student add scome date;結(jié)果:表已更改,如圖1.4所示。Name Null? Type SNO NOT NULLCHAR(11) SNAME   CHAR(8) SSEX   CHAR(2) SAGE   NUMBER SDEPT   CHAR(10) SCOME   DATE 圖1.4所示(3)alter table student alter column sag

10、e integer;結(jié)果:alter table student alter column sage integer *第 1 行出現(xiàn)錯誤: ORA-01735: 無效的 ALTER TABLE 選項分析錯誤原因:在oracle 數(shù)據(jù)庫中用“modify”而不用“alter column”,改正如下:alter table student modify (sage integer);結(jié)果:表已更改,如圖1.5所示。Name Null? Type SNO NOT NULLCHAR(11) SNAME   CHAR(8) SSEX   CHAR(2) SAGE   I

11、NTEGERSDEPT   CHAR(10) SCOME   DATE 圖1.5所示(4)alter table student modify sname not null ;結(jié)果:表已更改,如圖1.6所示。Name Null? Type SNO NOT NULLCHAR(11) SNAME NOT NULLCHAR(8) SSEX   CHAR(2) SAGE   NUMBER SDEPT   CHAR(10) SCOME   DATE 圖1.6所示(5)alter table student drop not null (snam

12、e);結(jié)果:alter table student drop not null (sname) *第 1 行出現(xiàn)錯誤: ORA-00905: 缺失關鍵字 改正如下:alter table Student modify sname int null;結(jié)果:表已更改,如圖1.7所示。Name Null? Type SNO NOT NULL CHAR(11) SNAME   CHAR(8) SSEX   CHAR(2) SAGE   NUMBER SDEPT   CHAR(10) SCOME   DATE 圖1.7所示(6)creat unique

13、index scno on sc (sno asc,cno desc);結(jié)果:SP2-0851: 以 "creat uniq." 開頭的命令不能在 iSQL*Plus 中使用。分析原因錯誤:“create”字母打錯,改正如下:create unique index scno on sc (sno asc,cno desc);結(jié)果:Index created.(7)create index sname on student (sname asc);結(jié)果:Index created.(8)drop index sname結(jié)果:Index dropped.(9)alter tab

14、le student add address char;結(jié)果:表已更改,如圖1.8所示。Name Null? Type SNO NOT NULL CHAR(11) SNAME   CHAR(8) SSEX   CHAR(2) SAGE   NUMBER SDEPT   CHAR(10) SCOME   DATE ADDRESS   CHAR(1) 圖1.8所示(10)alter table student drop (address);結(jié)果:Table altered. 如圖1.9所示。Name Null? Type SNO NOT NULL CHAR(11) SNAME   CHAR(8) SSEX   CHAR(2) SAGE   NUMBER SDEPT   CHAR(10) SCOME

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論