第一篇:SQL數據庫制作考務管理系統實驗報告
一、實驗目的1. 掌握sql server的基本用法
2. 熟悉掌握asp語言的應用
3. 掌握asp的頁面結構和內置對象
4. 掌握asp與sql server數據庫的連接和應用
5. 掌握asp 另外一個重要的語言——javascript,并熟悉它的應用
6.制作一個功能完善的考務管理系統
7.能夠獨立的完成系統策劃,系統分析和程序的編寫
8.提高發現問題,解決問題的能力
二、實驗內容
制作一個考務管理系統,用于從考生報名、產生準考證到錄取考生和打印成績單即對考生考試和錄取全過程的考務管理,系統要實現的功能有:考生報名,按報名順序產生報名號;產生準考證號和打印準考證;輸入考生成績和輸入錄取合格標準;根據合格標準錄取上線考生;打印考生成績單和錄取通知書;設置系統用戶和系統初始化。
三、實驗環境
1、windows xp或 windows XX;
2、安裝 microsoft sql server XX 個人版。
3、iis 5.0及以上版本和瀏覽器ie5.5及以上版本
4、macromedia dreamwezver8等相關軟件
四、實驗步驟
首先:配置環境,安裝sql server,macromedia dreamwezver8。
第二:對要做的系統進行構思、策劃、布局。
第三:建立數據庫kaoshi及數據表:學生信息表(student),用戶表(yonghu),考生表(biaozhun)。
第四:建立連接數據庫的文件conn.asp,其代碼如下所示:
<%
set conn=server.createobject(“adodb.connection”)
conn.open “provider=sqloledb;” & “data source=localhost;initial catalog=ksd;user id=sa;password=100200;”
%>
第五:制作各個網頁并聯接所有需要聯接的網頁。
第六:運行整個系統,查找是否有錯誤,并進行修改直至整個系統運行無誤。
五、實驗過程與分析
(一)系統分析與總體設計
現在用計算機來進行考生的管理及考生的錄取已普遍存在。因如果用人來進行這項工作將十分煩瑣,系統管理員需要劃分很多的時間和精力,而且還不能保證其正確率。
而用考務管理系統可以簡化管理員的工作,還會提高工作的正確率。以下將對考務管理系統進行系統分析和設計。
(1)系統的功能描述
考務管理系統包括學生報名管理、考生成績管理系統維護三大模塊。
考生報名管理 包括報名處理、產生準考證、打印準考證和退出系統等4項功能。
考生成績管理 包括考生成績錄入、合格標準錄入、錄取考生、打印成績單和打印錄取通知單等5項功能。
系統維護 包括用戶設置和系統初始化等2項功能。
用戶通過系統菜單執行相應的操作。
(2)數據庫設計
本系統以sql server XX作為數據庫平臺。在sql server XX中設計一個數據庫kaoshi,其中包含如下數據表。
1.student表
該表用于存放所有考生記錄,包括基本數據.表的結構如圖2所示。
2biaozhun表
該表用于存放錄取考生的合格標準,其中只有一個記錄,該記錄指出各門課程的最低分和總分的最低分。只有各門成績和總分都超過這個標準的考生才能被錄取。該表的結構如圖3所示。
3.yonghu表
該表用于存放本系統用戶的信息。包括用戶的用戶名、密碼和級別(只分“一般操作員”和“系統管理員”兩類)。該表結構如圖4所示。
六、實驗結果與總結
實驗中的考務管理系統是經過很多次的測試、修改再測試、再修改才完成的。也就是在多次的測試修改的過程中使我學發現了很多平時上課發現不了的問題,也發現了自己學習這門課程的薄弱的地方和學的不足的地方。通過實驗期間的發現問題、分析問題、查找問題原因、解決問題及進一步完善考務管理系統的過程,我的能力和水平有一定程度的提高。經過一次獨立完成系統給我以后編程打下了基礎,讓我面對的不再是茫然和無措,而是有條不紊的思緒和完成的信心。所以這次實驗對我來說是一筆極大的財富。
當然,在實驗中我也有很多不足的地方,系統也有需要進一步完善的地方,這主要是我對asp與sql server數據庫的連接和應用不熟悉和經驗不足的原因造成的。所以我還要在以后繼續學習,以求做的更好。
第二篇:數據庫實驗報告 SQL語言
數據庫原理及實驗報告
實驗6 視圖
實驗目的:1)掌握交互式創建、刪除視圖的方法
2)掌握使用SQL創建、刪除視圖的方法
3)掌握交互式更新視圖的方法
4)掌握使用SQL更新視圖的方法 實驗內容
6.1實驗題目:創建視圖
實驗過程:1)交互式創建視圖VIEW_S
2)交互式創建成績視圖VIEW_SCORETABLE
3)使用SQL創建課程表視圖VIEW_CTABLE
實驗結果:
6.2實驗題目:修改視圖
實驗過程:1)使用交互式方法把視圖VIEW_S中的字段SNO刪掉
2)使用SQL為視圖VIEW_CTABLE增加一個課時字段CT tiny int
實驗結果:
6.3實驗題目:通過視圖修改數據庫數據
實驗過程:1)交互式通過修改視圖VIEW_S中的數據來實現對其基本表S中數據的修改
2)對視圖VIEW_S執行INSERT語句,查看此視圖的基本表S中數據的變化
3)修改視圖VIEW_S的定義,使其包含表S中的主鍵,再執行插入操作
4)用SQL語句對視圖VIEW_S執行DELETE操作,查看此視圖的基本表S中數據的變化 實驗結果:
6.4實驗題目:刪除視圖
實驗過程:1)交互式刪除視圖VIEW_S
2)使用SQL刪除視圖VIEW_CTABLE
實驗結果:
實驗7 數據查詢
實驗目的:1,掌握從簡單到復雜的各種數據查詢。包括,單表查詢、多表連接查詢、嵌套查詢、集合查詢。
2,掌握用條件表達式表示檢索結果。
3,掌握用聚合函數計算統計檢索結果。實驗7.1 單表查詢
實驗目的:1,掌握指定列或全部列查詢。
2,掌握按條件查詢。
3,掌握對查詢結果排序。
4,掌握使用聚集函數的查詢。
5,掌握分組統計查詢。實驗內容:1,指定或全部列查詢。
2,按條件查詢及模糊查詢。
3,對查詢結果排序。
4,使用聚集函數的查詢。
5,分組統計查詢。
實驗7.2 連接查詢 實驗目的:掌握設計一個以上數據表的查詢方法。多表之間的連接包括等值連接、自然連接、非等值連接、自身連接、自身連接、外連接和復合連接。
實驗內容:1,連接查詢,查詢所有選課學生的學號、姓名、選課名稱及成績。
查詢每門課程的課程號、任課教師姓名及其選課人數。
2,自身連接,查詢所有比劉偉工資高的的教師的姓名、工資及劉偉的工資。
查詢同時選修了程序設計和微機原理的學生的姓名、課程號。
3,外連接,查詢所有學生的學號、姓名、選課名稱及成績(沒有選課的學生的選課信息顯示為空)
實驗結果
實驗7.3 嵌套查詢
實驗目的:掌握嵌套查詢使我們可以用多個簡單查詢構成復雜的查詢。從而增強了SQL的查詢能力。
實驗內容:1,返回一個值的子查詢,查詢與劉偉教師職稱相同的教師號、姓名和職稱。
2,返回一組值的子查詢,使用ANY謂詞查詢講授課程號為C5的教師姓名。使用IN謂詞查詢講授課程號為C5的教師姓名。使用ALL謂詞查詢其他系中比計算機系所有教師工資都高的教師的姓名、工資、使用EXISTS謂詞查詢沒有講授課程號為C5的課程的教師姓名、所在系.使用NOT EXISTS謂詞查詢至少選修了學生S2選修的全部課程的學生的學號。實驗結果
實驗7.4 集合查詢
實驗目的:掌握使用UNION操作符將來自不同查詢但結構相同的數據集合組合起來,形成一個具有綜合信息的查詢結果。
實驗內容:查詢年齡不大于19歲或者屬于計算機系的學生,步驟如下:打開新建查詢窗口,創建SQL語句。執行語句。
實驗結果
實驗十.T-SQL程序設計與游標設計
實驗目的
掌握Transact-SQL語言及其程序設計的方法 掌握T-SQL游標的使用方法
實驗10.1 T-SQL程序設計邏輯 實驗目的
掌握T-SQL程序設計的控制結構及程序設計邏輯 實驗內容
(1)計算1~100之間所有能被3整除的數的個數和總和。
(2)從學生表S中選取SNO,SN,SEX,如果為“男”則輸出M,如果為“女”則輸出F。實驗 10.2 面向復雜T-SQL程序設計 實驗目的
掌握面向復雜應用的T-SQL程序設計方法。實驗內容
(1)從教學數據庫jxsk中查詢所有同學選課成績情況:姓名,課程名,成績。要求:凡成績為空者輸出“未考”;小于60分的輸出“不及格”;60~70分的輸出“及格”;70~80分的輸出“中”;80~90分輸出“良好”;90~100分輸出優秀。并且輸出記錄按照下面要求排序:先按SNO升序,再按CNO升序,最后按成績降序。
(2)現給教師增加工資。要求:必須任兩門以上課程且漲幅按總收入分成三個級別:4000元以上漲300;3000元以上漲200;3000元以上漲100。只任一門課程的漲50.其他情況不漲。
實驗 10.2 使用游標 實驗目的
學習和理解關系數據中游標的概念和設計思想。掌握使用T-SQL游標處理結果集的方法。實驗內容
針對數據庫jiaoxuedb,進行下面的實驗:
(1).定義一個游標Cursor_Famale。要求該游標返回所有女同學的基本信息,在游標中查找并顯示牛莉的記錄。(2).創建一個一個儲存過程Pro_C,返回一個包含所有選修數據庫課程的學生基本信息的游標。利用該存儲過程,通過學生姓名查找學生王一山是否選修了數據庫課程以及成績。
第三篇:酒店管理系統 SQL數據庫 實驗設計
學院名稱: 經濟管理學院 課程題目: 酒店管理系統 授課教師: 單承戈
小組成員:祝梓惟(組長)潘佳麗 顏政
夏佳玉 楊荇貽 陳雪婷
教師評分:
二零一六年六月七日
概述
1、項目背景:
連鎖酒店的興衰,關鍵是管理。建設一間現代化的連鎖酒店,需要的是錢,而要經營管理好一間連鎖酒店,關鍵是管理。酒店管理是現代酒店的命脈,管理水平的高低,決定著酒店經營的成敗。酒店是企業,同樣是要重視管理的工作,加強管理。現代管理者即是財富,當代的管理者更是直接的財富。管理的意義,簡單地講,管就是主事,理就是治事,合起來為主管和治理人與事。隨著中國加入WTO和經濟全球化格局的形成,越來越多的人感到21世紀國際酒店的競爭激烈,從設備豪華到價格競爭發展到人才全方位的競爭。要競爭就必須創新。創新,是酒店的生命。商場如戰場,成功的管理者及其管理需要剛柔結合。
現在的酒店管理進入e時代,未來酒店業的競爭必將進入一個新的階段,伴隨著我國旅游業的高速發展,賓館酒店行業的服務檔次迫切需要提高。在賓館酒店競爭日趨激烈的今天,要成為佼佼者,就必須與高新技術緊密結合。硬件設施落后、管理水平滯后、服務質量低下的酒店將被逐步淘汰,傳統的純手工或簡單的計算工具,已經不適應現代經濟高速發展的要求,必須運用現代化管理手段,配備完善的自動化設備,提高酒店的服務水平與質量,從而贏得高信譽、強實力、好效益!本系統目地是為了一些酒店還沒有使用管理軟件,仍靠手工處理業務。
2、編寫目的:
為連鎖酒店的訂房呼叫中心提供一種方便快捷的訂房系統
3、軟件定義:
酒店管理系統(呼叫中心用)
4、開發工具:
Microsoft SQL Server 2003數據庫管理系統、Delphi7開發工具實現系統一、系統定義
酒店客房管理系統是為了在正常運營中需要對客房資源、客人信息、消費信息、結算信息等進行管理,利用酒店客房管理信息系統對客房的各個操作進行管理,能夠及時了解各個環節中信息的變更,有利于提高管理的效率。
本項目要設計和實現一個能對酒店客房租住信息,客人信息,預訂信息,消費信息,結算信息的管理,實現前臺操作流程較方便,清晰,高效的信息管理系統。
二、功能需求分析
酒店管理:加盟酒店名、所在地、詳細地址、聯系電話、聯系人等信息。員工管理:添加用戶,修改員工密碼。
客戶管理:添加客戶,查詢,刪除客戶信息。會員系統:酒店會員進行預訂時享有一定的優惠。客房管理:查詢,修改客房狀態和查詢相關訂單。
客房類型管理:添加客房類型,修改客房類型,刪除客房類型。訂房:預訂客房,取消預訂房間,查詢訂單,入住率。客房登記信息管理:查看客房登記信息。
財務管理:營業額管理、員工工資管理、收入結算。
三、系統設計
(一)邏輯結構設計
1.酒店表(酒店編號,酒店名稱,所在城市,詳細地址,電話,聯系人)2.客房信息表(酒店名,客房號,狀態標記,客房等級ROclass(標準、單間、套房),價格)
3.顧客信息表(顧客編號,表單自動編號,顧客姓名,性別,證件類型,證件號,聯系電話,通訊地址,會員號)
4.員工信息表(員工號,員工姓名,密碼,加入時間,部門)
5.預訂表(自動編號,客房號, 顧客編號, 顧客姓名,客房類型,入住時間,離店時間,操作日期)
6.入住表(自動編號, 客房號, 顧客編號, 顧客姓名,客房類型,入住日期,退房日期,操作日期)
7.資金清算表(顧客編號, 顧客姓名,客房號,客房價格)
(二)概念結構設計
1.酒店信息
2.客房信息
3.顧客信息
4.員工信息
5.預定
6.入住
7.資金清算
(三)系統功能模塊圖
四、詳細設計
(一)建立表格
--0酒店信息表 createtableHotel(Hotel_idvarchar(8)ROhotelnamevarchar(8)Hotel_cityvarchar(8)Hotel_addressvarchar(8)Hotel_numbervarchar(8)Hotel_Attnvarchar(8)-1 客房信息表
createtable Room--客房信息表
(ROhotelnamevarchar(8)primary key--酒店名 ROnovarchar(8)primarykey,--客房號 ROflatchar(4)default'空房',--狀態標記
ROclassvarchar(20)notnull,--客房等級ROclass(豪華、標準、單間)ROdaypricemoney,--價格)
--2 顧客信息表 createtable Customs(CUnochar(8),CUnumintIDENTITY(1,1),--自動編號,--顧客編號,--觸發器回滾--利用存儲過程實現 CUnamevarchar(8),--顧客姓名 CUsexchar(4),--性別
CUtypechar(8)notnull,--證件類型 Cucardnochar(20)uniquenotnull,--證件號 CUphonevarchar(20)notnull,--聯系電話 CUaddressvarchar(40),--通訊地址 CUflatbitnotnull,--是否為會員 CUVIPnochar(8)defaultnull primarykey(CUno))
--3操作人員表 createtable
Operator
(OPnovarchar(20)primarykey,--員工號 OPnamechar(8),--員工姓名 OPpasschar(10),--密碼
OPdatesmalldatetime,--加入時間 OPdepartmentvarchar(30)--部門)--7預訂表
createtableBookroom
(BRplannointIDENTITY(1,1),--自動編號 ROnovarchar(8),--客房號 CUnochar(8), CUnamechar(8),ROclassvarchar(20),--客房等級
BRplanentertimedatetime,--預訂入住時間 BRleavetimedatetime,--離店時間
BRoper_datedatetime,--操作日期ROoper_date foreignkey(ROno)references room(ROno))--8入住表
createtableEnterroom(ERenternointIDENTITY(1,1),--自動編號 ROnovarchar(8), CUnochar(8), CUnamechar(8),ROclassvarchar(20),--客房等級 ERentertimedatetime,--入住時間 ERleavetimedatetime,--預離店時間
ERoper_datedatetime,--操作日期ROoper_date foreignkey(ROno)references room(ROno), foreignkey(OPno)references Operator(OPno))
--10資金清算表Zjqstable createtableZjqstable(ROnovarchar(8),--客房號 CUnochar(8),CUnamevarchar(8),--客人名稱 ROdaypricemoney,--價格 primarykey(ROno,CUno),foreignkey(ROno)references room(ROno), foreignkey(CUno)references Customs(CUno), foreignkey(ROdayprice)referencesRoom(ROdayprice))
--0 insertintoHotel values('001','Sun_hotel','Beijing','Chaoyang 001','010-56561212','Ms.Pan');insertintoHotel values('002','Moon_hotel ','Shanghai','Xuhui 002','021-51513636','Ms.Xia');insertintoHotel values('003','Venus_hotel','Shenzhen','Futian 003','0755-56789000','Ms.Zhu');insertintoHotel values('004','Jupiter_hotel','Guangzhou',Tianhe 004','020-52345678','Ms.Yang');insertintoHotel values('005','Mercury_hotel','Chengdu','Pixian 005','028-83189222','Ms.Chen');insertintoHotel values('006','Mars_hotel','Chongqing','Yubei 006','023-82167676','Mr.Yan');insertintoHotel values('007','Saturn_hotel','Xiamen','Jimei 007','0592-84296666','Mr.Wang');insertintoHotel values('008','Flower_hotel','Wuhan','Hanyang 008','027-88238230','Mr.Li');insertintoHotel values('009','Grass_hotel','Hangzhou','Yuhang 009','0571-56591280','Mr.Su');insertintoHotel values('010','Tree_hotel','Shijiazhuang','Xinhua 010','0311-80082088','Mr.Xu');--1
insertinto Room(ROno,ROclass,ROdayprice)values('101','豪華','500');insertinto Room(ROno,ROclass,ROdayprice)values('102','豪華','500');insertinto Room(ROno,ROclass,ROdayprice)values('103','豪華','500');insertinto Room(ROno,ROclass,ROdayprice)values('104','豪華','500');
insertinto Room(ROno,ROclass,ROdayprice)values('202','標準','300');
insertinto Room(ROno,ROclass,ROdayprice)values('203','標準','300');
insertinto Room(ROno,ROclass,ROdayprice)values('204','標準','300');
insertinto Room(ROno,ROclass,ROdayprice)values('205','標準','300');
insertinto Room(ROno,ROclass,ROdayprice)values('301','單間','100');
insertinto Room(ROno,ROclass,ROdayprice)values('302','單間','100');
insertinto Room(ROno,ROclass,ROdayprice)values('303','單間','100');
insertinto Room(ROno,ROclass,ROdayprice)values('304','單間','100');
insertinto Room(ROno,ROclass,ROdayprice)values('305','單間','100');
insertinto Room(ROno,ROclass,ROdayprice)values('306','單間','100');
--2
select*from Customs
insertinto Customs(CUno,CUname,CUsex,CUtype,Cucardno,CUphone,CUaddress,CUflat,CUVIPno)values('1','張三','男','身份證','030510923434','***','福州',1,'1');
insertinto Customs(CUno,CUname,CUsex,CUtype,Cucardno,CUphone,CUaddress,CUflat,CUVIPno)values('2','李四','男','身份證','030510923435','***','福州',0,null);--3
insertinto Operator values('00001','小紅','123456','2000-05-08 ','財務');insertinto Operator values('00002','小白','234567','1992-10-01 ','前臺');insertinto Operator values('00003','小黃','345678','2010-10-01 ','前臺');--7
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('101','1','張三','豪華', '2010/10/1','2010/10/10',getdate(),'00001');
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('102','2','李四','標準', '2010/10/2','2010/10/11',getdate(),'00002');
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('103','3','王五','單間', '2010/10/3','2010/10/12',getdate(),'00003');
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('104','4','顏宋','豪華', '2010/10/4','2010/10/10',getdate(),'00004');
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('105','5','李華','標準', '2010/10/5','2010/10/10',getdate(),'00005');
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('106','6','韓梅梅','豪華', '2010/10/6','2010/10/10',getdate(),'00006');
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('107','7','于耿耿','豪華', '2010/11/7','2010/11/12',getdate(),'00007');
insertinto bookroom(ROno,Cuno,CUname,Rolevel,BRplanentertime,BRleavetime,BRoper_date,OPno)values('108','8','譚森','標準', '2010/11/8','2010/11/13',getdate(),'00008');--8
insertintoenterroom(ROno,CUno,CUname,ROclass,ERentertime,ERleavetime,ERoper_date)values('101','1','張三,'豪華','2010/10/1','2010/10/10','2010/10/1');
insertintoenterroom(ROno,CUno,CUname,ROclass,ERentertime,ERleavetime,ERoper_date)values('102','2','李四','標準','2010/10/2','2010/10/11' ,'2010/10/1');
insertintoenterroom(ROno,CUno,CUname,ROclass,ERentertime,ERleavetime,ERoper_date)values('103','3','王五','單間','2010/10/3','2010/10/12' ,'2010/10/1');
insertintoenterroom(ROno,CUno,CUname,ROclass,ERentertime,ERleavetime,ERoper_date)values('104','4','顏宋','豪華','2010/10/4','2010/10/10' ,'2010/10/1');
insertintoenterroom(ROno,CUno,CUname,ROclass,ERentertime,ERleavetime,ERoper_date)values('105','5','李華','標準','2010/10/5','2010/10/10' ,'2010/10/1');
insertintoenterroom(ROno,CUno,CUname,ROclass,ERentertime,ERleavetime,ERoper_date)values('106','6','韓梅梅','豪華','2010/10/6','2010/10/10' ,'2010/10/1');
insertintoenterroom(ROno,CUno,CUname,ROclass,ERentertime,ERleavetime,ERoper_date)values('107','7','于耿耿','豪華','2010/11/7','2010/11/12' ,'2010/10/1');
(二)
第四篇:SQL數據庫實驗報告 實驗二
實驗2SQL Server數據庫的管理
1.實驗目的(1)了解SQL Server 數據庫的邏輯結構和物理結構的特點。
(2)掌握使用SQL Server管理平臺對數據庫進行管理的方法。
(3)掌握使用Transact-SQL語句對數據庫進行管理的方法。
2.實驗內容及步驟
(1)在SQL Server管理平臺中創建數據庫。
① 運行SQL Server管理平臺,在管理平臺的對象資源管理器中展開服務器。
② 右擊“數據庫”項,在快捷菜單中選擇“新建數據庫”菜單項。在新建數據庫對話框的數據庫名稱文本框中輸入學生管理數據庫名studentsdb,單擊“確定”按鈕。
(2)選擇studentsdb數據庫,在其快捷菜單中選擇“屬性”菜單項,查看“常規”、“文件”、“文件組”、“選項”、“權限”和“擴展屬性”等頁面。
(3)打開studentsdb數據庫的“屬性”對話框,在“文件”選項卡中的數據庫文件列表中修改studentsdb數據文件的“分配的空間”大小為2MB。指定“最大文件大小”為5MB。修改studentsdb數據庫的日志文件的大小在每次填滿時自動遞增5%。
(4)單擊“新建查詢”打開查詢設計器窗口,在查詢設計器窗口中使用Transact-SQL語句CREATE DATABASE創建studb數據庫。然后通過系統存儲過程sp_helpdb查看系統中的數據庫信息。
(5)在查詢設計器中使用Transact-SQL語句ALTER DATABASE修改studb數據庫的設置,指定數據文件大小為5MB,最大文件大小為20MB,自動遞增大小為1MB。
(6)在查詢設計器中為studb數據庫增加一個日志文件,命名為studb_Log2,大小為5MB,最大文件大小為10MB。
(7)使用SQL Server管理平臺將studb數據庫的名稱更改為student_db。
(8)使用Transact-SQL語句DROP DATABASE刪除student_db數據庫。
3.實驗思考
(1)數據庫中的日志文件是否屬于某個文件組?
(2)數據庫中的主數據文件一定屬于主文件組嗎?
(3)數據文件和日志文件可以在同一個文件組嗎?為什么?
(4)刪除了數據庫,其數據文件和日志文件是否已經刪除?是否任何人都可以刪除數據庫?
(5)能夠刪除系統數據庫嗎?
第五篇:Oracle數據庫 圖書管理系統實驗報告
圖書管理系統(Oracle)
1、創建表空間student_library
2、(1)創建表Administrator
(2)創建表library
(3)創建表student
(4)創建表lent_library
(5)創建表booktype
3、(1)創建表空間student_library
create tablespace student_library datafile 'C:oracleproduct10.2.0oradataorclstudent_library' size 100M autoextend on;
(2)創建表Administrator create table Administrator(AdministratorID number(20)primary key,AdministratorName varchar2(25),sex varchar2(5),beizhu varchar2(30),bookID varchar2(20), foreign key(bookID)references library(bookID))tablespace student_library;
向Administrator表插入數據 insert into Administrator values(100421101,'張三','男',' ',100421)insert into Administrator values(100421102,'李四','女',' ',100422)insert into Administrator values(100421103,'王五','男',' ',100423)對Administrator表刪除數據
delete from Administrator where AdministratorID=100421103 ——刪除Administrator表中管理員編號為‘100421103’的一行數據 對Administrator表查詢數據
select * from Administrator order by AdministratorID ——按照管理員的ID號對Administrator表進行排列 向Administrator表修改數據
update Administrator set AdministratorName=‘王明’where AdministratorID=100421101 ——對Administrator表中管理員編號為‘100421101’的姓名改為“王明” update Administrator set sex=‘女’where AdministratorID=100421103 ——對Administrator表中管理員編號為‘100421103’的性別改為“女”(3)創建表library create table library(bookID number(20)primary key,bookName varchar2(20),author varchar2(10),press varchar2(20),publishDate varchar2(50),price number(20),leibienumber number(20),state varchar2(8),studentID number(20),foreign key(studentID)references student(studentID))tablespace student_library;
向library表插入數據 insert into library
values(100421,'Oracle數據庫管理','馬曉玉','清華大學出版社','2011-11-8',40,'013999',' ',100421203)insert into library
values(100422,'ASP.NET網站設計','唐慧','南京大學出版社','2011-5-18',32,'165923',' ',100421205)insert into library
values(100423,'JavaScript程序設計','徐元','蘇州大學出版社','2011-2-12',28,'265894',' ',100421207)對library表刪除數據
delete from library where bookID=100422 ——刪除library表中書籍編號為‘100422’的一行數據 向library表查詢數據
select bookID,bookName,author,press,publishDate,price from library order by bookID ——查詢library表中的bookID,bookName,author,press,publishDate,price的數據根據書籍的編號進行排序
向library表修改數據
update library set author=‘張敏’where bookID=100422 ——對library表中書籍編號為‘100422’的作者改為“張敏”
(4)創建表student create table student(studentID number(20)primary key,studentName varchar2(50),sex varchar2(2),department varchar2(10),studentPhone number(15),borrowID number(20),password number(10))tablespace student_library;
向student表插入數據 insert into student values(100421203,'王逸','男','信電系','***','123456','521568')insert into student values(100421205,'劉娟','女','食品系','***','256302','269756')insert into student values(100421207,'張一凡','男','園林園藝系','***','687456','305621')對student表刪除數據
delete from student where studentName=‘張一凡’
——刪除student表中學生姓名為‘張一凡’的一行數據 向student表修改數據
update student set department=‘經貿系’where studentID=100421205 ——對student表中學生學號為‘100421205’的系部名稱改為“經貿系”
(5)創建表lent_library create table lent_library(lentID number(20)primary key,bookID number(20),borrowbookID number(20),borrowDate varchar2(50),borrowState varchar2(30),foreign key(bookID)references library(bookID))tablespace student_library;
向lent_library表插入數據 insert into lent_library values(12345,'100421','1360','2012-3-15','還未歸還')insert into lent_library values(21350,'100422','2035','2012-1-6','已經歸還')insert into lent_library values(13056,'100423','1503','2012-3-22','還未歸還')向lent_library表刪除數據 delete from lent_library where bookID=‘100423’
——刪除lent_library表中書籍編號為‘100423’的一行數據 向lent_library表查詢數據
select lentID,bookID,borrowbookID,borrowState from lent_library where bookID=‘10042%’ ——查詢lent_library表中的lentID,bookID,borrowbookID,borrowState數據根據書籍編號前五位數位‘10042’進行排序
(6)創建表booktype create table booktype(Leibienumber number(20)primary key,booktype varchar2(20))tablespace student_library;
向booktype表插入數據 insert into booktype values('4630','文學類')insert into booktype values('1623','科普類')insert into booktype values('2412','理工科類')向booktype表刪除數據
delete from booktype where leibienumber=‘1623’
——刪除booktype表中類別編號為‘1623’的一行數據 向booktype表修改數據
update booktype set booktype=‘計算機類’where leibienumber=‘2412’ ——對booktype表中類別編號為‘2412’的書籍類型改為“計算機類”
4、(1)創建索引
【1】create index AdministratorID _index on Administrator(AdministratorID)tablespace users;
—在Administrator表的AdministratorID列創建一個名為Aid_index的索引
【2】create bitmap index studentName_index on student(studentName)tablespace users;—在student表的學生姓名列上創建位圖索引
(2)創建視圖
create or replace view view_library as select bookID,bookName,author,press,publishDate,price from library;—創建視圖view_library,查詢library表中的bookID,bookName,author,press,publishDate,price
5、(1)創建匿名塊
set serveroutput on declare out_text varchar2(50);begin out_text:='程序塊示例';dbms_output.put_line(out_text);exception when others then dbms_output.put_line('捕獲一個異常');end;
(2)創建存儲過程
create or replace procedure InsertAdministrator as begin insert into Administrator(AdministratorID,administratorName,sex)values(100421105,'李凡','男');exception when dup_val_on_index then
dbms_output.put_line('重復的編號');when others then
dbms_output.put_line('發生其他錯誤!');end InsertAdministrator;—創建一個存儲過程InsertAdministrator,向Administrator表的AdministratorID,administratorName和sex列分別插入數據100421105,李凡和男三個值。
(3)創建函數
create or replace function Factorial(n in number)return number as result number: =1;begin for i in 1...n loop result: =result*i;end loop;return(result);end Factorial;(4)創建觸發器 create table student_log(studentID number(20),studentName varchar2(50),sex varchar2(2),department varchar2(10));—創建一個日志表,記錄對student表所做的修改,日志表名為student_log create or replace trigger insertlog_trigger after insert on student begin insert into student_log values(100421230,'路奇', '女', '園林系');end;—在student表上創建一個語句級Insert觸發器
6、用戶權限和角色管理
(1)創建用戶user_student create user user_student identified by student default tablespace student_library
(2)為用戶user_student設置系統權限 grant create session to user_student;
(3)為用戶user_student撤銷系統權限
revoke create session from user_student;
(4)創建角色user_library
create role user_library identified by student
(5)為角色user_library授予權限
grant user_library to public;
(6)啟用角色user_library
set role user_library identified by student