欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告6-13[精選]

      時(shí)間:2019-05-12 13:35:15下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫小編為你整理了多篇相關(guān)的《數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告6-13[精選]》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告6-13[精選]》。

      第一篇:數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告6-13[精選]

      數(shù)據(jù)庫實(shí)驗(yàn)六至十二實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)日志六

      指導(dǎo)教師 祝家鈺

      實(shí)驗(yàn)時(shí)間: 2015 年 4月 27日 學(xué)院

      計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 專業(yè)

      計(jì)算機(jī)與智能科學(xué)大類

      班級(jí)

      0401410 學(xué)號(hào)

      2014211727姓名 周泓源實(shí)驗(yàn)室 s331

      實(shí)驗(yàn)題目:

      SQL語言數(shù)據(jù)查詢語言DQL 實(shí)驗(yàn)?zāi)康模?/p>

      數(shù)據(jù)查詢語言指對(duì)數(shù)據(jù)庫中的數(shù)據(jù)查詢、統(tǒng)計(jì)、分組、排序等操作。查詢語句可以分為簡(jiǎn)單查詢、連接查詢、嵌套查詢和組合查詢等。

      本次實(shí)驗(yàn)了解SQL語言的SELECT語句對(duì)數(shù)據(jù)的查詢,學(xué)會(huì)在Navicat for MySQL中用SELECT語句對(duì)表中的數(shù)據(jù)進(jìn)行簡(jiǎn)單查詢、連接查詢、嵌套查詢和組合查詢。

      實(shí)驗(yàn)內(nèi)容:(敘述自己編寫的程序)

      1、用Create Table建立Student表。

      CREATE TABLE Student(SNO VARCHAR(20), Name VARCHAR(10), Age INTEGER, College VARCHAR(30))

      2、用Create Table建立Course表: CREATE TABLE Course(CourseID VARCHAR(15), CourseName VARCHAR(30), CourseBeforeID VARCHAR(15))

      3、用Create Table建立Choose CREATE TABLE Choose(SNO VARCHAR(20), CourseID VARCHAR(30), Score DECIMAL(5,2))

      4、用INSERT語句向Student表中插入3個(gè)元組: 1)INSERT INTO Student VALUES('S00001', '張三', 20, '計(jì)算機(jī)學(xué)院')2)INSERT INTO Student VALUES('S00002', '李四', 19, '通信學(xué)院')3)INSERT INTO Student VALUES('S00003', '王五', 21, '計(jì)算機(jī)學(xué)院')

      5、用INSERT語句向Course表中插入3個(gè)元組: 1)INSERT INTO Course VALUES('C1', '計(jì)算機(jī)引論', NULL)2)INSERT INTO Course VALUES('C2', 'C語言', 'C1')3)INSERT INTO Course VALUES('C3', '數(shù)據(jù)結(jié)構(gòu)', 'C2')

      6、用INSERT語句向Choose表中插入7個(gè)元組 1)INSERT INTO Choose VALUES('S00001', 'C1', 95)2)INSERT INTO Choose VALUES('S00001', 'C2', 80)3)INSERT INTO Choose VALUES('S00001', 'C3', 84)4)INSERT INTO Choose VALUES('S00002', 'C1', 80)5)INSERT INTO Choose VALUES('S00002', 'C2', 85)6)INSERT INTO Choose VALUES('S00003', 'C1', 78)7)INSERT INTO Choose VALUES('S00003', 'C3', 70)

      7、用SELECT語句,查詢計(jì)算機(jī)學(xué)院

      SELECT SNO,Name FROM Student where college = '計(jì)算機(jī)學(xué)院'

      8、用SELECT語句的between…and…表示查詢條件,查詢年齡在20~23歲的學(xué)生 SELECT * FROM Student where Age BETWEEN 20 and 30

      9、用SELECT語句的COUNT()聚集函數(shù),統(tǒng)計(jì)Student表中學(xué)生總?cè)藬?shù)。SELECT COUNT(*)FROM Student

      10、分別用SELECT語句的max()、min()、sum()、avg()四個(gè)聚集函數(shù),計(jì)算Choose表中C1.1)SELECT MAX(Score)FROM choose GROUP BY CourseID HAVING CourseID = 'C1' 2)SELECT MIN(Score)FROM choose GROUP BY CourseID HAVING CourseID = 'C1' 3)SELECT SUM(Score)FROM choose GROUP BY CourseID HAVING CourseID = 'C1' 4)SELECT AVG(Score)FROM choose GROUP BY CourseID HAVING CourseID = 'C1'

      11、用SELECT語句對(duì)空值(NULL)的判斷條件,查詢Course表中先修課稱編號(hào)為空值的課程編號(hào)和課程名稱

      SELECT CourseID,CourseName FROM Course where CourseBeforeID is NULL

      12、用SELECT語句的連接查詢,查詢學(xué)生的學(xué)號(hào)、姓名、選修的課程以及成績(jī)。SELECT Student.SNO,Name,CourseName,Score FROM Student,Choose,Course where Student.SNO = Choose.SNO AND Course.CourseID=Choose.CourseID

      13、用SELECT的存在量詞EXISTS,查詢與“張三”在同一個(gè)學(xué)院學(xué)習(xí)的學(xué)生信息。SELECT * FROM Student WHERE college =(select college from Student where name='張三')AND EXISTS(SELECT * FROM Student WHERE name='張三')

      14、用SELECT語句的嵌套查詢,查詢選修C1課程的成績(jī)低于“張三”的學(xué)生的學(xué)號(hào)和成績(jī)。

      SELECT SNO,Score FROM Choose WHERE CourseID='C1'

      AND Score <(select score FROM choose,student WHERE choose.SNO=Student.SNO AND name = '張三' AND CourseID='C1')

      15、用SELECT語句的組合查詢(UNION),查詢選修了C1課程或者選修了C3課程的學(xué)生學(xué)號(hào)。

      SELECT SNO FROM Choose WHERE CourseID='C1' UNION SELECT SNO FROM Choose Where CourseID='C3'

      16、用SELECT語句的組合查詢(UNION)與DISTINCT短語,查詢選修了C1課程或者選修了C3課程的學(xué)生學(xué)號(hào),并取消重復(fù)的數(shù)據(jù)。SELECT DISTINCT SNO FROM Choose WHERE CourseID='C1' UNION SELECT DISTINCT SNO FROM Choose Where CourseID='C3' 遇到的問題及解決:(程序編寫調(diào)試過程中出現(xiàn)的錯(cuò)誤及解決方法)

      Sql查詢語句的不熟悉,以及語法上的一些錯(cuò)誤,經(jīng)過查詢和詢問進(jìn)行了改正。

      心得體會(huì):

      通過本次實(shí)驗(yàn)了解了SQL語言的SELECT語句對(duì)數(shù)據(jù)的查詢,學(xué)會(huì)了在Navicat for MySQL中用SELECT語句對(duì)表中的數(shù)據(jù)進(jìn)行簡(jiǎn)單查詢、連接查詢、嵌套查詢和組合查詢。

      實(shí)驗(yàn)日志七

      指導(dǎo)教師

      祝家鈺

      實(shí)驗(yàn)時(shí)間:

      2016 年

      5月4日 學(xué)院

      計(jì)算機(jī)

      專業(yè)

      智能科學(xué)大類

      班級(jí)

      0401410

      學(xué)號(hào)

      2014211727

      姓名

      周泓源

      實(shí)驗(yàn)室

      s331

      實(shí)驗(yàn)題目

      DQL補(bǔ)充倉庫管理系統(tǒng)實(shí)驗(yàn)日志

      實(shí)驗(yàn)?zāi)康模?/p>

      加強(qiáng)對(duì)DQL語句的使用

      實(shí)驗(yàn)內(nèi)容:

      倉庫管理系統(tǒng)需求完成功能主要有以下幾點(diǎn):

      1、倉庫管理各種信息的輸入,包括入庫、出庫、需求信息等的輸入等。。。

      2、倉庫管理各種信息的查詢、修改和維護(hù);

      3、設(shè)備采購(gòu)報(bào)表的生成;

      4、在庫存管理中加入最高儲(chǔ)備和最低設(shè)備字段,對(duì)倉庫中的物資設(shè)備實(shí)現(xiàn)監(jiān)控和報(bào)警 設(shè)備表(設(shè)備號(hào)、設(shè)備名稱)

      設(shè)備入庫(設(shè)備號(hào)、入庫時(shí)間、供應(yīng)商、供應(yīng)商電話、入庫數(shù)量、價(jià)格、采購(gòu)員)

      設(shè)備出庫(設(shè)備號(hào)、使用部門、出庫時(shí)間、出庫狀況、經(jīng)手人、出庫數(shù)量、領(lǐng)取人、用途)現(xiàn)有庫存表(設(shè)備號(hào)、現(xiàn)有庫存總數(shù)、最大庫存、最小庫存)

      部門需求表(設(shè)備號(hào)、部門名稱、需要數(shù)量、需求開始時(shí)間、需求結(jié)束時(shí)間)

      設(shè)備采購(gòu)計(jì)劃表(設(shè)備號(hào)、現(xiàn)有總庫存數(shù)、最大庫存、購(gòu)買數(shù)量、供應(yīng)商、價(jià)格、計(jì)劃采購(gòu)時(shí)間)要求:

      1、倉庫設(shè)備可自己設(shè)定(比如 郵電大學(xué)資產(chǎn)處的倉庫,倉庫里有各種型號(hào)電腦)

      2、定義基礎(chǔ)表(表結(jié)構(gòu)里面的數(shù)據(jù)類型自己定義)

      3、給表里面輸入一些基礎(chǔ)數(shù)據(jù)(自己設(shè)定)

      4、查詢倉庫里面設(shè)備的總類型量

      5、查詢倉庫某一入庫時(shí)間(某一天)的所有入庫設(shè)備

      6、查詢倉庫的設(shè)備出庫某一領(lǐng)取人(可模糊查詢)在某一出庫時(shí)間范圍的設(shè)備情況

      7、查詢出現(xiàn)有庫存表中已經(jīng)是小于等于最小庫存的設(shè)備號(hào)及名稱,以準(zhǔn)備采購(gòu)。

      8、查詢某一部門需求的某一設(shè)備在庫存里面是否夠該部門需求數(shù)量?

      9、根據(jù)某一設(shè)備庫存總數(shù)已經(jīng)低于最小庫存數(shù)量警戒線的設(shè)備和最大庫存的上限,并自動(dòng)

      查詢生成出該設(shè)備的設(shè)備采購(gòu)計(jì)劃表(包括采購(gòu)計(jì)劃表的設(shè)備號(hào)、現(xiàn)有總庫存數(shù)、最大庫存、該購(gòu)買數(shù)量的信息)

      2、源碼:

      CREATE TABLE PCin(PCid INTEGER NOT NULL, TimeIN VARCHAR(20)NOT NULL PRIMARY KEY, Sup VARCHAR(20), SupTel VARCHAR(20), NumIN INTEGER, Price DOUBLE(10,2), buyer VARCHAR(20))

      CREATE TABLE PCout(PCid INTEGER NOT NULL, Department VARCHAR(20), TimeOut VARCHAR(20)NOT NULL PRIMARY KEY, NumOut INTEGER, UsePerson VARCHAR(20), HowUse VARCHAR(20), PCstate VARCHAR(20))

      CREATE TABLE Stock(PCid INTEGER NOT NULL PRIMARY KEY, SUM INTEGER, MAX INTEGER, MIN INTEGER)

      CREATE TABLE req(PCid INTEGER NOT NULL, Department VARCHAR(20), ReqNum INTEGER, ReqDateStart VARCHAR(20), ReqDateEnd VARCHAR(20))

      CREATE TABLE BuyPCPlan(PCid INTEGER NOT NULL, SUM INTEGER, MAX INTEGER, BuyNum INTEGER, Sup VARCHAR(20), Price DOUBLE(5,2), BuyPlanDate VARCHAR(20)NOT NULL PRIMARY KEY)

      3、給表里面輸入一些數(shù)據(jù)

      4、Buypcplan表:

      Pc表:

      Pcin表:

      Pcout表:

      Req表:

      Stock表:

      4、查詢倉庫里面設(shè)備的總類型量 源碼:

      SELECT count(*)FROM pc;

      5、查詢倉庫某一入庫時(shí)間(某一天)的所有入庫設(shè)備(2016-5-02為例)源碼:

      SELECT PCName FROM pc WHERE PCid IN(SELECT PCid FROM pcin where TimeIN='2016-5-02');

      6、查詢倉庫的設(shè)備出庫某一領(lǐng)取人(可模糊查詢)在某一出庫時(shí)間范圍的設(shè)備情況(2016年5月)源碼: SELECT PCstate FROM pcout WHERE TimeOut LIKE “2016-5-%”;

      7、查詢出現(xiàn)有庫存表中已經(jīng)是小于等于最小庫存的設(shè)備號(hào)及名稱,以準(zhǔn)備采購(gòu)。源碼:

      SELECT pc.* FROM stock,pc WHERE stock.PCid=pc.PCid AND SUM<=MIN;

      8、查詢某一部門需求的某一設(shè)備在庫存里面是否夠該部門需求數(shù)量。通過比較庫存數(shù)量(SUM)和需求數(shù)量(ReqSum)源碼:

      SELECT req.Department,stock.SUM,req.ReqNum FROM stock,req WHERE stock.PCid=req.PCid;

      9、根據(jù)某一設(shè)備庫存總數(shù)已經(jīng)低于最小庫存數(shù)量警戒線的設(shè)備和最大庫存的上限,并自動(dòng)

      查詢生成出該設(shè)備的設(shè)備采購(gòu)計(jì)劃表 源碼:

      SELECT buypcplan.PCid,buypcplan.SUM,buypcplan.MAX,buypcplan.BuyNum

      FROM buypcplan,stock WHERE stock.PCid=buypcplan.PCid AND stock.SUM < stock.MIN;

      遇到的問題及解決:

      對(duì)于有些邏輯上的問題需要一定的理解,并且對(duì)sql語句有一定的不熟悉。通過看書詢問進(jìn)行解決。

      心得體會(huì): 對(duì)于語句的使用要一步步的探索,不能盲目使用,根據(jù)這些表的關(guān)系以及題目的要求對(duì)這些sql語句再來進(jìn)行使用。通過這次實(shí)驗(yàn)了解了sql語句的具體應(yīng)用以及sql語句的強(qiáng)大。

      實(shí)驗(yàn)日志八

      指導(dǎo)教師

      祝家鈺

      實(shí)驗(yàn)時(shí)間:

      2016 年

      5月 11 日 學(xué)院

      計(jì)算機(jī)

      專業(yè)

      智能科學(xué)大類

      班級(jí)

      0401410

      學(xué)號(hào)

      2014211727

      姓名

      周泓源

      實(shí)驗(yàn)室

      s331

      實(shí)驗(yàn)題目:

      MySQL的存儲(chǔ)過程 實(shí)驗(yàn)?zāi)康模?/p>

      存儲(chǔ)過程是一組為了完成特定功能的SQL語句集,經(jīng)編譯后存儲(chǔ)在數(shù)據(jù)庫中。存儲(chǔ)過程分為兩類:1.系統(tǒng)提供的存儲(chǔ)過程;2.用戶自定義存儲(chǔ)過程。

      存儲(chǔ)過程具有的優(yōu)點(diǎn):1.存儲(chǔ)過程允許標(biāo)準(zhǔn)組件式編程;2.存儲(chǔ)過程能夠?qū)崿F(xiàn)較快的執(zhí)行速度;3.存儲(chǔ)過程能夠減少網(wǎng)絡(luò)流量;4.存儲(chǔ)過程可被作為一種安全機(jī)制來充分利用。存儲(chǔ)過程是可復(fù)用的組件!想象一下如果你改變了主機(jī)的語言,這對(duì)存儲(chǔ)過程不會(huì)產(chǎn)生影響,因?yàn)樗菙?shù)據(jù)庫邏輯而不是應(yīng)用程序。存儲(chǔ)過程是可以移植的!

      本次實(shí)驗(yàn)了解MySQL存儲(chǔ)過程的創(chuàng)建、修改和刪除的方法和步驟,掌握在Navicat for MySQL中對(duì)存儲(chǔ)過程的進(jìn)行創(chuàng)建、修改和刪除,掌握在MySQL Command Line Client調(diào)用參數(shù)和不帶參數(shù)的存儲(chǔ)過程。

      實(shí)驗(yàn)內(nèi)容:(敘述自己編寫的程序)

      1.啟動(dòng)Navicatfor MySQL,在MySQL –新建連接中完成連接參數(shù)配置。2.登錄到本地?cái)?shù)據(jù)庫服務(wù)器后,連接到db5536數(shù)據(jù)庫上。

      Use db5536

      DELIMITER //

      3.執(zhí)行

      五、教學(xué)過程中

      (三)實(shí)驗(yàn)內(nèi)容的1部分的(2)、(3)步驟創(chuàng)建及調(diào)用不帶參數(shù)的存儲(chǔ)過程,驗(yàn)證不帶參數(shù)的存儲(chǔ)過程和調(diào)用方法。

      Create procedure first_p()Select 'Hello MySQL,This is my first procedure ' //

      Create procedure second_p()Select current_date from cqupt //

      CALL first_p()//

      CALL second_p()//

      4.在步驟3的基礎(chǔ)上,創(chuàng)建存儲(chǔ)過程third_p(),顯示表cqupt中的數(shù)據(jù),并對(duì)其進(jìn)行調(diào)用測(cè)試。

      Create procedure third_p()Select * from cqupt //

      CALL third_p()//

      5.執(zhí)行

      五、教學(xué)過程中

      (三)實(shí)驗(yàn)內(nèi)容的第2部分創(chuàng)建及調(diào)用帶參數(shù)的存儲(chǔ)過程,驗(yàn)證帶參數(shù)的存儲(chǔ)過程的創(chuàng)建和調(diào)用方法。

      CREATE PROCEDURE simpleproc(OUT param1 INT)SELECT COUNT(*)INTO param1 FROM cqupt //

      CREATE PROCEDURE simpleproc1(IN param1 INT)SET @x = param1-100 //

      CALL simpleproc(@a)// Select @a//

      CALL simpleproc1(5500)// Select @x//

      6.在步驟5的基礎(chǔ)上,創(chuàng)建存儲(chǔ)過程simpleproc2(),對(duì)傳入?yún)?shù)進(jìn)行乘以10的處理,變量定義@x,并對(duì)其進(jìn)行調(diào)用測(cè)試。

      CREATE PROCEDURE simpleproc2(IN param1 INT)SET @x = param1 * 10 //

      CALL simpleproc2(50)// Select @a//

      CALL simpleproc2(0)// Select @a//

      7.用Drop Procedure語句刪除存儲(chǔ)過程first_p。drop procedure first_p//

      遇到的問題及解決:(程序編寫調(diào)試過程中出現(xiàn)的錯(cuò)誤及解決方法)

      對(duì)語句的理解不夠透徹,以及在實(shí)驗(yàn)中經(jīng)常出現(xiàn)一些低級(jí)錯(cuò)誤,通過仔細(xì)閱讀指導(dǎo)書進(jìn)行解決。

      心得體會(huì):通過本次實(shí)驗(yàn),很好了解了MySQL的存儲(chǔ)過程的創(chuàng)建、修改和刪除的方法和步驟

      對(duì)其存儲(chǔ)過程有了一定的了解,同時(shí)掌握了在MySQL Command Line Client調(diào)用參數(shù)和不帶參數(shù)的存儲(chǔ)過程。對(duì)其也有了一定了解。

      實(shí)驗(yàn)日志九

      指導(dǎo)教師

      祝家鈺

      實(shí)驗(yàn)時(shí)間:

      2016 年

      5月 18 日 學(xué)院

      計(jì)算機(jī)

      專業(yè)

      智能科學(xué)大類

      班級(jí)

      0401410

      學(xué)號(hào)

      2014211727

      姓名

      周泓源

      實(shí)驗(yàn)室

      s331

      實(shí)驗(yàn)題目:

      MySQL 應(yīng)用開發(fā)環(huán)境的建立

      實(shí)驗(yàn)?zāi)康模?/p>

      通過在 Windows平臺(tái)下,搭建 Apache Httpd Web 服務(wù)器,PHP 腳本支持,訪問 MySQL 數(shù)據(jù)庫等,學(xué)習(xí)了解 MySQL 應(yīng)用開發(fā)環(huán)境的建立過程。

      本次實(shí)驗(yàn)通過安裝 Apache HTTD Server 2.2、PHP 5.3.28,配置 httpd.conf 和 PHP.ini 文件,完成 MySQL 的 PHP 應(yīng)用開發(fā)環(huán)境的建立。實(shí)驗(yàn)內(nèi)容:(敘述自己編寫的程序)

      1.安裝 Apache httpd 服務(wù)器

      2.安裝 MySQL 數(shù)據(jù)庫服務(wù)器

      MySQL 數(shù)據(jù)庫服務(wù)器安裝已經(jīng)完成。3.php5.3.28 安裝

      在httpd.conf 文件最后面添加如下代碼,并保存文件。PHPIniDir “D:/php5.3.28” LoadModule php5_module “D:/php5.3.28/php5apache2_2.dll” AddType application/x-httpd-php.php.html 語句功能:使apache服務(wù)器支持php文件解析

      將 剛 剛 查 找 到 的 extension_dir 前 面 的 ; 去 掉,并 將 其 設(shè) 置 為 extension_dir=“D:/php5.3.28/ext”。語句功能:使用此版本的php。

      保存 php.ini 文件,點(diǎn)擊右下角,找到 Apache 2.2 圖標(biāo),單擊右鍵,選擇 Open Apache Monitor,出現(xiàn) Apache Service Monitor 對(duì)話框,點(diǎn)擊 Restart 按鈕重啟 Apache 讓剛剛修改的配置生效,或者在前面的命令行窗口中,輸入 httpd –k restart 回車,重新啟動(dòng) Apache http 服務(wù)。如果有錯(cuò)誤,根據(jù)錯(cuò)誤 信息對(duì)前面的配置文件進(jìn)行修改。

      用記事本建立 php 測(cè)試文件 phpinfo.php,將起放置到 Apache Httpd 的文件目 錄 C:Program Files(x86)Apache Software FoundationApache2.2htdocs 下,phpinfo.php 內(nèi)容如下 重啟兩次apache 結(jié)果:在瀏覽器中打開 http://localhost:8080/phpinfo.php

      此時(shí),Apache 已經(jīng)支持 PHP 和mysql了。

      用記事本建立 php 測(cè)試文件 mysqlconn.php,將起放置到 Apache Httpd 的文件 目 錄 C:Program Files(x86)Apache Software FoundationApache2.2htdocs下,mysqlconn.php 內(nèi)容如下: 語句的功能:

      定義一個(gè)myconn變量,用if語句進(jìn)行判斷,如果連接成功則輸出數(shù)據(jù)庫連接成功!可以申請(qǐng)老師檢查!結(jié)果:

      遇到的問題及解決:(程序編寫調(diào)試過程中出現(xiàn)的錯(cuò)誤及解決方法)

      安裝過程出現(xiàn)了一些問題,因?yàn)橹半娔X上有,但是還是需要重新配置,所以通過重新配置環(huán)境,使得實(shí)驗(yàn)完成。

      心得體會(huì):

      通過本次實(shí)驗(yàn)完成 MySQL 的 PHP 應(yīng)用開發(fā)環(huán)境的建立,了解了MySQL 應(yīng)用開發(fā)環(huán)境的建立過程。

      實(shí)驗(yàn)日志十

      指導(dǎo)教師

      祝家鈺

      實(shí)驗(yàn)時(shí)間:

      2016 年

      5月 25 日 學(xué)院

      計(jì)算機(jī)

      專業(yè)

      智能科學(xué)大類

      班級(jí)

      0401410

      學(xué)號(hào)

      2014211727

      姓名

      周泓源

      實(shí)驗(yàn)室

      s331

      實(shí)驗(yàn)題目:

      MySQL應(yīng)用開發(fā)環(huán)境的建立(C/S)

      實(shí)驗(yàn)?zāi)康模?/p>

      在Windows平臺(tái)下,通過JDBC連接MySQL數(shù)據(jù)庫,編寫java程序?qū)?shù)據(jù)庫操作,學(xué)習(xí)了解C/S模式下的MySQL應(yīng)用開發(fā)

      實(shí)驗(yàn)內(nèi)容:(敘述自己編寫的程序)

      1.下載mysql-connector-java并且解壓到d盤。2.建立student表并填入數(shù)據(jù)

      語句如下:

      CREATE table student(sno char(7)NOT NULL, sname VARCHAR(8)not NULL, sex char(2)NOT NULL);INSERT INTO student(sno,sname,sex)VALUES('S0001','張三','男');INSERT INTO student(sno,sname,sex)VALUES('S0002','李四','男');INSERT INTO student(sno,sname,sex)VALUES('S0003','王五','男');這樣便有了一個(gè)表:

      3.配置JDBC 運(yùn)行eclipse,從菜單中選擇“Windows—>Preferences” 從左邊的展開“Java”項(xiàng),選中“Installed JREs” 選中表格中已安裝的JRE 點(diǎn)擊“Edit”按鈕,出現(xiàn)“Edit JRE”窗口 點(diǎn)擊“Add External JARs”按鈕,出現(xiàn)“Jar Selection”窗口,在解壓mysql-connector-java-5.1.38.zip的目錄中找到

      mysql-connector-java-5.1.38-bin.jar,并點(diǎn)擊“打開 點(diǎn)擊“Finish”按鈕完成添加 4.編寫java程序

      在eclipse中新建一個(gè)Java Project輸入Project名稱“JDBCTest” 選中已建立的Project“JDBCTest”,點(diǎn)擊右鍵,在JDBCTest中新建一個(gè)類輸入類名“JDBCTest” 在“JDBCTest.java”中輸入程序 程序如下:

      package jDBCTest;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;

      publicclass JDBCTest {

      publicstaticvoid main(String[] args){

      // TODO Auto-generated method stub try{ Class.forName(“com.mysql.jdbc.Driver”);String url=“jdbc:mysql://127.0.01:3306/test”;

      String user=“root”;String passwd = “mysql”;Connection if(!connection.isClosed())System.out.println(“Succeeded connection to the connection=DriverManager.getConnection(url,user,passwd);Databash”);

      } } 運(yùn)行結(jié)果:Statement statement=connection.createStatement();String sql=“select * from student”;ResultSet rs = statement.executeQuery(sql);System.out.println(“學(xué)號(hào)”+“t”+“姓名”);String name = null;while(rs.next()){ name = rs.getString(“sname”);System.out.println(rs.getString(“sno”)+“t”+name);} rs.close();connection.close();}catch(ClassNotFoundException e){ System.out.println(“Sorry,can't find the Driver!”);e.printStackTrace();}catch(SQLException e){ e.printStackTrace();}catch(Exception e){ e.printStackTrace();}

      修改java程序?qū)崿F(xiàn)對(duì)student表中數(shù)據(jù)的增加和刪除。對(duì)java中的sql語句進(jìn)行修改,添加一個(gè)插入語句。

      String sql=“INSERT INTO student(sno,sname,sex)VALUES('S0004','楊鑫磊','男')”;

      statement.executeUpdate(sql);sql=“select * from student”;ResultSet rs=statement.executeQuery(sql);運(yùn)行結(jié)果:

      遇到的問題及解決:(程序編寫調(diào)試過程中出現(xiàn)的錯(cuò)誤及解決方法)

      結(jié)合eclipse運(yùn)用java對(duì)數(shù)據(jù)庫進(jìn)行操作,由于是第一次做比較陌生,在插入語句上有一些問題,但是通過詢問和查閱很好的完成了插入語句的編寫以及在eclipse的運(yùn)行。

      心得體會(huì):

      通過JDBC連接MySQL數(shù)據(jù)庫,編寫java程序?qū)?shù)據(jù)庫操作,學(xué)習(xí)和了解了C/S模式下的MySQL應(yīng)用開發(fā)。很好地完成了要求。也了解了數(shù)據(jù)庫與eclipse的聯(lián)系對(duì)JDBC有了一定的認(rèn)知。

      實(shí)驗(yàn)日志十一

      指導(dǎo)教師

      祝家鈺

      實(shí)驗(yàn)時(shí)間:

      2016 年

      6月 1 日 學(xué)院

      計(jì)算機(jī)

      專業(yè)

      智能科學(xué)大類

      班級(jí)

      0401410

      學(xué)號(hào)

      2014211727

      姓名

      周泓源

      實(shí)驗(yàn)室

      s331

      實(shí)驗(yàn)題目:

      MySQL 的觸發(fā)器

      實(shí)驗(yàn)?zāi)康模?/p>

      觸發(fā)器是特定事件出現(xiàn)的時(shí)候,自動(dòng)執(zhí)行的代碼塊,類似于存儲(chǔ)過程。觸發(fā) 器與存儲(chǔ)過程的區(qū)別在于:存儲(chǔ)過程是由用戶或應(yīng)用程序顯式調(diào)用的,而觸發(fā)器 是不能被直接調(diào)用的,由 DBMS 自動(dòng)執(zhí)行。

      觸發(fā)器具有這些功能:

      1、允許/限制對(duì)表的修改;

      2、自動(dòng)生成派生列,比 如自增字段;

      3、強(qiáng)制數(shù)據(jù)一致性;

      4、提供審計(jì)和日志記錄;

      5、防止無效的事 務(wù)處理;

      6、啟用復(fù)雜的業(yè)務(wù)邏輯。

      本次實(shí)驗(yàn)了解 MySQL 觸發(fā)器的創(chuàng)建、修改和刪除的方法和步驟,掌握在 Navicat for MySQL 中對(duì)觸發(fā)器的進(jìn)行創(chuàng)建、修改和刪除,掌握觸發(fā)器觸發(fā)測(cè)試 的方法。

      實(shí)驗(yàn)內(nèi)容:(敘述自己編寫的程序)

      1.啟動(dòng) Navicat for MySQL,在 MySQL – 新建連接中完成連接參數(shù)配置。2.登錄到本地?cái)?shù)據(jù)庫服務(wù)器后,連接到 test 數(shù)據(jù)庫上。

      3.執(zhí)行

      五、教學(xué)過程中

      (三)實(shí)驗(yàn)內(nèi)容的第一部分創(chuàng)建簡(jiǎn)單觸發(fā)器,驗(yàn)證觸發(fā)器 的創(chuàng)建和觸發(fā)器的觸發(fā)測(cè)試。觸發(fā)器創(chuàng)建: use test;Create trigger audit_student

      Before insert On student

      For each row

      Begin

      Insert into student_log(Who,whattime)Values(current_user,current_timestamp);

      End;觸發(fā)測(cè)試:

      select * from student_log;工作結(jié)果:

      4.執(zhí)行

      五、教學(xué)過程中

      (三)實(shí)驗(yàn)內(nèi)容的第二部分改造簡(jiǎn)單觸發(fā)器,增加觸發(fā)類 型判斷功能,驗(yàn)證觸發(fā)器的改造和改造后的觸發(fā)器觸發(fā)測(cè)試。改造:alter table student_log add(action varchar(20));增加的語句:Begin

      Insert into student_log(Who,whattime,action)Values(current_user,current_timestamp,'插入語句觸發(fā)');

      End 測(cè)試結(jié)果:

      5.自行編寫 student 表的觸發(fā)器 aduit_student_update,在對(duì) student 表進(jìn)行 更新操作前觸發(fā),觸發(fā)時(shí),向 student_log 表寫入觸發(fā)用戶、觸發(fā)時(shí)間和觸發(fā)類 型。并對(duì)該新建進(jìn)行觸發(fā)測(cè)試。更新語句:

      UPDATE student SET sage=40 WHERE sage=50;觸發(fā)器更新語句:use test;Create trigger audit_student_update

      Before UPDATE On student

      For each row

      Begin

      Insert into student_log(Who,whattime,action)Values(current_user,current_timestamp,'更新操作前觸發(fā)');

      End;結(jié)果:

      6.自行編寫 student 表的觸發(fā)器 aduit_student_delete,在對(duì) student 表進(jìn)行 刪除操作后觸發(fā),觸發(fā)時(shí),向 student_log 表寫入觸發(fā)用戶、觸發(fā)時(shí)間和觸發(fā)類 型。并對(duì)該新建進(jìn)行觸發(fā)測(cè)試。刪除語句:

      DELETE FROM student WHERE sname='吳思遠(yuǎn)';觸發(fā)器刪除語句: use test;Create trigger audit_student_delete

      AFTER DELETE On student

      For each row

      Begin

      Insert into student_log(Who,whattime,action)Values(current_user,current_timestamp,'刪除操作后觸發(fā)');

      End;結(jié)果:

      遇到的問題及解決:(程序編寫調(diào)試過程中出現(xiàn)的錯(cuò)誤及解決方法)

      觸發(fā)器語句的不熟悉,在自行編寫 student 表的觸發(fā)器 aduit_student_delete的時(shí)候一些語法上出現(xiàn)了錯(cuò)誤,及時(shí)進(jìn)行了改正。

      心得體會(huì):

      了解了數(shù)據(jù)庫的觸發(fā)器,以及對(duì)觸發(fā)器有了一定的認(rèn)識(shí)。了解 MySQL 觸發(fā)器的創(chuàng)建、修改和刪除的方法和步驟,掌握了在Navicat for MySQL 中對(duì)觸發(fā)器的進(jìn)行創(chuàng)建、修改和刪除,掌握觸發(fā)器觸發(fā)測(cè)試的方法。

      實(shí)驗(yàn)日志十二

      指導(dǎo)教師

      祝家鈺

      實(shí)驗(yàn)時(shí)間:

      2016 年

      3月 23 日 學(xué)院

      計(jì)算機(jī)

      專業(yè)

      智能科學(xué)大類

      班級(jí)

      0401410

      學(xué)號(hào)

      2014211727

      姓名

      周泓源

      實(shí)驗(yàn)室

      s331

      實(shí)驗(yàn)題目:SQL 語言數(shù)據(jù)控制語言 DCL

      實(shí)驗(yàn)?zāi)康模?/p>

      SQL 的數(shù)據(jù)控制通過 DCL(數(shù)據(jù)控制語言)實(shí)現(xiàn)。DCL 通過對(duì)數(shù)據(jù)庫用戶的授 權(quán)和權(quán)限回收命令來實(shí)現(xiàn)有關(guān)數(shù)據(jù)的存取控制,以保證數(shù)據(jù)庫的安全性。

      本次實(shí)驗(yàn)了解 DCL 語言的 GRANT 和 REVOKE 語句對(duì)數(shù)據(jù)庫存取權(quán)限的控制,學(xué)會(huì)在Navicat for MySQL中用GRANT、REVOKE語句對(duì)數(shù)據(jù)庫存取權(quán)限進(jìn)行設(shè)定。

      實(shí)驗(yàn)內(nèi)容:(敘述自己編寫的程序)

      執(zhí)行以下內(nèi)容:

      1.啟動(dòng) Navicat for MySQL,在 MySQL – 新建連接中完成 root 連接參數(shù)配置。2.登錄到本地?cái)?shù)據(jù)庫服務(wù)器后,連接到 mysql 數(shù)據(jù)庫上。

      3.執(zhí)行

      五、教學(xué)過程中

      (三)實(shí)驗(yàn)內(nèi)容的第一部分創(chuàng)建用戶 jason,密碼為 abc123, 并授權(quán)該用戶完整訪問數(shù)據(jù)庫 test。即執(zhí)行如下 DCL 語句: GRANT ALL ON test.* TO jason@“%” IDENTIFIED BY “abc123”;

      4.啟動(dòng)另外一個(gè) Navicat for MySQL,在 MySQL – 新建連接中完成 jason 連接 參數(shù)配置。

      雙擊 jason 連接到該用戶對(duì)應(yīng)的數(shù)據(jù)庫 test 上。test 整個(gè)數(shù)據(jù)庫。

      點(diǎn)擊查詢->新建,執(zhí)行如下語句

      select host,user,password from mysql.user;我們看到,這條 SELECT 語句被拒絕執(zhí)行,沒有查詢到相應(yīng)的數(shù)據(jù)。為了能查詢 到相應(yīng)的數(shù)據(jù),我們必須進(jìn)行授權(quán)操作。運(yùn)行 MySQL 的命令行客戶端軟件。在MySQL 的命令行客戶端軟件中進(jìn)行登錄然后執(zhí)行g(shù)rant select on mysql.user to jason;語句對(duì)其進(jìn)行授權(quán)。授權(quán)結(jié)果:

      接下來,切換到 MySQL 的命令行客戶端,執(zhí)行如下兩條語句,創(chuàng)建一個(gè)簡(jiǎn)單的表,為后面的 INSERT 授權(quán)操作做準(zhǔn)備。use mysql;create table dcltest(id int,name varchar(20));切換到 Navicat for MySQL,新建一個(gè)查詢,執(zhí)行如下插入語句 insert into mysql.dcltest(id,name)values(1,'張三豐');

      我們看到,這條 INSERT 語句被拒絕執(zhí)行,沒有完成數(shù)據(jù)的插入。為了能插入數(shù) 據(jù),我們必須進(jìn)行授權(quán)操作。

      切換到 MySQL 的命令行客戶端,執(zhí)行如下授權(quán)語句,進(jìn)行 INSERT 權(quán)限的授予,grant insert on mysql.dcltest to jason;授權(quán)后,現(xiàn)在切換到 Navicat for MySQL,執(zhí)行之前窗口中的插入語句

      輸入如下查詢語句

      select * from mysql.dcltest;

      再對(duì)其進(jìn)行授權(quán):

      grant select on mysql.dcltest to jason;授權(quán)之后進(jìn)行查詢:

      權(quán)限授予后,root(數(shù)據(jù)庫超級(jí)用戶)可以進(jìn)行權(quán)限的回收。

      切換到 Navicat for MySQL,新建一個(gè)查詢,執(zhí)行如下插入語句: insert into mysql.dcltest(id,name)values(2,'掃地僧');

      目前,我們能順利的插入數(shù)據(jù)到表 mysql.dcltest 中,接下來我們要回收該權(quán)限,切換到 MySQL 的命令行客戶端,執(zhí)行如下權(quán)限回收語句,進(jìn)行 INSERT 權(quán)限的回 收:

      revoke insert on mysql.dcltest from jason;切換到 Navicat for MySQL,新建一個(gè)查詢,執(zhí)行如下插入語句: insert into mysql.dcltest(id,name)values(3,'天山童姥');

      我們看到,由于權(quán)限被回收,這條 INSERT 語句被拒絕執(zhí)行,沒有完成數(shù)據(jù)的插 入。新建一個(gè)查詢,執(zhí)行如下查詢語句 select * from mysql.dcltest;

      目前,我們能順利的查詢表 mysql.dcltest 中的數(shù)據(jù),接下來我們要回收該權(quán)限,切換到 MySQL 的命令行客戶端,執(zhí)行如下權(quán)限回收語句,進(jìn)行 SELECT 權(quán)限的回收 revoke select on mysql.dcltest from jason;

      切換到 Navicat for MySQL,執(zhí)行之前的查詢語句

      我們看到,由于權(quán)限被回收,這條 SELECT 語句被拒絕執(zhí)行,沒有完成數(shù)據(jù)的查 詢。

      請(qǐng)大家在理解以上內(nèi)容的基礎(chǔ)上,1對(duì)mysql 數(shù)據(jù)庫的dcltest 表的UPDATE 權(quán)限進(jìn)行 GRANT 權(quán)限授予 grant update on mysql.dcltest to jason;

      Mysql下的運(yùn)行結(jié)果

      2對(duì)mysql 數(shù)據(jù)庫的 dcltest 表的UPDATE 權(quán)限進(jìn)行 EVOKE 權(quán)限回收操作(MySQL 的命令行客戶端中執(zhí)行),revoke update on mysql.dcltest from jason;

      遇到的問題及解決:(程序編寫調(diào)試過程中出現(xiàn)的錯(cuò)誤及解決方法)

      在本次實(shí)驗(yàn)中需要在MySQL 的命令行客戶端中對(duì)mysql 數(shù)據(jù)庫的表的權(quán)限進(jìn)行權(quán)限授予 但是卻忘了,所以老是得不到想要的結(jié)果,然后發(fā)現(xiàn)了這個(gè)問題,就解決了,也在Mysql下得到了想要的運(yùn)行結(jié)果。

      心得體會(huì):通過本次實(shí)驗(yàn)了解了 DCL 語言的 GRANT 和 REVOKE 語句對(duì)數(shù)據(jù)庫存取權(quán)限的控制,學(xué)會(huì)了在Navicat for MySQL中用GRANT、REVOKE語句對(duì)數(shù)據(jù)庫存取權(quán)限進(jìn)行設(shè)定。很好的完成了試驗(yàn)指標(biāo)。

      第二篇:數(shù)據(jù)庫原理及應(yīng)用實(shí)驗(yàn)報(bào)告 6

      實(shí)驗(yàn)成績(jī)

      《數(shù)據(jù)庫系統(tǒng)原理及應(yīng)用》

      實(shí) 驗(yàn) 報(bào) 告 六

      專業(yè)班級(jí):

      計(jì)算機(jī)科學(xué)與技術(shù)

      學(xué)

      號(hào):

      201116910233

      名:

      范曉曈

      指導(dǎo)教師:

      蘇小玲

      2013年

      日 實(shí)驗(yàn)六名稱:

      SQL Server存儲(chǔ)過程

      一、實(shí)驗(yàn)內(nèi)容及要求

      1.使用輸入?yún)?shù)存儲(chǔ)過程的創(chuàng)建和執(zhí)行

      任務(wù)1:查詢學(xué)生的學(xué)號(hào)、姓名、選修的課程號(hào)、課程名、課程學(xué)分,將學(xué)生所在系作為輸入?yún)?shù),默認(rèn)值為“軟件工程系”。執(zhí)行此存儲(chǔ)過程,并分別指定一些不同的輸入?yún)?shù)值,查看執(zhí)行過程。

      2.修改視圖

      任務(wù)1:查詢指定系的男生人數(shù),其中系為輸入?yún)?shù),人數(shù)為輸出參數(shù)。執(zhí)行此存儲(chǔ)過程,并分別指定一些不同的輸入?yún)?shù)值,查看執(zhí)行過程。

      任務(wù)2:查詢指定學(xué)生(姓名)在指定學(xué)期的選課門數(shù)和考試平均成績(jī),要求姓名和學(xué)期為輸入?yún)?shù),選課門數(shù)和平均成績(jī)用輸出參數(shù)返回,平均成績(jī)保留到小數(shù)點(diǎn)后兩位。

      3.使用返回代碼存儲(chǔ)過程的創(chuàng)建和執(zhí)行

      任務(wù)1:查詢指定學(xué)生(學(xué)號(hào))的選課門數(shù)。如果指定學(xué)生不存在,則返回代碼1;如果指定的學(xué)生沒有選課,則返回代碼2;如果指定學(xué)生有選課,則返回代碼0,并用輸出參數(shù)返回該學(xué)生的選課門數(shù)。

      4.使用實(shí)現(xiàn)對(duì)數(shù)據(jù)庫修改、刪除和插入操作的存儲(chǔ)過程創(chuàng)建和執(zhí)行

      任務(wù)1:刪除指定學(xué)生(學(xué)號(hào))的修課,如果指定的學(xué)生不存在,則顯示提示信息“沒有指定學(xué)生”;如果指定的學(xué)生沒有選課,則顯示提示信息“該學(xué)生沒有選課”。學(xué)號(hào)為輸入?yún)?shù)。

      任務(wù)2:修改指定課程的開課學(xué)期。輸入?yún)?shù)為:課程號(hào)和修改后的開課學(xué)期。

      任務(wù)3:在course表中插入一行數(shù)據(jù),課程號(hào)、課程名、學(xué)分、開課學(xué)期均為輸入?yún)?shù)。課程號(hào)為C100、課程名為操作系統(tǒng)、學(xué)分為

      4、開課學(xué)期為4,開課學(xué)期的默認(rèn)值為3。如果學(xué)分大于10或者小于1,則不插入數(shù)據(jù),并顯示提示信息“學(xué)分為1~10之間的整數(shù)”。

      二、實(shí)驗(yàn)?zāi)康?/p>

      掌握存儲(chǔ)過程的創(chuàng)建和執(zhí)行;掌握存儲(chǔ)過程中輸入?yún)?shù)和輸出參數(shù)的設(shè)置和使用方法。

      三、實(shí)驗(yàn)步驟及運(yùn)行結(jié)果

      1.使用輸入?yún)?shù)存儲(chǔ)過程的創(chuàng)建和執(zhí)行

      任務(wù)1:查詢學(xué)生的學(xué)號(hào)、姓名、選修的課程號(hào)、課程名、課程學(xué)分,將學(xué)生所在系作為輸入?yún)?shù),默認(rèn)值為“軟件工程系”。執(zhí)行此存儲(chǔ)過程,并分別指定一些不同的輸入?yún)?shù)值,查看執(zhí)行過程。

      create procedure p_studentdept @dept char(20)='計(jì)科' as select s.sno,s.sname,c.cno,cname,s.credit from student s inner join sc on s.sno=sc.sno inner join Course c

      on c.cno=sc.cno where sdept=@dept

      2.修改視圖

      任務(wù)1:查詢指定系的男生人數(shù),其中系為輸入?yún)?shù),人數(shù)為輸出參數(shù)。執(zhí)行此存儲(chǔ)過程,并分別指定一些不同的輸入?yún)?shù)值,查看執(zhí)行過程。

      create procedure p_numberofBoy @dept char(20),@boynumber int output as select @boynumber=COUNT(*)from Student

      where Ssex='男' and sdept=@dept

      declare @boynumber int exec p_numberofBoy '計(jì)科' ,@boynumber output print @boynumber

      declare @boynumber int exec p_numberofBoy '電信' ,@boynumber output print @boynumber

      任務(wù)2:查詢指定學(xué)生(姓名)在指定學(xué)期的選課門數(shù)和考試平均成績(jī),要求姓名和學(xué)期為輸入?yún)?shù),選課門數(shù)和平均成績(jī)用輸出參數(shù)返回,平均成績(jī)保留到小數(shù)點(diǎn)后兩位。

      create proc p_studentInfo @name char(20),@semester int,@count_xk int output,@avg_sscore float output as select @count_xk=count(c.cno),@avg_sscore=Avg(sscore)from Student s join SC

      on s.Sno =SC.Sno join Course c

      on SC.Cno =c.Cno where s.Sname=@name and c.Semester =@semester

      declare @count_xk int,@avg_grade float,@avg_sscore decimal exec p_studentInfo '范曉曈',2,@count_xk output,@avg_sscore output select @count_xk as 選課門數(shù),@avg_sscore as平均成績(jī)

      3.使用返回代碼存儲(chǔ)過程的創(chuàng)建和執(zhí)行

      任務(wù)1:查詢指定學(xué)生(學(xué)號(hào))的選課門數(shù)。如果指定學(xué)生不存在,則返回代碼1;如果指定的學(xué)生沒有選課,則返回代碼2;如果指定學(xué)生有選課,則返回代碼0,并用輸出參數(shù)返回該學(xué)生的選課門數(shù)。

      create proc p_countxk @number decimal,@xk_number decimal output as if not exists(select Sno from Student where Sno=@number)return 1 else if not exists(select Sno from SC where Sno=@number)return 2 else begin select @xk_number=COUNT(sc.cno)from SC where Sno =@number return 0 End

      declare @xk_number1 int exec p_countxk 201116910233,@xk_number1 output print @xk_number1

      4.使用實(shí)現(xiàn)對(duì)數(shù)據(jù)庫修改、刪除和插入操作的存儲(chǔ)過程創(chuàng)建和執(zhí)行

      任務(wù)1:刪除指定學(xué)生(學(xué)號(hào))的修課,如果指定的學(xué)生不存在,則顯示提示信息“沒有指定學(xué)生”;如果指定的學(xué)生沒有選課,則顯示提示信息“該學(xué)生沒有選課”。學(xué)號(hào)為輸入?yún)?shù)。

      create proc p_delete @id numeric as if not exists(select * from Student where Sno=@id)return 1 if not exists(select * from SC where SC.Sno=@id)return 2 else return 0

      declare @id numeric,@ret int exec @ret=p_delete 201116910232 if @ret =1 print '沒有該學(xué)生!' if @ret =2 print '該學(xué)生沒有選課!' if @ret =0 delete from SC where Sno=201116910232

      declare @id numeric,@ret int exec @ret=p_delete 201116910222 if @ret =1 print '沒有該學(xué)生!' if @ret =2 print '該學(xué)生沒有選課!' if @ret =0 delete from SC where Sno=201116910222

      declare @id numeric,@ret int exec @ret=p_delete 201116910211 if @ret =1 print '沒有該學(xué)生!' if @ret =2 print '該學(xué)生沒有選課!' if @ret =0 delete from SC where Sno=201116910211

      任務(wù)2:修改指定課程的開課學(xué)期。輸入?yún)?shù)為:課程號(hào)和修改后的開課學(xué)期。

      create proc p_alter @kc char(20),@xq int as update course set semester=@xq where cno=@kc declare @kc char(20),@xq int exec p_alter 'C003',3

      修改前:

      修改后:

      任務(wù)3:在course表中插入一行數(shù)據(jù),課程號(hào)、課程名、學(xué)分、開課學(xué)期均為輸入?yún)?shù)。課程號(hào)為C100、課程名為操作系統(tǒng)、學(xué)分為

      4、開課學(xué)期為4,開課學(xué)期的默認(rèn)值為3。如果學(xué)分大于10或者小于1,則不插入數(shù)據(jù),并顯示提示信息“學(xué)分為1~10之間的整數(shù)”。

      create proc p_insert @kc_id varchar(20),@kc_name varchar(20),@xf decimal , @xq int as if(@xf >= 1 and @xf <=10)begin insert course(cno,cname,credit,semester)values(@kc_id,@kc_name,@xf,@xq)

      end else print

      '學(xué)分要在1~10之間??!'

      declare @kc_id varchar(20),@kc_name varchar(20),@xf decimal,@xq int exec p_insert 'C006','操作系統(tǒng)',3.0,6

      declare @kc_id char(20),@kc_name char(20),@xf decimal,@xq int exec p_insert 'C007','毛概',11.0,4

      四、實(shí)驗(yàn)心得

      在這次實(shí)驗(yàn)中,我明白了,存儲(chǔ)過程只在創(chuàng)造時(shí)進(jìn)行編譯即可,以后每次執(zhí)行存儲(chǔ)過程都不需再重新編譯,而我們通常使用的SQL語句每執(zhí)行一次就編譯一次,所以使用存儲(chǔ)過程可提高數(shù)據(jù)庫執(zhí)行速度,存儲(chǔ)過程一般用來完成數(shù)據(jù)查詢和數(shù)據(jù)處理操作。

      無論什么時(shí)候執(zhí)行存儲(chǔ)過程,總要返回一個(gè)結(jié)果碼,用以指示存儲(chǔ)過程的執(zhí)行狀態(tài)。如果存儲(chǔ)過程執(zhí)行成功,返回的結(jié)果碼是0;如果存儲(chǔ)過程執(zhí)行失敗,返回的結(jié)果碼一般是一個(gè)負(fù)數(shù),它和失敗的類型有關(guān)。我們?cè)趧?chuàng)建存儲(chǔ)過程時(shí),也可以定義自己的狀態(tài)碼和錯(cuò)誤信息。

      通過這次實(shí)驗(yàn),讓我深刻了解了數(shù)據(jù)庫的功能,覺得它功能非常的強(qiáng)大,掌握存儲(chǔ)過程的創(chuàng)建與執(zhí)行,熟悉存儲(chǔ)過程與批處理的區(qū)別。掌握帶參數(shù)的存儲(chǔ)過程的創(chuàng)建與執(zhí)行。

      第三篇:數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

      數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

      一、題目要求

      某銀行準(zhǔn)備開發(fā)一個(gè)銀行業(yè)務(wù)管理系統(tǒng),通過調(diào)查,得到以下的主要需求:

      銀行有多個(gè)支行。各個(gè)支行位于某個(gè)城市,每個(gè)支行有唯一的名字。銀行要監(jiān)控每個(gè)支行的資產(chǎn)。銀行的客戶通過其身份證號(hào)來標(biāo)識(shí)。銀行存儲(chǔ)每個(gè)客戶的姓名及其居住的街道和城市。客戶可以有帳戶,并且可以貸款??蛻艨赡芎湍硞€(gè)銀行員工發(fā)生聯(lián)系,該員工是此客戶的貸款負(fù)責(zé)人或銀行帳戶負(fù)責(zé)人。銀行員工也通過身份證號(hào)來標(biāo)識(shí)。員工分為部門經(jīng)理和普通員工,每個(gè)部門經(jīng)理都負(fù)責(zé)領(lǐng)導(dǎo)其所在部門的員工,并且每個(gè)員工只允許在一個(gè)部門內(nèi)工作。每個(gè)支行的管理機(jī)構(gòu)存儲(chǔ)每個(gè)員工的姓名、電話號(hào)碼、家庭地址及其經(jīng)理的身份證號(hào)。銀行還需知道每個(gè)員工開始工作的日期,由此日期可以推知員工的雇傭期。銀行提供兩類帳戶——儲(chǔ)蓄帳戶和支票帳戶。帳戶可以由2個(gè)或2個(gè)以上客戶所共有,一個(gè)客戶也可有兩個(gè)或兩個(gè)以上的帳戶。每個(gè)帳戶被賦以唯一的帳戶號(hào)。銀行記錄每個(gè)帳戶的余額、開戶的支行以及每個(gè)帳戶所有者訪問該帳戶的最近日期。另外,每個(gè)儲(chǔ)蓄帳戶有其利率,且每個(gè)支票帳戶有其透支額。每筆貸款由某個(gè)分支機(jī)構(gòu)發(fā)放,能被一個(gè)或多個(gè)客戶所共有。每筆貸款用唯一的貸款號(hào)標(biāo)識(shí)。銀行需要知道每筆貸款所貸金額以及逐次支付的情況(銀行將貸款分幾次付給客戶)。雖然貸款號(hào)不能唯一標(biāo)識(shí)銀行所有為貸款所付的款項(xiàng),但可以唯一標(biāo)識(shí)為某貸款所付的款項(xiàng)。對(duì)每次的付款需要記錄日期和金額。

      二、需求分析

      這一部分主要是根據(jù)實(shí)驗(yàn)需求對(duì)銀行系統(tǒng)需求中的實(shí)體、實(shí)體屬性以及實(shí)體之間的關(guān)聯(lián)進(jìn)行確認(rèn),以便畫出正確的概念模型。

      2.1 實(shí)體確認(rèn)

      根據(jù)需求分析確認(rèn)實(shí)體:銀行員工、銀行支行、客戶、賬戶(其中:儲(chǔ)蓄賬戶、支票賬戶是繼承實(shí)體賬戶而來)、貸款、支付(弱實(shí)體)。

      2.2 實(shí)體屬性確認(rèn)

      銀行員工:身份證號(hào)(pi)、姓名、電話號(hào)碼、家庭地址、開始工作日期 銀行支行:支行名、資產(chǎn)、城市

      客戶:身份證號(hào)、姓名、街道、所在城市 賬戶:賬戶號(hào)、余額、最近訪問日期 支票賬戶:透支額 儲(chǔ)蓄賬戶:利率 2.3 實(shí)體關(guān)系確認(rèn)

      賬戶和支行:N:1定義關(guān)系為Relationship_accout_bank 客戶和貸款:M:N定義關(guān)系為Relationship_client_loan 客戶和員工:M:1 定義關(guān)系為 Relation_client_staff 貸款和支行:1:N 定義關(guān)系為 Relationship_loan_bank 客戶和賬戶:M:N 定義關(guān)系為 client__accout 貸款發(fā)放信息和貸款:N:1 定義關(guān)系為 Relationship_loan_pay 支行和員工:1:N 定義關(guān)系為Relationship_staff_bank

      員工和員工:1:N 定義關(guān)系為 Relationship_lead

      三、概念模型(CDM)

      根據(jù)sybase power designer畫出概念模型(CDM),如下圖所示:

      四、物理模型(PDM)

      根據(jù)概念模型轉(zhuǎn)化成物理模型(PDM),如下圖所示:

      第四篇:數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)4SQL高級(jí)應(yīng)用

      【實(shí)驗(yàn)?zāi)康摹?/p>

      1、掌握在SQL SERVER 2005下進(jìn)行數(shù)據(jù)還原的方法。

      2、掌握SQL語句的查詢統(tǒng)計(jì)功能和數(shù)據(jù)更改功能。

      【實(shí)驗(yàn)內(nèi)容】

      1.還原factory數(shù)據(jù)庫。

      2.在factory數(shù)據(jù)庫上,完成如下各題。

      (1)刪除factory數(shù)據(jù)庫上各個(gè)表之間建立的關(guān)系。(2)*顯示各職工的工資記錄和相應(yīng)的工資小計(jì)。

      (3)*按性別和部門名的所有組合方式列出相應(yīng)的平均工資。

      (4)在worker表中使用以下語句插入一個(gè)職工記錄。職工號(hào):20;姓名:陳立;性別:女;出生日期:55/03/08;黨員否: 1;參加工作:75/10/10;部門號(hào):4。

      在depart表中使用以下語句插入一個(gè)部門記錄。部門號(hào):5;部門名:設(shè)備處。對(duì)worker和depart表進(jìn)行全外連接顯示職工的職工號(hào)、姓名和部門名,然后刪除這兩個(gè)插入的記錄。

      (5)顯示最高工資的職工的職工號(hào)、姓名、部門名、工資發(fā)放日期和工資。(6)顯示最高工資的職工所在的部門名。

      (7)顯示所有平均工資低于全部職工平均工資的職工的職工號(hào)和姓名。(8)*采用游標(biāo)方式實(shí)現(xiàn)(6)小題的功能。(9)*采用游標(biāo)方式實(shí)現(xiàn)(7)小題的功能。

      (10)*先顯示worker表中的職工人數(shù),開始一個(gè)事務(wù),插入一個(gè)職工記錄,再顯示worker表中的職工人數(shù),回滾該事務(wù),最后顯示worker表中的職工人數(shù)。

      【實(shí)驗(yàn)報(bào)告要求】

      1.第(1)寫出操作步驟。

      2.其他各題寫出實(shí)現(xiàn)要求的命令/程序,并列出執(zhí)行結(jié)果。

      【操作步驟】

      1.還原factory數(shù)據(jù)庫。

      2.在factory基礎(chǔ)上,有

      (1)刪除factory數(shù)據(jù)庫上各個(gè)表之間建立的關(guān)系。

      (2)*顯示各職工的工資記錄和相應(yīng)的工資小計(jì)。

      Select 職工號(hào),姓名,工資from salary Order by 職工號(hào)

      Compute sum(工資)by 職工號(hào)

      (3)*按性別和部門名的所有組合方式列出相應(yīng)的平均工資。

      select worker.職工號(hào),worker.性別,depart.部門名,avg(工資)as'平均工資' from worker inner join depart on worker.部門號(hào)=depart.部門號(hào) inner join salary on worker.職工號(hào)=salary.職工號(hào)

      group by worker.職工號(hào),worker.性別,depart.部門名

      order by worker.職工號(hào)

      (4)在worker表中使用以下語句插入一個(gè)職工記錄。職工號(hào):20;姓名:陳立;性別:女;出生日期:55/03/08;黨員否: 1;參加工作:75/10/10;部門號(hào):4。

      insert into worker values('20','陳立','女','1955-03-08','1','1975-10-10',4)

      在depart表中使用以下語句插入一個(gè)部門記錄。部門號(hào):5;部門名:設(shè)備處。

      Insert into depart Values('5','設(shè)備處')對(duì)worker和depart表進(jìn)行全外連接顯示職工的職工號(hào)、姓名和部門名,然后刪除這兩個(gè)插入的記錄。

      use factory Select b.部門號(hào),c.姓名

      from salary a,departb,worker c delete from worker where 職工號(hào)=20 delete from depart where 部門號(hào)=5(5)顯示最高工資的職工的職工號(hào)、姓名、部門名、工資發(fā)放日期和工資。

      Use factory Select b.部門名,c.職工號(hào),c.姓名,b.部門名,a.日期,a.工資 from salary a,departb,worker c Where 工資in(select max(a.工資)from salary a)and a.職工號(hào)=c.職工號(hào)and b.部門號(hào)=c.部門號(hào)(6)顯示最高工資的職工所在的部門名。

      Use factory Select b.部門名from salary a,departb,worker c Where 工資in(select max(a.工資)from salary a)and c.部門號(hào)=b.部門號(hào)and a.職工號(hào)=c.職工號(hào)

      (7)顯示所有平均工資低于全部職工平均工資的職工的職工號(hào)和姓名。

      Use factory Select a.職工號(hào),a.姓名,avg(b.工資)as平均工資from worker a,salary b where a.職工號(hào)=b.職工號(hào) group by a.職工號(hào),a.姓名

      having avg(工資)<(select avg(工資)from salary)

      第五篇:數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

      南華大學(xué)

      計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院

      實(shí)驗(yàn)報(bào)告

      (2013 ~2014 學(xué)

      第二學(xué)期)

      課程名稱 實(shí)驗(yàn)名稱

      數(shù)據(jù)庫原理與技術(shù)

      姓名 張濤 學(xué)號(hào) 20124350230

      專業(yè) 軟件工程

      班級(jí) 02班

      地點(diǎn)

      教師 劉征海 實(shí)驗(yàn)1 認(rèn)識(shí)DBMS 一.實(shí)驗(yàn)題目

      認(rèn)識(shí)DBMS 二.實(shí)驗(yàn)要求

      1.利用管理工具創(chuàng)建數(shù)據(jù)庫、表和表間關(guān)系。

      實(shí)驗(yàn)?zāi)康暮妥⒁馐马?xiàng) 基本操作,進(jìn)一步理解數(shù) 據(jù)庫、表、表間關(guān)系的概念。

      注意事項(xiàng):創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表時(shí)應(yīng)認(rèn)真,如果出現(xiàn)錯(cuò)誤,應(yīng)相應(yīng)地修改結(jié)構(gòu)或刪除。三.實(shí)驗(yàn)代碼(內(nèi)容)

      (1)利用SQL Server Management Studio 創(chuàng)建數(shù)據(jù)庫,名稱為【學(xué)生選課

      YYXXXX】。其中YY為專業(yè)代號(hào),計(jì)算機(jī)為JS,軟件工程為RJ,網(wǎng)絡(luò)為WL,數(shù)媒為

      SM;XXXX為各位同學(xué)的學(xué)號(hào)中的最后四位 實(shí)驗(yàn)?zāi)康模菏煜QL Server Management Studio

      (2)在【學(xué)生選課YYXXXX】中建立數(shù)據(jù)表,表的定義如下所示。

      學(xué)生YYXXXX(學(xué)號(hào),姓名,性別,出生日期,院系名稱,備注);

      課程YYXXXX(課程號(hào),課程名,先行課,學(xué)分); 選修YYXXXX(學(xué)號(hào),課程號(hào),分?jǐn)?shù))。

      要求定義每張表的主碼,為屬性選擇合適的數(shù)據(jù)類型,決定是否允許為空,為【性別】和【學(xué)分】屬性定義默認(rèn)值。

      (3)定義表之間的關(guān)系。

      (4)分別為表錄入幾行數(shù)據(jù)記錄,同時(shí)練習(xí)數(shù)據(jù)的修改和刪除操作

      2.利用SQL 語句創(chuàng)建數(shù)據(jù)庫、表和表間關(guān)系 實(shí)驗(yàn)?zāi)康暮妥⒁馐马?xiàng)

      實(shí)驗(yàn)?zāi)康模菏煜?chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表的SQL 語句。

      注意事項(xiàng):輸入SQL 語句時(shí)應(yīng)注意,語句中均使用西文操作符號(hào)。

      實(shí)驗(yàn)內(nèi)容

      在SQL Server Management Studio 中新建查詢,實(shí)現(xiàn)以下操作。(1)用SQL 語句創(chuàng)建數(shù)據(jù)庫,名稱為“StudentCourseYYXXXX”。其中YYXXXX 為各位同學(xué)的學(xué)號(hào)中的最后四位。

      (2)用SQL 語句創(chuàng)建StudentCourseYYXXXX 中的3 張表,同時(shí)指定主碼、外 碼、默認(rèn)值等。

      (3)直接在表數(shù)據(jù)窗口中錄入表數(shù)據(jù)記錄。

      實(shí)驗(yàn) 2 交互式 SQL(1)

      一、數(shù)據(jù)庫單表查詢 實(shí)驗(yàn)?zāi)康暮妥⒁馐马?xiàng)

      實(shí)驗(yàn)?zāi)康模赫莆諉伪聿樵僑ELECT、FROM、WHERE 的用法,特別要掌握比較運(yùn) 算符、邏輯運(yùn)算符的使用。注意事項(xiàng):子句WHERE<條件>表示元組篩選條件;子句HAVING<條件>表示元

      組選擇條件;子句HAVING<條件>必須和GROUP BY 子句配合使用;注意輸入SQL語句時(shí)均應(yīng)使用西文操作符號(hào)。實(shí)驗(yàn)內(nèi)容

      (1)創(chuàng)建查詢窗口,設(shè)置查詢環(huán)境。(2)單表查詢 實(shí)驗(yàn)步驟

      (1)選擇要查詢的數(shù)據(jù)庫,右擊【新建查詢】,或者選擇系統(tǒng)菜單中的【文

      件】|【新建】|【使用當(dāng)前連接查詢】命令,或者單擊標(biāo)準(zhǔn)工具欄中的【新建查

      詢】按鈕,即可新建一個(gè)查詢窗口。如果查詢數(shù)據(jù)庫不是StudentCourseYYXXXX,則可在可用數(shù)據(jù)庫下拉列表中進(jìn)行選擇,或用USE 語句調(diào)用。

      (2)在查詢窗口中輸入SELECT 查詢語句,對(duì)StudentCourseYYXXXX 數(shù)據(jù)庫 進(jìn)行查詢操作。

      ① 查詢計(jì)算機(jī)系全體學(xué)生的信息

      ② 查詢姓“李”的學(xué)生的學(xué)號(hào)和姓名。

      ③ 查詢課程表中先行課為空的課程名。

      ④ 查詢考試成績(jī)有不及格的學(xué)生的學(xué)號(hào)。

      ⑤ 求選修了C1 課程或C2 課程的學(xué)生的學(xué)號(hào)及成績(jī)。

      ⑥ 查詢?nèi)w計(jì)算機(jī)系學(xué)生的姓名及其年齡。

      ⑦ 查詢計(jì)算機(jī)系在1986-1987 年之間出生的學(xué)生的姓名。

      ⑧ 查詢姓“李”的前兩個(gè)學(xué)生的學(xué)號(hào)和姓名。

      ⑨ 查詢選修了兩門以上課程的學(xué)生學(xué)號(hào)與課程數(shù)。

      ⑩ 查詢選修課程數(shù)大于等于2 的學(xué)生的學(xué)號(hào)、平均成績(jī)和選課門數(shù),并按平均成績(jī)降序排列。

      二、數(shù)據(jù)庫多表連接查詢 實(shí)驗(yàn)?zāi)康暮妥⒁馐马?xiàng)

      實(shí)驗(yàn)?zāi)康模豪斫舛啾聿樵兊母拍?;掌握多表查詢的SELECT、FROM、WHERE、JOIN子句的用法,特別要求比較內(nèi)連接、外連接的結(jié)果。

      注意事項(xiàng):內(nèi)連接、左外連接和右外連接的含義及表達(dá)方法;注意輸入SQL 語 句時(shí)均應(yīng)使用西文操作符號(hào)。實(shí)驗(yàn)內(nèi)容

      (1)創(chuàng)建查詢窗口,設(shè)置查詢環(huán)境。(2)多表復(fù)雜查詢。實(shí)驗(yàn)步驟

      新建查詢窗口,選擇StudentCourseYYXXXX 為當(dāng)前數(shù)據(jù)庫,輸入如下SELECT 查詢語句并執(zhí)行,對(duì)數(shù)據(jù)庫進(jìn)行多表連接查詢操作。(1)查詢選修了【數(shù)據(jù)庫原理】的計(jì)算機(jī)系的學(xué)生學(xué)號(hào)和姓名。

      (2)查詢每一門課的間接先行課(即先行課的先行課)。

      (3)查詢學(xué)生的學(xué)號(hào)、姓名、選修課程的名稱和成績(jī)。

      (4)查詢選修了課程的學(xué)生姓名。

      (5)查詢所有學(xué)生的信息和所選修的課程。

      (6)查詢已被選修的課程的情況和所有課程的名字。

      (7)列出學(xué)生所有可能的選修情況。

      (8)查找計(jì)算機(jī)系的學(xué)生選修課程數(shù)大于2 的學(xué)生的姓名、平均成績(jī)和選課 門數(shù),并按平均成績(jī)降序排列。

      實(shí)驗(yàn) 3 交互式 SQL(2)數(shù)據(jù)庫嵌套查詢和組合查詢 實(shí)驗(yàn)?zāi)康暮妥⒁馐马?xiàng)

      實(shí)驗(yàn)?zāi)康模赫莆詹樵冎星短撞樵兒徒M合查詢的操作方法,進(jìn)一步加深對(duì) SELECT 語句的理解。

      注意事項(xiàng):子句的使用;注意語句的層次嵌套關(guān)系和括號(hào)的配對(duì)使用問題;

      注意輸入SQL 語句時(shí)均應(yīng)使用西文操作符號(hào)。實(shí)驗(yàn)內(nèi)容(1)創(chuàng)建查詢窗口,設(shè)置查詢環(huán)境。(2)分組查詢。(3)統(tǒng)計(jì)查詢。(4)嵌套查詢。實(shí)驗(yàn)步驟

      新建查詢窗口,選擇StudentCourseYYXXXX 為當(dāng)前數(shù)據(jù)庫,輸入如下SELECT 查詢語句并執(zhí)行,對(duì)數(shù)據(jù)庫進(jìn)行嵌套查詢和組合查詢操作。

      (1)統(tǒng)計(jì)選修了【數(shù)據(jù)庫原理】課程的學(xué)生人數(shù)。

      (2)查詢沒有選修【數(shù)據(jù)庫原理】課程的學(xué)生信息。

      (3)查詢其他系中比計(jì)算機(jī)系學(xué)生年齡都小的學(xué)生。

      (4)查詢被0602001 學(xué)生或0602002 學(xué)生所選修的課程的課程號(hào)(用UNION 組合查詢與IN 條件查詢兩種方法實(shí)現(xiàn))。

      (5)查詢0602001 學(xué)生和0602002 學(xué)生同時(shí)選修的課程的課程號(hào)(用

      INTERSECT 組合查詢與EXISTS 嵌套子查詢兩種方法實(shí)現(xiàn))。

      (6)查詢被0602001 學(xué)生選修,但沒有被0602002 學(xué)生所選修的課程的課程

      號(hào)(用EXCEPT 組合查詢與NOT EXISTS 嵌套子查詢兩種方法實(shí)現(xiàn))。

      實(shí)驗(yàn) 4 交互式 SQL(3)數(shù)據(jù)的更新 實(shí)驗(yàn)?zāi)康暮妥⒁馐马?xiàng)

      實(shí)驗(yàn)?zāi)康模菏煜げ迦?、修改和刪除SQL 語句的用法。注意事項(xiàng):對(duì)于INSERT 語句,要求理解默認(rèn)值約束、空值約束在插入時(shí)所 起的作用。實(shí)驗(yàn)內(nèi)容

      (1)使用INSERT 語句在數(shù)據(jù)庫的表中插入幾行記錄。(2)使用UPDATA 語句修改某個(gè)數(shù)據(jù)。(3)使用DELETE 語句刪除某行記錄。實(shí)驗(yàn)步驟

      (1)新建查詢窗口,選擇StudentCourseYYXXXX 為當(dāng)前數(shù)據(jù)庫。

      (2)在已建立StudentCourseYYXXXX 數(shù)據(jù)庫和StudentsYYXXXX、CoursesYYXXXX、SCYYXXXX 3 個(gè)表的基礎(chǔ)上,向StudentCourseYYXXXX數(shù)據(jù)庫中 的表更新數(shù)據(jù)。

      ① 向表StudentsYYXXXX 中插入(0601001,趙林, 男,1985-09-08,計(jì)算機(jī))的記錄。

      ② 向SCYYXXXX 表中添加一個(gè)學(xué)生的選課記錄,學(xué)號(hào)為0601001,所選的課

      程號(hào)為C2。SC表中有Sno、Cno、Grade 這3 個(gè)列。這里只知道學(xué)號(hào)和課程號(hào),不知道成績(jī)值。

      ③ 向表StudentsYYXXXX 中插入(0601002,張修雨,default)記錄,該記錄 的數(shù)據(jù)中default 表示默認(rèn)值‘男’,其他數(shù)據(jù)表示空值。

      ④ 用CREATE 語句建立表StudentBAK1YYXXXX,包含(與Students 的Sno、Sname、Sdept 相同)3 個(gè)字段,然后用INSERT SELECT 語句實(shí)現(xiàn)向

      StudentBAK1YYXXXX 添加StudentsYYXXXX 表中的計(jì)算機(jī)系學(xué)生的學(xué)號(hào)、姓名、所在系的信息。

      ⑤ 用 SELECT...INTO 語句實(shí)現(xiàn)把StudentsYYXXXX 表中1986 年后(包含

      1986 年)出生的學(xué)生的學(xué)號(hào)、姓名存儲(chǔ)到一個(gè)新表StudentBAK2YYXXXX。

      ⑥ 將姓名為【趙林】的同學(xué)的所在系改為【機(jī)電系】,愛好改為【足球】。

      ⑦ 將選修了課程名為【數(shù)據(jù)庫原理】的學(xué)生成績(jī)加5 分。⑧ 將StudentCourseYYXXXX

      數(shù)據(jù)庫的StudentBAK1YYXXXX 表中所有姓趙的 同學(xué)刪除。

      ⑨ 刪除計(jì)算機(jī)系選修成績(jī)不及格的學(xué)生選修記錄。⑩ 將除。StudentCourseYYXXXX

      數(shù)據(jù)庫的StudentBAK2YYXXXX 表中的所有行刪

      四.實(shí)驗(yàn)總結(jié)

      實(shí)驗(yàn)一要注意創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表時(shí)應(yīng)認(rèn)真,如果出現(xiàn)錯(cuò)誤,應(yīng)相應(yīng)地修改結(jié)構(gòu)或刪除。輸入SQL 語句時(shí)應(yīng)注意,語句中均使用西文操作符號(hào);實(shí)驗(yàn)二應(yīng)注意注意group和having以及where的搭配使用的情況;實(shí)驗(yàn)三注意注意輸入SQL 語句時(shí)均應(yīng)使用西文操作符號(hào),子句的使用,注意語句的層次嵌套關(guān)系和括號(hào)的配對(duì)使用問題;實(shí)驗(yàn)四注意輸入SQL 語句時(shí)均應(yīng)使用西文操作符號(hào),對(duì)于INSERT 語句,要求理解默認(rèn)值約束、空值約束在插入時(shí)所起的作用。注意插入,修改,新建表,刪除語句的寫法,并且掌握把原表中的數(shù)據(jù)轉(zhuǎn)存到新表中的語句寫法。

      下載數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告6-13[精選]word格式文檔
      下載數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告6-13[精選].doc
      將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

        10包三 李雅 100910306 實(shí)驗(yàn)報(bào)告 一、 實(shí)驗(yàn)題目: 數(shù)據(jù)庫基本操作實(shí)驗(yàn) 二、 實(shí)驗(yàn)?zāi)康模?掌握數(shù)據(jù)庫的建立、表的設(shè)計(jì)基本方法,通過實(shí)際操作熟練掌握數(shù)據(jù)庫的基本操作——數(shù)據(jù)的輸......

        數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

        實(shí)驗(yàn)7 索引和數(shù)據(jù)完整性的使用 1、 目的與要求 (1) 掌握索引的使用方法; (2) 掌握數(shù)據(jù)完整性的實(shí)現(xiàn)方法; 2、 實(shí)驗(yàn)準(zhǔn)備 (1) 了解索引的作用與分類; (2) 掌握索引的創(chuàng)建方法; (3) 理解數(shù)據(jù)......

        數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

        數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計(jì) 總結(jié)報(bào)告 學(xué)院: 軟件學(xué)院 專業(yè): 軟件工程 年級(jí): 2009 學(xué)號(hào): 20092647 姓名: 李野 1、開發(fā)環(huán)境 Windows7系統(tǒng) 2、DBMS系統(tǒng)架構(gòu) 采用向量的存儲(chǔ)結(jié)構(gòu)存儲(chǔ)數(shù)......

        數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

        課 程 實(shí) 驗(yàn) 報(bào) 告 課程名稱: 數(shù)據(jù)庫系統(tǒng)概論專業(yè)班級(jí):計(jì)科1207班學(xué)號(hào): U201215002 姓名: 李文勇 指導(dǎo)教師:江勝報(bào)告日期: 2015年6月8日計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 目 錄 1 實(shí)驗(yàn)一 基......

        《數(shù)據(jù)庫》實(shí)驗(yàn)報(bào)告(2012最新)

        《數(shù)據(jù)庫系統(tǒng)概論》 實(shí)驗(yàn)報(bào)告書 專業(yè)班級(jí) 學(xué) 號(hào) 姓 名 指導(dǎo)教師 安徽工業(yè)大學(xué)計(jì)算機(jī)學(xué)院計(jì)101 小七制作 夏小宅 戴小平 《數(shù)據(jù)庫系統(tǒng)概論》實(shí)驗(yàn)指導(dǎo)書 安徽工業(yè)大學(xué)計(jì)算......

        數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告

        實(shí)驗(yàn)一 PowerDesigner 的 CDM 應(yīng)用 1:實(shí)驗(yàn)?zāi)康?使用PowerDesinger進(jìn)行數(shù)據(jù)庫概念模型設(shè)計(jì),掌握CDM中的實(shí)體、實(shí)體屬性、實(shí)體與實(shí)體之間聯(lián)系的操作方法。 2:實(shí)驗(yàn)內(nèi)容建立一個(gè)“......

        數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告[精選]

        實(shí)驗(yàn)報(bào)告 1. 實(shí)驗(yàn)內(nèi)容與實(shí)驗(yàn)性質(zhì) 實(shí)驗(yàn)內(nèi)容:數(shù)據(jù)庫實(shí)例設(shè)計(jì) 實(shí)驗(yàn)性質(zhì):專業(yè)基礎(chǔ)綜合設(shè)計(jì)性實(shí)驗(yàn) 2. 實(shí)驗(yàn)?zāi)康呐c要求 實(shí)驗(yàn)?zāi)康模荷罨皵?shù)據(jù)庫設(shè)計(jì)”一章的課堂教學(xué),借助數(shù)據(jù)庫實(shí)例設(shè)......

        數(shù)據(jù)庫實(shí)驗(yàn)報(bào)告格式

        課程:數(shù)據(jù)庫原理及應(yīng)用 實(shí)驗(yàn)題目: 系:班級(jí):學(xué)號(hào): 姓名:任課教師:時(shí)間: 一、 實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)內(nèi)容三、實(shí)驗(yàn)環(huán)境四、實(shí)驗(yàn)前準(zhǔn)備五、實(shí)驗(yàn)步驟六、實(shí)驗(yàn)結(jié)果七、評(píng)價(jià)分析及心得體會(huì)......