




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、數(shù)據(jù)庫原理實驗報告 實驗_一_題目_ 數(shù)據(jù)庫及基本表的建立_ 實驗_二_題目_ 查詢數(shù)據(jù)庫 _ 實驗_三_題目_創(chuàng)建和使用視圖,索引,存儲過程 實驗_四_題目_ 小型數(shù)據(jù)庫規(guī)劃設計 _ 學 院 計算機學院 專 業(yè) 計算機科學與技術 班 級 級 班 學 號 姓 名 指導教師 (2012年 12 月) 計算機 學院 計算機科學與技術 專業(yè) 班 學號: 姓名: 協(xié)作者:_ 教師評定: 實驗題目 數(shù)據(jù)庫及基本表的建立 一、實驗目的1、掌握SQL SERVER的查詢分析器和企業(yè)管理器的使用;2、掌握創(chuàng)建數(shù)據(jù)庫和表的操作;二、實驗內(nèi)容和要求1、分別使用SQL語句、企業(yè)管理器(Enterprise Mana
2、ger)創(chuàng)建數(shù)據(jù)庫;2、使用SQL語句、企業(yè)管理器(Enterprise Manager)創(chuàng)建數(shù)據(jù)庫表;三、實驗主要儀器設備和材料1計算機及操作系統(tǒng):PC機,Windows 2000/xp;2數(shù)據(jù)庫管理系統(tǒng):SQL sever 2000/2003/2005;四、實驗方法、步驟及結果測試創(chuàng)建一個教學管理數(shù)據(jù)庫SC,其描述的信息有:學生信息、課程信息、教師信息、學生選課成績、授課信息、班級信息、系部信息、專業(yè)信息。創(chuàng)建:student表(學生信息表)、course表(課程信息表)、teacher表(教師信息表)、student _course表(學生選課成績表)、teacher_course表(教
3、師上課課表)等。1、創(chuàng)建數(shù)據(jù)庫:確定數(shù)據(jù)庫名稱;數(shù)據(jù)庫用于學生管理,命名為SC確定數(shù)據(jù)庫的位置;要求:數(shù)據(jù)文件和日志文件分別存儲在E盤自己的目錄下。確定數(shù)據(jù)庫的大??;根據(jù)實際的數(shù)據(jù)量確定數(shù)據(jù)文件的初始大小為30MB,日志文件的初始大小為3MB。確定數(shù)據(jù)庫的增長;根據(jù)實際情況,確定數(shù)據(jù)文件按20%增長,日志文件按1MB增長。(1)、利用查詢分析器(Query Analyzer),使用SQL語句指定參數(shù)創(chuàng)建數(shù)據(jù)庫;實現(xiàn)代碼及截圖:SQL語句:CREATE DATABASE SCON(NAME=SC_DAT,FILENAME=E:SC.mdf,SIZE=30MB,FILEGROWTH=20%)LOG
4、 ON(NAME=SC_LOG,FILENAME=E:SC.ldf,SIZE=2MB,FILEGROWTH=1MB)查詢分析器執(zhí)行情況:SQL語句及執(zhí)行結果截圖顯示 2、創(chuàng)建基本表利用查詢分析器,使用SQL語句方式創(chuàng)建方式將下面各表建立到教學管理數(shù)據(jù)庫中。(1) 創(chuàng)建student表字段名代碼類型約束學號s_nochar(8)主鍵姓名snamechar(8)非空性別sexchar(2) 出生日期sbirthdaySmalldatetime學生所在院系編號dnochar(6) 外鍵專業(yè)代碼spnochar(8)外鍵班級編碼class_nochar(4) (2)創(chuàng)建Course表字段名代碼類型約束
5、課程編號cnochar(10)主鍵課程名稱cnamechar(20)非空專業(yè)代碼spnochar(8)外鍵課程類型編號ctnotinyint理論學時lecturetinyint實驗學時experimenttinyint開課學期semestertinyint課程學分credittinyint(3)創(chuàng)建student _course表字段名代碼類型約束學號s_nochar(8)主鍵,與student表中s_no 外鍵關聯(lián),級聯(lián)刪除上課編號tcidsmallint主鍵學生成績score tinyint (4)創(chuàng)建teacher表 字段名代碼類型約束教師編號t_nochar(8)主鍵教師姓名t_nam
6、echar(8)非空性別t_sexchar(2)出生日期t_birthdaysmalldatetime教師所在院系編號dnochar(6) 外鍵職稱tech_titlechar(10)(5)創(chuàng)建系部表(department) 字段名代碼類型約束院系編號dnochar(6)主鍵院系名稱dept_namechar(20)非空院系負責人headerchar(8) (6)創(chuàng)建專業(yè)信息表(speciality) 字段名代碼類型約束專業(yè)代碼spnochar(8)主鍵院系編號dnochar(6)外鍵,非空專業(yè)名稱spnamechar(20)非空(7)創(chuàng)建teacher_course表字段名代碼類型約束上課編
7、號tcidsmallint主鍵教師編號t_nochar(8)外鍵專業(yè)代碼spnochar(8)外鍵班級編碼class_nochar(4)課程編號cnochar(10)非空,外鍵學期semesterChar(6)學年schoolyear Char(10)(8)創(chuàng)建班級表(class) 字段名代碼類型約束專業(yè)代碼spnochar(8)主鍵,與 speciality 表中spno 外鍵關聯(lián),班級編碼class_nochar(4)主鍵,班負責人headerchar(8)3、 查看各數(shù)據(jù)表之間的關系,生成數(shù)據(jù)庫關系圖。生成數(shù)據(jù)庫關系圖截圖顯示:4、創(chuàng)建各表的實現(xiàn)代碼及截圖:創(chuàng)建department 表:
8、USE SCcreate table department(dno char(6),dept_name char(20) not null,header char(8),PRIMARY KEY (dno)創(chuàng)建speciality表:USE SCcreate table speciality(spno char(8) primary key,dno char(6) not null,spname char(20) not null,foreign key (dno) references department(dno);創(chuàng)建teacher表:USE SCcreate table teacher(
9、t_no char(8) primary key,t_name char(8) not null,t_sex char(2),t_birthday smalldatetime,dno char(6),tech_title char(10),foreign key (dno) references department(dno)創(chuàng)建course表:USE SCCREATE TABLE course(cno char(10),cname char(20) not null,spno char(8),ctno tinyint,lecture tinyint,experiment tinyint,se
10、mester tinyint,credit tinyint,primary key (cno),foreign key (spno) references speciality(spno)創(chuàng)建teacher_course表:USE SCcreate table teacher_course(tcid smallint,t_no char(8),spno char(8),class_no char(4),cno char(10) not null,semester char(6),schoolyear char(10),primary key (tcid),foreign key (t_no)
11、references teacher(t_no),foreign key (spno) references speciality(spno),foreign key (cno) references course(cno)創(chuàng)建student表:USE SCcreate table student(s_no char(8) primary key,sname char(8) not null,sex char(2),sbirthday smalldatetime,dno char(6),spno char(8),class_no char(4),foreign key (dno) refere
12、nces department(dno),foreign key (spno) references speciality(spno)創(chuàng)建student_course表:USE SCcreate table student_course(s_no char(8),tcid smallint,score tinyint,primary key (s_no,tcid),foreign key (s_no) references student(s_no)創(chuàng)建class表:USE SCcreate table class(spno char(8),class_no char(4),header ch
13、ar(8),primary key (class_no,spno),foreign key (spno) references speciality(spno)創(chuàng)建department 表:創(chuàng)建speciality表:創(chuàng)建teacher表:創(chuàng)建course表:創(chuàng)建teacher_course表:創(chuàng)建student表:創(chuàng)建student_course表:創(chuàng)建class表:5、利用查詢分析器修改上述各表。(1)、用INSERT語句向各個表中插入數(shù)據(jù)錄入5 條記錄。錄入時注意體會外鍵約束。實現(xiàn)代碼及截圖:查詢分析器執(zhí)行情況:SQL語句及執(zhí)行結果顯向department表添加5條記錄USE SCins
14、ert into department values (01,計算機學院,張明),(02,財能學院,李清),(03,信息工程學院,陳東),(04,自動化學院,劉平芳),(05,外國語學院,李盛龍);向speciality表添加5條記錄USE SCinsert into speciality values(spt001,01,計算機科學與技術),(spt002,02,熱能與動力工程),(spt003,03,信息工程),(spt004,04,機械自動化),(spt005,05,外語與外貿(mào));向teacher表添加5條記錄USE SCinsert into teacher values(1001,陳
15、一新,男,1985-7-23,02,教授),(1002,吳杰,男,1981-3-6,04,講師),(1003,秦麗紅,女,1987-11-6,03,輔導員),(1004,陳惠英,女,1985-5-3,05,教授),(1005,蘇明,男,1789-8-24,01,博士生導師);向course表添加5條記錄USE SCinsert into course values(cr001,數(shù)據(jù)結構,spt001,001,72,28,1,5),(cr002,熱力學基礎,spt002,002,72,36,1,5),(cr003,信息安全概論,spt003,003,68,28,2,4),(cr004,機械自動化
16、,spt004,004,72,28,1,5),(cr005,外貿(mào)學,spt005,005,70,18,2,4);向teacher_course表添加5條記錄USE SCinsert into teacher_course values(01,1005,spt001,1001,cr001,1,1),(02,1001,spt002,2002,cr002,2,1),(03,1003,spt003,3003,cr003,2,1),(04,1002,spt004,4004,cr004,2,1),(05,1004,spt005,5005,cr005,1,1);向student表添加5條記錄USE SC i
17、nsert into student values(s01,張炎,男,1990-12-3,01,spt001,1001),(s02,藍易空,男,1991-3-5,02,spt002,2002),(s03,明成旭,男,1990-5-30,03,spt003,3003),(s04,劉丹,女,1992-7-27,04,spt004,4004),(s05,曾文輝,男,1991-6-13,05,spt005,5005);向student_course表添加5條記錄USE SC insert into student_course values(s01,01,87),(s02,02,89),(s03,03
18、,76),(s04,04,97),(s05,05,90);向class表添加5條記錄USE SC insert into class values(spt001,1001,李勇健),(spt002,2002,黃開明),(spt003,3003,方德城),(spt004,4004,邱潤),(spt005,5005,廖玲);實驗結果截圖顯示(插入數(shù)據(jù)的表格)向department表添加5條記錄向speciality表添加5條記錄向teacher表添加5條記錄向course表添加5條記錄向teacher_course表添加5條記錄向student表添加5條記錄向student_course表添加5條
19、記錄向class表添加5條記錄共8組(共8個表)(2)、用UPDATE語句更改student表中數(shù)據(jù);實現(xiàn)代碼:USE SC update student set class_no=0702 where s_no=s02update student set class_no=0801 where s_no=s01update student set class_no=0903 where s_no=s03update student set class_no=1005 where s_no=s05update student set class_no=1104 where s_no=s04st
20、udent表更改前的內(nèi)容截圖顯示查詢分析student表更改后的內(nèi)容截圖顯示(3)、用DELETE語句刪除student表中數(shù)據(jù);實現(xiàn)代碼:USE SC delete from student where s_no=s05;student表更改前的內(nèi)容截圖顯示查詢分析student表更改后的內(nèi)容截圖顯示五、實驗中出現(xiàn)的問題及解決方案1.創(chuàng)建表的時候字打錯了,后用update語句糾正過來。2.刪除表中數(shù)據(jù)的時候因為沒有級聯(lián)而出錯,后通過界面操作級聯(lián)了兩個表解決了該問題。3.在一次插入數(shù)據(jù)時因為沒看清楚約束條件而插入非法數(shù)據(jù)面出錯,后通過糾正數(shù)據(jù)格式而解決此問題。插入數(shù)據(jù)時一定要看好約束的條件,不
21、然很容易出錯。六、思考題1、 說明數(shù)據(jù)庫中的表和數(shù)據(jù)文件的關系。答:表(table)為數(shù)據(jù)庫中數(shù)據(jù)存儲的基本單位,其數(shù)據(jù)按行、列存儲。每個表具有一表名和列的集合。每一列有一個列名、數(shù)據(jù)類型、寬度或精度、比例。一行是對應單個記錄的列信息的集合。數(shù)據(jù)文件存放著在數(shù)據(jù)庫中存儲的數(shù)據(jù),且一個數(shù)據(jù)庫只有一個數(shù)據(jù)文件。表作為數(shù)據(jù)庫中的數(shù)據(jù)存儲單位,存儲在數(shù)據(jù)文件中。2、 數(shù)據(jù)庫中的日志文件能否單獨修改?答:可以。把對數(shù)據(jù)的修改寫到數(shù)據(jù)庫中和把表示這個修改的日子記錄寫到日志文件中是兩個不同的操作。有可能在這兩個操作之間發(fā)生某種故障,即這兩個操作只完成了其中一個。所以,可以單獨修改數(shù)據(jù)庫中的日志文件而不一定會
22、修改數(shù)據(jù)。 計算機 學院 計算機科學與技術 專業(yè) 班 學號: 姓名: 協(xié)作者:_ 教師評定: 實驗題目 查詢數(shù)據(jù)庫 一、實驗目的熟悉SQL語句的基本使用方法,學習如何編寫SQL語句來實現(xiàn)查詢1、掌握基本的SELECT查詢及其相關子句的使用;2、掌握復雜的SELECT查詢,如多表查詢、子查詢、連接查詢和嵌套查詢。二、實驗內(nèi)容和要求使用SQL查詢分析器查詢數(shù)據(jù),練習查詢語句的使用,掌握SELECT 語句的完整結構,包括簡單查詢、嵌套查詢、連接查詢等基本實現(xiàn)方法,掌握存儲查詢結果的方法,體會各種查詢的異同及相互之間的轉(zhuǎn)換,體會各種查詢的執(zhí)行過程,為簡單綜合應用打下良好的基礎。三、實驗主要儀器設備和材
23、料1計算機及操作系統(tǒng):PC機,Windows 2000/xp;2數(shù)據(jù)庫管理系統(tǒng):SQL sever 2000/2003/2005;四、實驗方法、步驟及結果測試要求用SELECT完成以下查詢, 1、對實驗一建立的數(shù)據(jù)庫表進行查詢簡單查詢:(1)、查詢?nèi)繉W生的學號、姓名、性別和出身年月日。實現(xiàn)代碼及查詢結果截圖:格式如下查詢分析器執(zhí)行情況:SQL語句及執(zhí)行結果顯示USE SCselect s_no,sname,sex,sbirthdayfrom student查詢結果截圖顯示(2) 、查詢?nèi)w學生的學號、姓名和年齡use SCselect s_no,sname,sage:,year(getdat
24、e()-Year(sbirthday)from student ;實現(xiàn)代碼及查詢結果截圖:(3)、查詢院系編號為01(計算機學院)的全部學生的學號、姓名、性別和出身年月日。實現(xiàn)代碼及查詢結果截圖:USE SCselect s_no,sname,sex,sbirthdayfrom student where dno=01(4)、查詢“計算機科學與技術”專業(yè)(專業(yè)代碼為spt001)并且班級代碼為1001的學生的學號、姓名和出生日期。實現(xiàn)代碼及查詢結果截圖:USE SCselect s_no,sname,sex,sbirthdayfrom student where spno=spt001 and
25、 class_no=1001(5)、查詢在1990/12/10以后出生的計算機學院(院系編號為01)學生的學號、姓名、性別和出身年月日。實現(xiàn)代碼及查詢結果截圖:USE SCselect s_no,sname,sex,sbirthdayfrom studentwhere student.dno=01 and student.sbirthday=1990-12-10(6)、查詢?nèi)繉W生的學號、姓名、性別和出身日期結果按照出生日期的升序排列。實現(xiàn)代碼及查詢結果截圖:USE SCselect s_no,sname,sex,sbirthdayfrom studentorder by sbirthday
26、asc連接查詢:(1)、查詢?nèi)繉W生的學號、姓名、性別、所在院系名稱和專業(yè)名稱實現(xiàn)代碼及查詢結果截圖:USE SCselect student.s_no,student.sname,student.sex,department.dept_name,speciality.spname from student,department,speciality where student.dno = department.dno and student.spno=speciality.spno(2)、查詢選修了課程1(上課編號)的學生的學號、姓名、專業(yè)名稱和這門課的成績實現(xiàn)代碼及查詢結果截圖:USE S
27、Cselect student.s_no,sname,class_no,tcid,score from student,student_course where student.s_no = student_course.s_no and student_course.tcid=1(3)、查詢學生不及格的情況列出不及格學生的學號、姓名和不及格的課程名稱。實現(xiàn)代碼及查詢結果截圖:USE SCselect student.s_no,sname, cname,scorefrom student join student_course on (student.s_no=student_course.s
28、_no ) join course on (student.spno=course.spno)select student.s_no,sname, cnamefrom student join student_course on (student.s_no=student_course.s_no ) join course on (student.spno=course.spno)where score 80 )2、選用Northwind數(shù)據(jù)庫進行查詢(1)、對NothWind. Products表進行簡單查詢;在查詢分析器在窗口下用SELECT語句完成單表查詢:查詢所有Products的詳細
29、記錄;實現(xiàn)代碼及查詢結果截圖:USE NorthWind select*from Products查詢單價(UnitPrice)小于20的Products;實現(xiàn)代碼及查詢結果截圖:USE Northwind select*from Products where UnitPrice 20查詢Products中單價(UnitPrice)最高的Products的資料;實現(xiàn)代碼及查詢結果截圖:USE Northwind select * from Productswhere UnitPrice=(select max(UnitPrice)from Products)五、實驗中出現(xiàn)的問題及解決方案答:在
30、本次實驗中,由于只知道出生日期,但其格式是smalldatetime,且發(fā)現(xiàn)年齡不是我最初設置的值,而是系統(tǒng)自己默認的值1905年,后來通過update語句改正過來。另外,開始不知道要怎樣計算年齡,后來通過上網(wǎng)查找解決了該問題。其他的一般的查詢、連接查詢和嵌套查詢因為知道其的代碼書寫格式,基本上沒遇到什么問題。六、思考題1、 連接查詢分哪幾類?各有什么特點?答:2、 進行連接查詢時應注意哪些問題?答:進行奪標連接查詢的時候,要指明查詢條件。要有明確的思路 計算機 學院 計算機科學與技術 專業(yè) 班 學號: 姓名: 協(xié)作者:_ 教師評定: 實驗題目 創(chuàng)建和使用視圖、索引、存儲過程 一、實驗目的1、
31、理解視圖、索引、存儲過程的定義、索引、存儲過程的優(yōu)點與、索引、存儲過程的工作原理;2、掌握在查詢分析器和企業(yè)管理器中創(chuàng)建、修改及刪除視圖、索引、存儲過程;3、掌握創(chuàng)建視圖、索引、存儲過程的SQL語句的用法;并能夠熟練利用視圖向表中插入、刪除和修改數(shù)據(jù)。4、掌握使用視圖來查詢數(shù)據(jù)。二、實驗主要儀器設備和材料1計算機及操作系統(tǒng):PC機,Windows;2數(shù)據(jù)庫管理系統(tǒng):SQL Server 2000;三、實驗方法、步驟及結果測試(一)、視圖1、建立“計算機學院”的學生基本情況視圖ies_student_view,該視圖包括計算機學院所有學生的學號、姓名、性別、出身年月、專業(yè)名稱。2、執(zhí)行ies_s
32、tudent_view視圖并觀察結果。3、建立課程1(上課編號)的學生名冊的視圖,該名冊包括學生的學號、姓名、專業(yè)名稱和這門課的成績;并查詢結果。4、建立統(tǒng)計不及格情況的視圖,列出不及格學生的學號、姓名和不及格的課程代碼;5、執(zhí)行視圖并觀察結果。6、修改視圖ies_student_view,使該視圖包括所有學生的學號、姓名、性別、出身年月、學院名稱、專業(yè)名稱。7、執(zhí)行ies_student_view視圖并觀察結果。8、刪除視圖ies_student_view。并查詢結果。記錄上述實驗過程并截圖說明。查詢分析器執(zhí)行情況:創(chuàng)建視圖的SQL語句及執(zhí)行結果顯示CREATE VIEW ies_stu_v
33、iewAS SELECT s_no,sname,sex,sbirthday,spnoFROM studentWHERE student.spno=spt001查看結果:SELECT * FROM ies_stu_view查詢視圖SQL語句及執(zhí)行結果截圖查詢分析器執(zhí)行情況:創(chuàng)建視圖的SQL語句及執(zhí)行結果顯示CREATE VIEW course1_student_viewAS SELECT student.s_no,sname,sex,sbirthday,dno,spno,tcidFROM student,student_courseWHERE student_course.tcid=1 AND
34、student.s_no=student_course.s_no查看結果:SELECT * FROM course1_student_view建立統(tǒng)計不及格情況的視圖USE SCGOCREATE VIEW fail_student_viewAS SELECT student.s_no,sname,tcidFROM student,student_courseWHERE student.s_no=student_course.s_no AND student_course.score60查看結果:SELECT * FROM fail_student_view查詢視圖SQL語句及執(zhí)行結果截圖查詢分
35、析器執(zhí)行情況:修改視圖的SQL語句及執(zhí)行結果顯示USE SCGOALTER VIEW ies_stu_viewAS SELECT s_no,sname,sex,sbirthday,spnoFROM student查看結果:SELECT * FROM ies_stu_view查詢視圖SQL語句及執(zhí)行結果截圖查詢分析器執(zhí)行情況:刪除視圖的SQL語句及執(zhí)行結果顯示USE SCGODROP VIEW ies_stu_view查詢視圖SQL語句及執(zhí)行結果截圖(二)、索引(1)、在student_course表(學生選課表)的學生學號(sno)列上創(chuàng)建索引sc_sno_index(2)通過SQL語句查看運
36、行結果查詢分析器執(zhí)行情況:創(chuàng)建索引的SQL語句及執(zhí)行結果顯示USE SCGOCREATE UNIQUE INDEX sc_sno_indexON student_course(s_no);查詢視圖SQL語句及執(zhí)行結果截圖(三)、存儲過程題目(1)創(chuàng)建存儲過程list_student_department,該存儲過程接收學院代碼作為輸入?yún)?shù),列出數(shù)據(jù)庫SC中某個院系學生的全部信息。實驗過程:(1) 啟動查詢分析器,選擇SC為當前數(shù)據(jù)庫(2) 在編輯窗口輸入SQL語句(3) 按F5執(zhí)行該語句查詢分析器執(zhí)行情況:SQL語句示例:Create proc list-.USE SCGOCREATE Pro
37、cedure list_student_departmentdno char(6)ASSELECT s_no,sname,sex,sbirthday,spno,class_no,student.dnoFROM student,department WHERE department.dno=dno AND student.dno=department.dno執(zhí)行結果截圖顯示示例:EXEC list-題目(2)使用SQL語句執(zhí)行存儲過程list_student_department 實驗過程:(1)啟動查詢分析器,選擇SC為當前數(shù)據(jù)庫(2)在編輯窗口輸入SQL語句(3)按F5執(zhí)行該語句查詢分析器執(zhí)
38、行情況:SQL語句示例:EXEC list_student_department department=51000USE SCEXEC list_student_department 01;執(zhí)行結果截圖顯示題目(3)將某班選修某門課程的所有學生的學號和上課編號插入到student_course表中:(1)啟動查詢分析器,選擇SC為當前數(shù)據(jù)庫(2)在編輯窗口輸入SQL語句(3)按F5執(zhí)行該語句 查詢分析器執(zhí)行情況:SQL語句USE SCGOCREATE PROCEDURE apdclass(dno char(6), spno char(8),class_no char(4),tcid integ
39、er)ASINSERT INTO student_course(tcid,s_no)SELECT tcid,s_noFROM studentWHERE dno=dno AND spno=spno AND class_no=class_no AND s_no not IN(SELECT s_no FROM student_course WHERE tcid=tcid)執(zhí)行結果截圖顯示題目(4)使用SQL語句執(zhí)行存儲過程:(1)啟動查詢分析器,選擇SC為當前數(shù)據(jù)庫(2)在編輯窗口輸入SQL語句(3)按F5執(zhí)行該語句查詢分析器執(zhí)行情況:SQL語句UES SCGOEXEC apdclass 01,sp
40、t001,1001,1;執(zhí)行結果截圖顯示題目(5)使用SQL語句查看存儲過程代碼:(1)啟動查詢分析器,選擇SC為當前數(shù)據(jù)庫(2)在編輯窗口輸入SQL語句(3)按F5執(zhí)行該語句查詢分析器執(zhí)行情況:SQL語句USE SCGOEXEC sp_helptext list_student_department執(zhí)行結果截圖顯示題目(6)使用SQL語句修改存儲過程修改存儲過程list_student_department,使其返回值只包括student表的部分列(學生學號、姓名、出生年月、學院名稱和專業(yè)名稱)(1)啟動查詢分析器,選擇SC為當前數(shù)據(jù)庫(2)在編輯窗口輸入SQL語句(3)按F5執(zhí)行該語句查詢
41、分析器執(zhí)行情況:SQL語句USE SCGOALTER Procedure list_student_departmentdno char(6)ASSELECT s_no,sname,sbirthday,dept_name,spnameFROM student,department,specialityWHERE department.dno=dno AND student.dno=department.dnoAND department.dno=speciality.dno執(zhí)行結果截圖顯示題目(7)使用SQL語句刪除存儲過程實驗過程:(1)啟動查詢分析器,選擇SC為當前數(shù)據(jù)庫(2)在編輯窗口輸
42、入SQL語句 (3)按F5執(zhí)行該語句查詢分析器執(zhí)行情況:SQL語句USE SCGODROP PROC list_student_department執(zhí)行結果截圖顯示實驗方法:(1)、視圖(使用企業(yè)管理器)1、 啟動企業(yè)管理器,選擇要創(chuàng)建視圖的數(shù)據(jù)庫SC并展開;2、 執(zhí)行“工具”/“向?qū)А泵睿?、 選擇數(shù)據(jù)庫SC;4、 選擇數(shù)據(jù)庫SC,選擇表student、department。5、 選擇student表中的sno snamesex sbirthday字段和speciality表中的spname字段;6、 在“定義限制”對話框中輸入WHERE子句來限制視圖的信息;7、 命名視圖:ies_sc_
43、view8、 使用視圖ies_sc_view。在查詢分析器中運用SQL語句查詢視圖。(2)、索引(使用企業(yè)管理器)1、啟動企業(yè)管理器,選擇要創(chuàng)建索引的數(shù)據(jù)庫SC并展開;2、執(zhí)行“工具”/“向?qū)А泵睿?、展開“數(shù)據(jù)庫”文件夾,雙擊“創(chuàng)建索引向?qū)А?、選擇希望為其建立索引的數(shù)據(jù)庫和對象(如數(shù)據(jù)庫SC中的student表)5、查看有關當前索引的信息。選擇一個或多個將被包含在索引中的列6、指定索引選項。四、實驗中出現(xiàn)的問題及解決方案最初并不很清楚要如何來寫帶有輸入?yún)?shù)的存儲過程以及如何通過輸入?yún)?shù)來顯示表里對應的內(nèi)容,后來通過上網(wǎng)查找一些資料和看一些例子之后問題就自然而然的解決了五、思考題1、視圖更
44、新的優(yōu)點答:視圖的作用:1. 視圖能夠簡化用戶的操作;2. 視圖使用戶能以多種角度看待同一數(shù)據(jù);3. 視圖對重構數(shù)據(jù)庫提供了一定程度的邏輯獨立性;4. 視圖能夠?qū)C密數(shù)據(jù)提供安全保護;5. 適當?shù)睦靡晥D可以更清晰地表達查詢。2、哪些視圖是可以更新的?哪些視圖是不可以更新的?針對實驗舉例說明。答:一般的,行列子集視圖時可更新的,除行列子集視圖外,理論上有些視圖也是可以更新的。還有其他的視圖從理論上就是不可更新的,比如,視圖的屬性來自聚集函數(shù)、表達式,則該視圖肯定是不可更新的。在上述實驗中 ies_stu_view視圖是可以更新的,其視圖更新既是對student表的更新。而視圖course1_s
45、tudent_view和fail_student_view都是由兩個基本表組成的,因此視圖不能更新。 計算機 學院 計算機科學與技術 專業(yè) 班 學號: 姓名: 協(xié)作者:_ 教師評定: 實驗題目 小型數(shù)據(jù)庫規(guī)劃設計 一、 實驗目的學習數(shù)據(jù)庫原理及應用目的就是能創(chuàng)建和管理一個真實的數(shù)據(jù)庫,通過規(guī)劃設計一個小型數(shù)據(jù)庫系統(tǒng)。讓學生掌握數(shù)據(jù)庫規(guī)劃設計的基本技術,熟悉數(shù)據(jù)庫的設計的基本方法和步驟,明白數(shù)據(jù)庫設計各階段的任務,加深對數(shù)據(jù)庫系統(tǒng)概念和特點的理解。二、 實驗內(nèi)容和要求根據(jù)你熟悉的實際情況,選一個小型的數(shù)據(jù)庫應用項目,銷售管理系統(tǒng),進行系統(tǒng)分析和數(shù)據(jù)庫設計。要求:1、規(guī)劃設計一個小型系統(tǒng)的數(shù)據(jù)庫,按照給定要求,對各設計階段進行描述,要求給出數(shù)據(jù)庫設計的E-R圖,并將E-R圖轉(zhuǎn)換成相應的模型,編制SQL命令腳本。2、要求:數(shù)據(jù)庫結構嚴謹、基本表及屬性合理、各種約束條件正確。 3、涉及的內(nèi)容或知識點:數(shù)據(jù)庫設計的需求分析、數(shù)據(jù)模型、關系規(guī)范化理論。4、采
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖南省常德市聯(lián)盟校2024-2025學年八年級下學期期末道德與法治試題
- 服裝廠保潔方案(3篇)
- 會展展臺規(guī)劃方案(3篇)
- 私宅樓頂改造方案(3篇)
- 船用電纜銷售方案(3篇)
- 防震減災救災預案方案(3篇)
- 一建建造師課件
- 機油房裝修方案(3篇)
- 車輛維修檢查方案(3篇)
- 家紡基礎知識培訓
- 2025年食品安全培訓考試試題及答案
- 2025年長江證券港股通開通測試題及答案
- 2025西安亮麗電力集團有限責任公司招聘10人筆試備考題庫及1套完整答案詳解
- 2025河北唐山某國有企業(yè)單位招聘勞務派遣工作人員44人筆試參考題庫附帶答案詳解(10套)
- 成都銀行總行招聘考試真題2024
- 基孔肯雅熱培訓測試題含答案
- 小額貸款公司貸款五級分類辦法
- 2025公衛(wèi)執(zhí)業(yè)醫(yī)師考試試題(附答案)
- 醫(yī)院藥品質(zhì)量管理課件
- 2025年上海市中考招生考試數(shù)學真題試卷(真題+答案)
- 16J914-1 公用建筑衛(wèi)生間
評論
0/150
提交評論