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

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

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

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

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

      SQL實(shí)驗(yàn)報(bào)告總結(jié)

      時間:2019-05-12 14:28:44下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《SQL實(shí)驗(yàn)報(bào)告總結(jié)》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《SQL實(shí)驗(yàn)報(bào)告總結(jié)》。

      第一篇:SQL實(shí)驗(yàn)報(bào)告總結(jié)

      《數(shù)據(jù)庫系統(tǒng)概論(第四版)》

      學(xué)號: 姓名: 班級: 教師:

      學(xué)

      期實(shí) 驗(yàn) 總 結(jié) 與 心 得

      【實(shí)驗(yàn)名稱】 數(shù)據(jù)庫的創(chuàng)建 【實(shí)驗(yàn)內(nèi)容】

      1、新建sql注冊表。

      2、新建數(shù)據(jù)庫。主數(shù)據(jù)文件:邏輯文件名為student_data,物理文件名為student.mdf,初始大小為10mb,最大尺寸為無限大,增長速度為10%;

      數(shù)據(jù)庫的日志文件:邏輯名稱為student_log,物理文件名為student.ldf,初始大小為1mb,最大尺寸為5mb,增長速度為 1mb

      3、修改已注冊的sql server屬性為使用sql server身份驗(yàn)證。

      【實(shí)驗(yàn)名稱】 數(shù)據(jù)庫的附加、分離、導(dǎo)入導(dǎo)出及分離 【實(shí)驗(yàn)內(nèi)容】 1.數(shù)據(jù)庫文件的附加與分離(轉(zhuǎn)載于:sql實(shí)驗(yàn)報(bào)告總結(jié))2.數(shù)據(jù)庫文件的導(dǎo)入和導(dǎo)出 3..數(shù)據(jù)庫的刪除 4.修改數(shù)據(jù)庫

      【實(shí)驗(yàn)名稱】 數(shù)據(jù)庫的創(chuàng)建(書中作業(yè))【實(shí)驗(yàn)內(nèi)容】 1.在數(shù)據(jù)庫student中創(chuàng)建一個學(xué)生基本信息表 1.用企業(yè)管理其創(chuàng)建表 2.用查詢分析器創(chuàng)建表 2.sql server 2005的系統(tǒng)數(shù)據(jù)類型分為哪幾類?常用的數(shù)據(jù)類型有哪些?

      答:字符串類型、整型、長整型、短整型、浮點(diǎn)數(shù)類型、定點(diǎn)數(shù)類型、日期、時間。常用的數(shù)據(jù)類型有:字符串類型、整型、長整型、短整型、浮點(diǎn)數(shù)類型、定點(diǎn)數(shù)類型、日期、時間

      3.在數(shù)據(jù)庫student中創(chuàng)建一個名為t_couse(課程信息表)1.用企業(yè)管理其創(chuàng)建t_course表 2.用查詢分析器創(chuàng)建t_course 4.在數(shù)據(jù)庫student中創(chuàng)建一個名為t_score(學(xué)生成績)的表 5.sql server 2005 中有多少種約束?其作用分別是什么

      答:非空約束,作用指定某一列不允許空值有助于維護(hù)數(shù)據(jù)的完整性,因?yàn)檫@樣可以確保行中的列永遠(yuǎn)保護(hù)數(shù)據(jù)。

      主鍵約束,作用可以保證實(shí)體的完整性,是最重要的一種約束。唯一約束,作用指定一個或多個列的組合值具有唯一性,以防止在列中輸入重復(fù)的值。

      檢查約束,作用對輸入列或者整個表中的值設(shè)置檢查條件,以限制輸入值,保證數(shù)據(jù)庫數(shù)據(jù)的完整性。

      默認(rèn)約束,作用指定在插入操作中如果沒有提供輸入值。怎系統(tǒng)自動指定值。外鍵約束,作用主要用來維護(hù)兩個表之間數(shù)據(jù)的一致性。6.分別為t_course表和t_score表創(chuàng)建唯一性約束、檢查約束、默認(rèn)約束。篇二:sql server綜合實(shí)驗(yàn)報(bào)告

      華北科技學(xué)院計(jì)算機(jī)系綜合性實(shí)驗(yàn)

      實(shí) 驗(yàn) 報(bào) 告 課程名稱 數(shù)據(jù)庫系統(tǒng) 實(shí)驗(yàn)學(xué)期 2010 至 2011 學(xué)年 第 二 學(xué)期

      學(xué)生所在系部 計(jì)算機(jī)系 年級 二年級 專業(yè)班級

      網(wǎng)絡(luò)工程b093班

      學(xué)生姓名

      沈亞強(qiáng)

      學(xué)號

      200907024313

      任課教師

      郭紅 實(shí)驗(yàn)成績

      計(jì)算機(jī)系制

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

      1、學(xué)生上交實(shí)驗(yàn)報(bào)告時,必須為打印稿(a4紙)。頁面空間不夠,可以順延。

      2、學(xué)生應(yīng)該填寫的內(nèi)容包括:封面相關(guān)欄目、實(shí)驗(yàn)地點(diǎn)、時間、目的、設(shè)備環(huán)境、內(nèi)容、結(jié)果及分析等。

      3、教師應(yīng)該填寫的內(nèi)容包括:實(shí)驗(yàn)成績、教師評價等。

      4、教師根據(jù)本課程的《綜合性實(shí)驗(yàn)指導(dǎo)單》中實(shí)驗(yàn)內(nèi)容的要求,評定學(xué)生的綜合性實(shí)驗(yàn)成績;要求在該課程期末考試前將實(shí)驗(yàn)報(bào)告交給任課教師。綜合性實(shí)驗(yàn)

      中,所涉及的程序,文檔等在交實(shí)驗(yàn)報(bào)告前,拷貝給任課教師。任課教師統(tǒng)一

      刻錄成光盤,與該課程的期末考試成績一同上交到系里存檔。

      5、未盡事宜,請參考該課程的實(shí)驗(yàn)大綱和教學(xué)大綱。《

      數(shù)據(jù)庫系統(tǒng)

      》課程綜合性實(shí)驗(yàn)報(bào)告 篇三:數(shù)據(jù)庫上機(jī)實(shí)驗(yàn)報(bào)告+總結(jié)

      數(shù)據(jù)庫集中上機(jī)報(bào)告

      學(xué) 生: 馬志鵬 學(xué) 號: 0221090118 班 級: 02210901 專

      業(yè):計(jì)算機(jī)應(yīng)用技術(shù) 重慶郵電大學(xué)移通學(xué)院 2011年6月

      第一天:access數(shù)據(jù)庫基本操作 1 實(shí)驗(yàn)?zāi)康?/p>

      1、熟悉的掌握access數(shù)據(jù)庫結(jié)構(gòu)與創(chuàng)建

      2、了解創(chuàng)建、修改、刪除、查詢、保存等操作

      3、輸入數(shù)據(jù)創(chuàng)建、設(shè)計(jì)器創(chuàng)建、向?qū)?chuàng)建。2 實(shí)驗(yàn)內(nèi)容 3 實(shí)驗(yàn)結(jié)果

      1.2.2 2 access數(shù)據(jù)表的編輯

      第二天 數(shù)據(jù)表基本操作 1 表關(guān)系與編輯數(shù)據(jù) 1 實(shí)驗(yàn)?zāi)康模?/p>

      1、實(shí)現(xiàn)一對一,一對多,多對多的實(shí)體關(guān)系

      2、對“學(xué)生基本信息”表中的記錄進(jìn)行排序,按出生日期降序排列

      3、從“學(xué)生基本信息”表中篩選出所有計(jì)算機(jī)系男生的記錄

      4、從“學(xué)生基本信息”表中篩選出回族和蒙古族的所有學(xué)生記錄 3 2 實(shí)驗(yàn)內(nèi)容

      1.select 學(xué)生基本信息表.學(xué)生姓名, 成績檔案表.* from 成績檔案表 inner join 學(xué)生基本信息表 on 成績檔案表.學(xué)生學(xué)號 = 學(xué)生基本信息表.學(xué)生學(xué)號

      where(((學(xué)生基本信息表.學(xué)生姓名)=張冰冰));2 select 學(xué)生基本信息表.* from 學(xué)生基本信息表 where(((學(xué)生基本信息表.性別)=男)and((學(xué)生基本信息表.班級名稱)=計(jì)算機(jī)系));3 select 成績檔案表.c語言, 課程表.* from 成績檔案表, 課程表;4 select 學(xué)生基本信息表.*, 學(xué)生基本信息表.性別, 學(xué)生基本信息表.班級名稱 from 學(xué)生基本信息表 where(((學(xué)生基本信息表.性別)<>男)and((學(xué)生基本信息表.班級名稱)<>計(jì)算機(jī)系));5 select 學(xué)生基本信息表.*, 學(xué)生基本信息表.出生日期 from 學(xué)生基本信息表 where(((month([出生日期]))=9)and((day([出生日

      期]))=1));6 select 學(xué)生基本信息表.* from 學(xué)生基本信息表 where(((學(xué)生基本信息表.學(xué)生姓名)like 李*));3 實(shí)驗(yàn)結(jié)果 4 第3天 sql查詢設(shè)計(jì) 1 sql語言查詢 1 實(shí)驗(yàn)?zāi)康模?/p>

      熟悉了解sql語句 5 篇四:sqlserver實(shí)驗(yàn)報(bào)告—數(shù)據(jù)庫和表的創(chuàng)建

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

      課程名稱信息系統(tǒng)數(shù)據(jù)庫技術(shù) 實(shí)驗(yàn)名稱 數(shù)據(jù)表的管理 專業(yè)班級

      姓 名

      學(xué) 號 實(shí)驗(yàn)日期

      實(shí)驗(yàn)地點(diǎn) 2012—2013學(xué)年度 第 一 學(xué)期 篇五:數(shù)據(jù)庫上機(jī)實(shí)驗(yàn)報(bào)告sql server 2000 課程代碼:1010000450 數(shù)據(jù)庫 database 學(xué)分:3 總學(xué)時:48 實(shí)驗(yàn)學(xué)時:16 面向?qū)I(yè):信息與計(jì)算科學(xué),數(shù)學(xué)與應(yīng)用數(shù)學(xué)

      一、實(shí)驗(yàn)教學(xué)目標(biāo)

      數(shù)據(jù)庫是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的專業(yè)必修課程。課程內(nèi)容主要包括:數(shù)據(jù)模型、關(guān)系代數(shù)、關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言sql、關(guān)系系統(tǒng)、關(guān)系數(shù)據(jù)理論、數(shù)據(jù)庫設(shè)計(jì)方法。學(xué)習(xí)本課程的過程中,只有通過上機(jī)實(shí)驗(yàn),才能使學(xué)生真正深層次了解數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu),掌握數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)理論、技術(shù)和方法,掌握主流數(shù)據(jù)庫管理系統(tǒng)sql server 2000的應(yīng)用技術(shù)及數(shù)據(jù)庫應(yīng)用系統(tǒng)的設(shè)計(jì)、開發(fā)能力。

      二、實(shí)驗(yàn)教學(xué)基本要求

      認(rèn)真閱讀教材中與實(shí)驗(yàn)相關(guān)的章節(jié)內(nèi)容,提前做好實(shí)驗(yàn)準(zhǔn)備,做到在每個實(shí)驗(yàn)前明確實(shí)驗(yàn)?zāi)康?、掌握?shí)驗(yàn)的基本內(nèi)容及操作方法;在實(shí)驗(yàn)中正確使用實(shí)驗(yàn)設(shè)備,認(rèn)真觀察、分析實(shí)驗(yàn)結(jié)果;實(shí)驗(yàn)后要根據(jù)要求做好總結(jié),寫出實(shí)驗(yàn)報(bào)告。

      三、實(shí)驗(yàn)教材或?qū)嶒?yàn)指導(dǎo)書

      《數(shù)據(jù)庫系統(tǒng)概論》,薩師煊 王珊主編,高等教育出版社

      四、考核方式與評分辦法 實(shí)驗(yàn)成績評定分兩部分:上機(jī)實(shí)驗(yàn)操作占50%,實(shí)驗(yàn)報(bào)告占50%。

      五、實(shí)驗(yàn)項(xiàng)目設(shè)置

      六、實(shí)驗(yàn)內(nèi)容與實(shí)驗(yàn)方式

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

      安裝sql server 2000

      (一)實(shí)驗(yàn)內(nèi)容 1.安裝microsoft的數(shù)據(jù)庫服務(wù)軟件sql server 2000。以sql server2000企業(yè)版為例安裝教程

      第一步:打開安裝文件中的“autorun”文件,安裝程序會自動運(yùn)行出現(xiàn)版本選擇界面,我們以選擇企業(yè)版為例。

      第二步:在接下來的界面中選擇“安裝數(shù)據(jù)庫服務(wù)器”選項(xiàng)。

      第三步:這時出現(xiàn)安裝向?qū)?,出現(xiàn)“計(jì)算機(jī)名”窗口?!氨镜赜?jì)算機(jī)”是默認(rèn)選項(xiàng),其名稱就顯示在上面,我們按其默認(rèn)點(diǎn)“下一步”。

      第四步:接下來,在“安裝選擇”對話窗口中,同樣按其默認(rèn)項(xiàng)“創(chuàng)建新的sql server實(shí)例,或安裝客戶端工具”點(diǎn)下一步。

      第五步:在 用戶信息 窗口,輸入用戶信息,并接受軟件許可證協(xié)議。

      第六步:在 安裝定義窗口,選擇 服務(wù)器和客戶端工具 選項(xiàng)進(jìn)行安裝。我們需要將服務(wù)器和客戶端同時安裝,這樣在同一臺機(jī)器上,我們可以完成相關(guān)的所有操作,對于我們學(xué)習(xí)sql server很有用處。如果你已經(jīng)在其它機(jī)器上安裝了sql server,則可以只安裝客戶端工具,用于對其它機(jī)器上sql server的存取。

      第七步:在 實(shí)例名 窗口,選擇 默認(rèn) 的實(shí)例名稱。這時本sql server的名稱將和windows 2000服務(wù)器的名稱相同。第八步:在 安裝類型 窗口,選擇 典型 安裝選項(xiàng),并指定 目的文件夾。

      第九步:在 服務(wù)賬號 窗口,請選擇 對每個服務(wù)使用統(tǒng)一賬戶...的選項(xiàng)。在 服務(wù)設(shè)置 處,選擇 使用本地系統(tǒng)賬戶。如果需要 使用域用戶賬戶 的話,請將該用戶添加至windows server的本機(jī)管理員組中。

      第十步:在 身份驗(yàn)證模式 窗口,請選擇 混合模式...選項(xiàng),并設(shè)置管理員sa賬號的密碼。如果需要更高的安全性,則可以選擇 windows身份驗(yàn)證模式,這時就只有windows server的本地用戶和域用戶才能使用sql server了。

      第十一步:在 選擇許可模式 窗口,根據(jù)您購買的類型和數(shù)量輸入(0表示沒有數(shù)量限制)。每客戶表示同一時間最多允許的連接數(shù),處理器許可證表示該服務(wù)器最多能安裝多少個cpu。筆者這里選擇了 每客戶 并輸入了100作為示例。

      第十二步:約10多分鐘的安裝時間,然后打開開始菜單下的sql子目錄下的企業(yè)管理器。2.熟悉軟件的使用以及各個組成部分。

      第一:打開企業(yè)管理器,可以對本地的數(shù)據(jù)進(jìn)行管理,也可以登錄服務(wù)器端,即可以遠(yuǎn)程操作自己的數(shù)據(jù)庫 ;

      第二:登錄查詢分析器,可以通過sql管理語句,對數(shù)據(jù)庫進(jìn)行管理。

      (二)實(shí)驗(yàn)方式與分組要求

      老師先講解十分鐘,學(xué)生上機(jī)操作數(shù)據(jù)庫sql server2000,最后老師檢查操作結(jié)果。每次86組,每組1人。

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

      啟動sql server2000和建庫、表

      (一)實(shí)驗(yàn)內(nèi)容 1.啟動數(shù)據(jù)庫服務(wù)軟件sql server 2000。第一步:打開企業(yè)管理器,可以登錄服務(wù)器端,即可以遠(yuǎn)程操作自己的數(shù)據(jù)庫,登錄步驟如下; 第二步:左側(cè)方框中控制臺根目錄的子目錄的sql server組上,右擊,并新建sql server注冊?; 第三步:在“服務(wù)器”一欄里輸入想要登錄的服務(wù)器ip地址,選擇使用sql server身份驗(yàn)證,寫入登錄名和密碼,就可以登錄了。

      第四步:登錄查詢分析器,可以通過sql管理語句,對數(shù)據(jù)庫進(jìn)行管理。2.在sql server 2000中建立數(shù)據(jù)庫。

      第一步:通過企業(yè)管理器進(jìn)入服務(wù)器端以后,可以在數(shù)據(jù)庫文件里“新建數(shù)據(jù)庫”。第二步:輸入數(shù)據(jù)庫名稱。

      第三步:通過相關(guān)需求對數(shù)據(jù)庫的相關(guān)屬性進(jìn)行設(shè)置,然后完成。3.在數(shù)據(jù)庫上建立表。第一步:登錄企業(yè)管理器

      第二步:進(jìn)入自己的database,并打開“表”選項(xiàng);

      第三步:在表選項(xiàng)右側(cè)空白處,點(diǎn)擊右鍵,選擇“新建表?”;

      第四步:在彈出的窗口中,分別填寫列名,數(shù)據(jù)類型,長度和是否允許空值,然后關(guān)閉窗口。第五步:關(guān)閉窗口會彈出是否保存表,選擇是,接下來彈出的窗口中填寫表名即可。

      (二)實(shí)驗(yàn)方式與分組要求

      老師先講解十分鐘,學(xué)生上機(jī)操作數(shù)據(jù)庫sql server2000,最后老師檢查操作結(jié)果。每次86組,每組1人。

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

      sql server2000查詢分析器

      (一)實(shí)驗(yàn)內(nèi)容 1.啟動數(shù)據(jù)庫服務(wù)軟件sql server 2000的查詢分析器。第一步:在登錄企業(yè)管理器的前提下,登錄查詢分析器。

      第二步:登錄查詢分析器與登錄企業(yè)管理器類似,需要輸入ip地址或者如果是本地?cái)?shù)據(jù)庫,直接用windows身份驗(yàn)證即可。2.在查詢分析器中建立表。

      第一步:在查詢分析器命令欄里輸入以下語句: 定義一個學(xué)生-課程模式s-t create schema “s-t” authorization wang /*為用戶wang定義了一個模式s-t*/ 然后點(diǎn)擊“分析查詢”和“執(zhí)行查詢”。第二步:在查詢分析器命令欄里輸入以下語句:

      建立“學(xué)生”表student,學(xué)號是主碼,姓名取值唯一 create table student(sno

      char(9)primary key, /* 列級完整性約束條件*/ sname char(20)unique, /* sname取唯一值*/ ssex char(2), sage smallint, sdept char(20));然后點(diǎn)擊“分析查詢”和“執(zhí)行查詢”。

      (二)實(shí)驗(yàn)方式與分組要求

      老師先講解十分鐘,學(xué)生上機(jī)操作數(shù)據(jù)庫sql server2000,最后老師檢查操作結(jié)果。每次86組,每組1人。

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

      sql語言的ddl

      (一)實(shí)驗(yàn)內(nèi)容 1.用如下語句對表進(jìn)行操作:create table 建表;drop table 刪除表;alter table 更改表。

      create table student(sno char(4)primary key)drop table student /*當(dāng)student表與其他數(shù)據(jù)有級聯(lián)關(guān)系或者其他關(guān)系時,不能刪除。*/ alter table student add s_entrance date null/*向student表增加“入學(xué)時間”列,其數(shù)據(jù)類型為日期型*/ alter table student drop column sno /*刪除student表中的sno這一列,含有以下關(guān)系的列不能被刪除: ? 被復(fù)制列。

      ? 用在索引中的列。

      ? 用在 check、foreign key、unique 或 primary key 約束中的列。? 有相關(guān)聯(lián)的默認(rèn)值(由 default 關(guān)鍵字定義)的列,或綁定到默認(rèn)對象的列。? 綁定到規(guī)則的列。*/ 2.用如下語句對視圖進(jìn)行操作:create view 建視圖;drop view 刪除視圖。/*創(chuàng)建一個is_student視圖,視圖中返回來自于表student中sdept=’is’的所有學(xué)生的sno,sname,sage列*/ create view is_student

      as

      select sno,sname,sage

      from student where sdept=is /*刪除is_student視圖*/ drop view is_student 3.如下語句對索引進(jìn)行操作:create index 建立索引;drop index 刪除索引。/*創(chuàng)建一個stusname索引,在student 表中以sname列升序排列*/ create clustered index stusname on student(sname)/*刪除student表中的stusname索引*/ drop index student.stusname

      (二)實(shí)驗(yàn)方式與分組要求

      老師先講解十分鐘,學(xué)生上機(jī)操作數(shù)據(jù)庫sql server2000,最后老師檢查操作結(jié)果。每次86組,每組1人。

      實(shí)驗(yàn)五 sql語言的dml

      (一)實(shí)驗(yàn)內(nèi)容 1.啟動數(shù)據(jù)庫服務(wù)軟件sql server 2000的查詢分析器,用insert語句對表進(jìn)行插入操作。/*將一個新學(xué)生元組(學(xué)號:200215128;姓名:陳冬;性別:男;所在系:is;年齡:18歲)插入到student表中*/ insert into student(sno,sname,ssex,sdept,sage)values(200215128,陳冬,男,is,18)/*學(xué)生張成民的信息插入到student表中*/ insert into student values(200215126,張成民,18,cs,男)/*對表student中每一個系,求學(xué)生的平均年齡,并把結(jié)果存入表dept_age表中。*/ 第一步:create table dept_age(sdept char(15), /* 系名*/ avg_age smallint)/*學(xué)生平均年齡*/ 第二步:insert into dept_age(sdept,avg_age)

      select sdept,avg(sage)from student group by sdept 2.用update語句對表中已有的記錄進(jìn)行修改。/*將學(xué)生200215121的年齡改為22歲*/ update student set sage=22 where sno=200215121 /*將所有學(xué)生的年齡增加1歲*/ update student set sage= sage+1 /*將cs系全體學(xué)生的成績置零*/ update sc set grade=0 where cs=(select sdept from student where student.sno = sc.sno)3.用delete語句對表中已有的記錄進(jìn)行刪除。

      第二篇:sql上機(jī)實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)一(2.20)

      實(shí)驗(yàn)內(nèi)容:熟悉sql server 2005

      實(shí)驗(yàn)?zāi)康模赫莆誷ql服務(wù)器的啟動和停止方法、熟悉management studio 的操作界面和新建查詢。

      重點(diǎn):使用數(shù)據(jù)庫引擎啟動數(shù)據(jù)庫服務(wù)器、停止數(shù)據(jù)庫服務(wù);服務(wù)器的認(rèn)識以及如何啟動查詢分析器

      難點(diǎn):無

      實(shí)驗(yàn)操作:

      1.使用數(shù)據(jù)庫引擎啟動數(shù)據(jù)庫服務(wù)器:

      開始->程序->microsoft sql server 2005->

      sql server management studio->數(shù)據(jù)庫引擎->服務(wù)器名稱(選擇)->連接。

      2.分別打開數(shù)據(jù)庫,安全性和管理文件夾查看文件內(nèi)容。

      3.點(diǎn)擊新建查詢建立一個查詢窗口。

      4.打開model數(shù)據(jù)庫,查看其中的文件。

      實(shí)驗(yàn)二(2.27)

      實(shí)驗(yàn)內(nèi)容:使用manegement studio和查詢分析器創(chuàng)建數(shù)據(jù)表

      實(shí)驗(yàn)?zāi)康模赫莆談?chuàng)建數(shù)據(jù)表的方法

      重點(diǎn):學(xué)會使用查詢分析器創(chuàng)建數(shù)據(jù)表

      難點(diǎn):字段數(shù)據(jù)類型的選擇以及數(shù)據(jù)長度的定義

      實(shí)驗(yàn)操作:

      在basetest數(shù)據(jù)庫中創(chuàng)建學(xué)生表,學(xué)生(sno,sname,ssex,sage,sdept)。其中sno,sname,ssex,sdept字

      段數(shù)據(jù)類型設(shè)為char,長度為10;sage字段數(shù)據(jù)類型設(shè)為int!create table 學(xué)生

      實(shí)驗(yàn)三(3.5)

      實(shí)驗(yàn)內(nèi)容:添加表的約束

      實(shí)驗(yàn)?zāi)康模赫莆帐褂胊lter table 語句修改表的時候添加表的約束

      重點(diǎn):為表添加主鍵外鍵約束

      難點(diǎn):為列設(shè)置列級完整性約束;使用sql語句為表設(shè)置外鍵。

      實(shí)驗(yàn)操作:

      1:為學(xué)生表添加主鍵約束pk約束,設(shè)置sno為主鍵

      alter table 學(xué)生

      add constraint pk約束

      primary key(sno)

      實(shí)驗(yàn)四(3.12)

      查詢

      (一)實(shí)驗(yàn)?zāi)康模赫莆誗elect語句的使用方法

      實(shí)驗(yàn)重點(diǎn):Select語句的語法結(jié)構(gòu)

      實(shí)驗(yàn)難點(diǎn):連接查詢

      實(shí)驗(yàn)步驟:1.練習(xí)查找指定列的查詢

      2.練習(xí)查找經(jīng)過計(jì)算的列

      3.練習(xí)為查找字段設(shè)置字段別名

      4.Where子句的使用

      5.多表連接查詢

      實(shí)驗(yàn)五(3.19)

      查詢

      (二)實(shí)驗(yàn)?zāi)康模赫莆誗QL語句的使用方法

      實(shí)驗(yàn)重點(diǎn):統(tǒng)計(jì)查詢和嵌套查詢和聯(lián)合查詢

      實(shí)驗(yàn)難點(diǎn):子查詢的方法

      實(shí)驗(yàn)步驟:1.1.Compute與Compute By的區(qū)別

      2.子查詢 In與Exsits的區(qū)別

      3.比較運(yùn)算的子查詢

      4.聯(lián)合查詢

      5.OrderBy子句的使用

      6.統(tǒng)計(jì)函數(shù)的使用

      7.Group By 與Having的使用

      實(shí)驗(yàn)六(3.36)

      查詢

      (三)實(shí)驗(yàn)?zāi)康模赫莆誗QL語句的使用方法

      實(shí)驗(yàn)重點(diǎn):簡單查詢和統(tǒng)計(jì)查詢和嵌套查詢

      實(shí)驗(yàn)難點(diǎn):嵌套查詢的方法

      實(shí)驗(yàn)步驟:1.在student表中查詢CS系學(xué)生信息,并產(chǎn)生一個總?cè)藬?shù)行

      2.查詢學(xué)生信息,統(tǒng)計(jì)總?cè)藬?shù)并對每個系產(chǎn)生一個學(xué)生總?cè)藬?shù)行

      3.按系分組,并在每組下顯示本系中年齡最大學(xué)生年齡

      4.按系和性別分組并統(tǒng)計(jì)最大年齡和最小年齡

      實(shí)驗(yàn)七(4.2)

      實(shí)驗(yàn)內(nèi)容:創(chuàng)建索引

      實(shí)驗(yàn)?zāi)康模赫莆談?chuàng)建索引的方法

      重點(diǎn):掌握索引的基本功能

      難點(diǎn):使用sql語句創(chuàng)建索引

      實(shí)驗(yàn)操作:

      1:使用manegement studio 創(chuàng)建索引

      2:創(chuàng)建一表myfriend,所包含的屬性列為(名字char(10),性別(10),地址(100)),并在該表上基于名字創(chuàng)建一個唯一聚集索引wj索引,索引的填充為100。

      實(shí)驗(yàn)八(4.9)

      實(shí)驗(yàn)內(nèi)容:創(chuàng)建視圖

      實(shí)驗(yàn)?zāi)康模赫莆談?chuàng)建視圖的方法

      重點(diǎn):掌握視圖的基本功能

      難點(diǎn):使用sql語句創(chuàng)建視圖

      1、在basetest數(shù)據(jù)庫中創(chuàng)建一個MA系的學(xué)生信息視圖

      2、創(chuàng)建IS系女生選課信息,指定字段中文名

      3、使用WITH CHECK OPTION子句創(chuàng)建男生信息視圖

      4、在CS系學(xué)生信息視圖中查詢女生的信息

      5、修改cs系學(xué)生05008的年齡為21歲

      實(shí)驗(yàn)九(4.16)

      實(shí)驗(yàn)內(nèi)容:流程控制語句與用戶自定義函數(shù)的使用

      實(shí)驗(yàn)?zāi)康模赫莆樟鞒炭刂普Z句與用戶自定義函數(shù)的使用

      重點(diǎn):掌握自定義函數(shù)的創(chuàng)建

      難點(diǎn):表值用戶自定義函數(shù)的創(chuàng)建

      實(shí)驗(yàn)操作:

      1:計(jì)算1+2+3+...+100的和

      2:計(jì)算n!(n=10)

      3: 查詢是否有選修成績高于90分的學(xué)生,有則輸出該生信息,沒有就輸出“不存在選修成績高于90分的學(xué)生?!?/p>

      實(shí)驗(yàn)十(4.23)

      實(shí)驗(yàn)內(nèi)容:存儲過程、事務(wù)及游標(biāo)

      實(shí)驗(yàn)?zāi)康模赫莆沾鎯^程、事務(wù)及游標(biāo)的使用

      重點(diǎn):掌握存儲過程的創(chuàng)建、事務(wù)創(chuàng)建及游標(biāo)的使用方法

      難點(diǎn):帶參數(shù)的存儲過程的創(chuàng)建、游標(biāo)的使用

      實(shí)驗(yàn)操作:

      1:創(chuàng)建存儲過程ppa,能根據(jù)給定的‘系別’返回該系對應(yīng)的學(xué)生的sno,sname,ssex 2:創(chuàng)建存儲過程ppb,能根據(jù)給定的‘系別’統(tǒng)計(jì)該系的人數(shù),并將人數(shù)輸出顯示!

      第三篇:sql作業(yè)實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)報(bào)告—基本表的創(chuàng)建、查詢及更新任務(wù) 實(shí)驗(yàn)日期和時間:

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

      班級:

      學(xué)號:

      姓名:

      實(shí)驗(yàn)環(huán)境:

      硬件:

      軟件:

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

      本次實(shí)驗(yàn)的主要目的是…… 實(shí)驗(yàn)主要任務(wù):(不夠時另附頁)一.建立各個表的 SQL 語句。

      二.單表查詢操作及(任選三題結(jié)果截圖附上)。

      三.多表查詢操作其結(jié)果截圖(任選三題結(jié)果截圖附上))。

      四.數(shù)據(jù)更新及其結(jié)果截圖(最后附上四個基本表的數(shù)據(jù)截圖)。

      一.利用查詢分析器在數(shù)據(jù)庫 ShiYan 中建立以下四個數(shù)據(jù)表(S 表,P 表,J 表,SPJ表),并依次向各數(shù)據(jù)表中輸入相應(yīng)的數(shù)據(jù)記錄。

      (1)供應(yīng)商表 S(NO,SNAME,STATUS,CITY)

      SNO:表示供應(yīng)商編號,定義其為長度為 4 字節(jié)的字符串類型。

      SNAME:表示供應(yīng)商的名稱,定義其為最大長度為 20 字節(jié)的變長字符串類型。

      STATUS:表示供應(yīng)商的基本狀況,定義其為短整數(shù)類型。

      CITY:表示供應(yīng)商所在的城市,定義其為最大長度為 30 字節(jié)的變長字符串類型。

      要求:SNO 字段為表的主鍵,其屬性值必須不重復(fù)且不允許取空值,SNAME 屬性值不允許取空值。

      SNO SNAME STATUS CITY S1 精 益 20 天津 S2 盛 錫 10 北京 S3 東方紅 30 北京 S4 豐泰盛 20 天津 S5 為 民 30 上海 PNO PNAME COLOR WEIGHT P1 螺 母 紅 12 P2 螺 栓 綠 17 P3 螺絲刀 藍(lán) 14 P4 螺絲刀 紅 14 P5 凸 輪 藍(lán) 40

      (2)零件表 P(PNO,PNAME,COLOR,WEIGHT)

      PNO:表示零件的編號,定義其為長度為 4 字節(jié)的字符串類型。

      PNAME:表示零件的名稱,定義其為最大長度為 20 字節(jié)的變長字符串類型。

      COLOR:表示零件的顏色,定義其為長度為 6 字節(jié)的字符串類型。

      WEIGHT:表示零件的重量,定義其為實(shí)數(shù)類型且缺省值為 0。

      要求:PNO 字段為表的主鍵,PNAME 屬性值不允許取空值。

      (3)工程項(xiàng)目表 J(JNO,JNAME,CITY)

      JNO:表示工程項(xiàng)目的編號,定義其為長度為 4 字節(jié)的字符串類型。

      JNAME:表示工程項(xiàng)目的名稱,定義其為最大長度為 20 字節(jié)的變長字符串類型。

      CITY:表示工程項(xiàng)目所在的施工城市,定義其為最大長度為 30 字節(jié)的變長字符串類型。

      要求:JNO 字段為表的主鍵,其屬性值必須不重復(fù)且不允許取空值,JNAME 屬性值不允許取空值。

      P6 齒 輪 紅 30 JNO JNAME CITY J1 三

      建 北京 J2 一

      汽 長春 J3 彈 簧 廠 天津 J4 造 船 廠 天津 J5 機(jī) 車 廠 唐山 J6 無線電廠 常州 J7 半導(dǎo)體廠 南京(4)供應(yīng)商-零件-工程項(xiàng)目關(guān)聯(lián)關(guān)系表 SPJ(SNO,PNO,JNO,QTY)

      SNO:表示為某工程項(xiàng)目供應(yīng)零件的供應(yīng)商的編號,定義其為長度為 4 字節(jié)的字符串類型。

      PNO:表示某供應(yīng)商為工程項(xiàng)目所供應(yīng)的零件的編號,定義其長度為 4 字節(jié)的字符串類型。

      JNO:表示正在被施工的工程項(xiàng)目的編號,定義其為長度為 4 字節(jié)的字符串類型。

      QTY:表示某供應(yīng)商為工程項(xiàng)目所供應(yīng)的零件的數(shù)量,定義其為整數(shù)類型。

      要求:SNO、PNO、JNO 屬性值不允許取空值;SPJ 表的主鍵為 SNO、PNO 和 JNO 三屬性的組合;SNO、PNO、JNO 均為外碼,且 SNO 字段的取值參照 S 表中 SNO 字段的取值,PNO 字段的取值參照 P 表中 PNO 字段的取值,JNO 字段的取值參照 J 表中 JNO 字段的取值;QTY 屬性值不能為空值,且 QTY 屬性值限制在 1~10000 范圍內(nèi)。

      SNO PNO JNO QTY

      S1 P1 J1 200 S1 P1 J3 100 S1 P1 J4 700 S1 P2 J2 100 S2 P3 J1 400 S2 P3 J2 200 S2 P3 J4 500 S2 P3 J5 400 S2 P5 J1 400 S2 P5 J2 100 S3 P1 J1 200 S3 P3 J1 200 S4 P5 J1 100 S4 P6 J3 300 S4 P6 J4 200 S5 P2 J4 100 S5 P3 J1 200 S5 P6 J2 200 S5 P6 J4 500 二、針對實(shí)驗(yàn)數(shù)據(jù)庫 ShiYan,完成以下單表查詢操作:

      1.查詢?yōu)楣こ?J1 供應(yīng)零件的供應(yīng)商號碼 SNO。

      2.查詢?yōu)楣こ?J1 供應(yīng)零件 P1 的供應(yīng)商號碼 SNO。

      3.找出所有供應(yīng)商的名稱和所在城市。

      4.找出零件的所有信息,以及僅找出零件的顏色和重量。

      5.找出使用供應(yīng)商 S1 所供應(yīng)零件的工程號碼。

      6.找出為工程供應(yīng)零件的總數(shù)量不低于 500 的供應(yīng)商號碼及供應(yīng)總數(shù)量,結(jié)果按供應(yīng)商號碼分類并且按供應(yīng)總數(shù)量降序排列。

      7.從 J 表中分別檢索出第 1 條及前 33%的工程項(xiàng)目信息。

      8.統(tǒng)計(jì) P 表中顏色為紅色的零件的個數(shù),并指定該查詢列的名稱為“紅色零件數(shù)”。查詢 P 表中各工程項(xiàng)目編號,名稱及重量按 86%計(jì)算后的信息,其中重量按 86%計(jì)算后的查詢列名改為“零件凈重”。

      10.查詢 SPJ 表,要求查詢結(jié)果式樣為“供應(yīng)商 S1 為工程項(xiàng)目 J1 供應(yīng)零件 P1 的數(shù)量為300”。

      11.查詢 S 表 STATUS 值大于 20 且小于 40,或 SNAME 字段值的第一個字為“精”或第三個字為“益”或“民”的供應(yīng)商信息。

      12.查詢 J 表中 JNAME 值為三建和機(jī)車廠的工程項(xiàng)目信息。

      三、完成以下多表查詢操作:

      1.查詢?yōu)楣こ?J1 供應(yīng)紅色零件的供應(yīng)商號碼 SNO。

      2.查詢沒有使用天津供應(yīng)商生產(chǎn)的零件并且當(dāng)前工程所使用零件的顏色全部為紅色的工程號 JNO。

      3.查詢至少選用了供應(yīng)商 S1 所供應(yīng)的全部零件的工程號 JNO。

      4.找出工程項(xiàng)目 J2 使用的各種零件的名稱及其重量。

      5.找出上海廠商供應(yīng)的所有零件號碼。

      6.找出使用上海產(chǎn)的零件的工程名稱。

      7.找出沒有使用天津產(chǎn)的零件的工程號碼。

      8.找出重量最輕的紅色零件的零件編號 PNO。

      9.找出供應(yīng)商與工程所在城市相同的供應(yīng)商提供的零件號碼。

      10.找出所有這樣的一些<CITY,CITY,PNAME>三元組,使得第一個城市的供應(yīng)商為第二個城市的工程供應(yīng)零件的名稱為 PNAME。

      11.重復(fù)第 15 題,但不檢索兩個 CITY 值相同的三元組。

      12.找出供應(yīng)商 S1 為工程名中含有“廠”字的工程供應(yīng)的零件數(shù)量總和。

      四、針對實(shí)驗(yàn)數(shù)據(jù)庫 ShiYan,完成下列數(shù)據(jù)更新操作:

      1.在 S 表中插入元組“s6,華譽(yù),40,廣州,02085268888”。

      2.在 J 表中插入元組“j8,傳感器廠”。

      3.對每一個供應(yīng)商,求他為各種工程供應(yīng)零件的總數(shù)量,并將此結(jié)果存入數(shù)據(jù)庫。

      4.將 P 表中 PNO 值為 p6 的元組的 color 屬性值改為綠,weight 屬性值改為 60。

      5.將 SPJ 表中前 4 個元組的 qty 屬性值統(tǒng)一修改為 300。

      6.將 S 表中 city 屬性名含有“京”或“津”的相應(yīng) status 屬性值增加 100。

      7.將供應(yīng)商 s2 為“一汽”工程項(xiàng)目所供應(yīng)的零件數(shù)量修改為 2000。

      8.將全部紅色零件的顏色修改為淺紅色。

      9.由 s5 供給 j4 的零件 p6 改為由 s3 供應(yīng),請?jiān)跀?shù)據(jù)庫中作必要的數(shù)據(jù)修改。

      10.在 SPJ 表中新增一列屬性名為 SDATE 的屬性列,對該表中的每一元組在 SDATE 屬性列上填上實(shí)驗(yàn)當(dāng)時的日期和時間。

      第四篇:SQL實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)四觸發(fā)器實(shí)驗(yàn)

      (一)

      after

      觸發(fā)器

      (1 1)

      在l l i neitem 表上定義一個 after 觸發(fā)器, , 當(dāng)修改列項(xiàng)目e e x tendedprice d i scount

      x tax 時, , 要把 s orders 表得to o tal pri ce e 一起修改, , 以保證數(shù)據(jù)一致性

      C RE ATE T RIGGER

      trig _line ite m_ pr ice_ update on line it em fo r upda te

      a as

      begin i f(UPDATE(ex tend edprice)

      o r UPDATE(tax)

      or UPD AT E(di scou nt))begin

      -— 聲明游標(biāo)變量指向 inserted 表

      d eclare

      cursor_inserted c urs or

      rea d_only

      o for select order key,linenu mber,exte nd edpr ice, dis coun t, tax

      from

      in ser ted

      —-息信找查取獲量變明聲? 聲明變量獲取查找信息

      de clare order key in t, @linenumb er

      int,exte nd edprice

      real,dis scount real,tax real

      —-打開游標(biāo) epo? en cursor_i ns ert ed

      —-標(biāo)游取讀? 讀取游標(biāo)

      fe tch

      next

      from cur sor _i ns erte d int o @o rderkey, @lin enumber,e ext ende dprice, @di scount,t ax

      w whi le FETC H_S TATUS =0 nigeb? n

      ? —-聲明一個變量保存重新計(jì)算得新價格 ced?? ecl are @n ew_tota lpri ce

      r eal

      ? select @n ew_t otal price= @ext en dedpr ice *(1 -@di scou nt)*(1 +@tax)

      —-用新得總價格變量更新 orders 表得 t ot alprice pu?? update orde rs

      se t tot alpri ce= new_totalprice where or derkey=orde rkey

      en hctef? ext f ro m cur sor_i nser ted int o @order ke y, @li nenum ber, @ex tende dp rice,discoun t, @tax

      dne?llaed? locate c ur sor_i nser te d e end end ?(2)在 在 linei tem表上定義一個 aftr er 觸發(fā)器, , 當(dāng)增加一項(xiàng)訂單明細(xì)時, ,自動修改 s orders 表得 total p rice, 以保證數(shù)據(jù)一致性

      CREATE TR IGGER tri g_ lineit em_price_ in sert on l ine item f for inse rt

      a s begin ——向指量變標(biāo)游明聲? 聲明游標(biāo)變量指向ins erted 表

      de clare

      c ursor_inse rted

      cursor

      read_ onl y

      ? for s ele ct orderkey,linenumbe r,ex te ndedp ric e,di scou nt,t ax

      from ins serte d

      --聲明變量獲取查找信息 ed? eclare @orde rk ey

      int, @lin enumber int,e xten dedp rice

      real, @discount

      real, @ta x real -—? - 打開游標(biāo)

      open cursor_i ns erte d --? - 讀取游標(biāo)

      fe tc h

      nex t

      f rom

      cu rsor_ins erted

      into

      @o rd erkey,li nen umbe er r, ex ten ded pric e,dis count,tax ihw? ile @@FE TCH_ STATU S=0 eb? egin

      -—格價新得算計(jì)新重存保量變個一明聲?? 聲明一個變量保存重新計(jì)算得新價格

      ced? clare @n ew_tot alprice real

      celes? ct new _to ta lprice= @extend edp rice *(1-d is count)*(1+tax)—-新更量變格價總得新用?? 用新得總價格變量更新orders 表得totalpri ce

      ? u pda te

      or ders s et

      t ota lpric e=total pric e+ @new_ tota lpr ice w wh he re o rderke y=orderkey

      tef? etch next from cursor_ ins erte d into o rder key, @l inen umber,e xtended dp ric e, @disc ou nt, @t ax

      e end aed? deall oca te cu rsor_in serted en d

      (3)

      在l in e ite m表上定義一個a ft er觸發(fā)器, , 當(dāng)刪除一項(xiàng)訂單明細(xì)記錄時, ,自動修改 orders 表得 tot a lprice, 以保證數(shù)據(jù)一致性

      CREATE TRI GG ER trig _line item_price_de let e

      on line item fo r de let e

      A AS begin

      --聲明游標(biāo)變量指向delet ed 表

      de clar e curso r_d eleted cursor

      re ad _on ly

      es

      rof?? ele ct ord erk ey,line numbe r,extende dp rice,discoun t, tax

      from

      del eted -? -- 聲明變量獲取查找信息

      declare ord erkey int,linenum be r

      int,extendedp ri ce r eal,discou nt real,ta x real -—? -

      打開游標(biāo) epo? en c urso r_ deleted

      ——標(biāo)游取讀? 讀取游標(biāo) ef? etch next fr om cur sor_delete d in to

      order ke y,l inenumb er,ext end dedprice, @di scoun t,tax

      wh ile @FETCH_STATUS=0

      begi n

      -— 聲明一個變量保存重新計(jì)算得新價格

      ? declare @ne w_ to talpric e real

      ? s selec t @new_t otalpr ice= @exte nde dpri ce*(1-@disco unt)*(1+ tax)

      -? -— 用新得總價格變量更新orders 表得tot alp rice u?? upd at(yī)e

      orders set t otalpri ce=to talpr ice-@new _totalp rice wh er e order key= @ord erkey

      fetch

      n ext f rom cursor_inse rt ed in to orderkey, @line numbe r,extende ed dprice, @d iscou nt,t ax dne? nd

      d deal lo cat e cur sor_inse rted e end((4 4))驗(yàn)證 up d at e觸發(fā)器

      — -查瞧 號訂單得 to ta a l pr i ce

      selec t

      fro o m

      o o r ders where

      orde r key=1 8 30;

      — -查瞧明細(xì)表得相關(guān)信息

      se l ect *

      f ro m

      lin ei i te e m

      w here or de e r key=183 0

      and l ine num m be e r =1;

      —— 驗(yàn)證 e update 觸發(fā)器

      updat e

      lineitem set t ax=tax+0、05

      whe re orderkey=1830;

      (二)

      i i n stead

      of

      觸發(fā)器

      ((1))

      在 在 lineit em 表上定義一個ins tead o f upda te觸 發(fā)器, 當(dāng)修改明細(xì)表中得數(shù)量 量quan ti ty 時, 應(yīng)先檢查供應(yīng)表par tsupp 得av ai lqty 就是否足夠, 不足夠則拒絕執(zhí)行, 否則執(zhí)行并修改相應(yīng)數(shù)值以保證數(shù)據(jù)一致性 于 由于 in stead

      of 觸發(fā)器更新某個表會使得該表上其她不滿足更新列不能更新,因 因用 此逆向思維使用 a fter 觸發(fā)器實(shí)現(xiàn)相同效果 即先更新 qu antity, 再比較av ailq qt ty, 如果滿足更新數(shù)量, 就修改partsupp 得 表得 a vailqty, 如果不滿足, 則把lineitem得quantity 更新之后得數(shù)據(jù)重新修改回來 c create trigge r trig_lin eit em_quanti ty_ upda te

      on

      li neit em f or upda te

      as begin if UPDATE(qu ant ity)b begin ——向指別分量變標(biāo)游明聲? 聲明游標(biāo)變量分別指向 i nserted 表與 d el eted 表 ed? declare c urso r_inser ted

      cur sor

      r ead_on ly

      for

      tceles?? t

      orde rkey, partk ey,s uppkey,lin enum ber, quantit y fr om i nserted

      decl are

      cursor_de leted c urs or

      rea d_ onl y

      f or select quantity

      fr om deleted

      -—息信找查取獲量變明聲? 聲明變量獲取查找信息

      decl are

      @qu an tity _dif f_lineitem i nt,q uanti ty_pa rtsup p i nt ced? clare suppkey int, @par tke y in t,o rd erkey i nt,unenil?? um ber int ,qty _inserted in t , @qty_delete d int

      -- 打開游標(biāo) ruc nepo? rsor_in sert ed po? open cur sor_d eleted

      -—量變給賦值數(shù)標(biāo)游取讀? 讀取游標(biāo)數(shù)值賦給變量 f? fet ch next from

      cu rsor_ insert ed

      ? i into or de rk ey,pa rtkey, @suppk ey, @line nu mber, @qty _ins erte d

      f et ch

      next from

      cursor _d eleted

      int o q ty _de lete d

      whi le fe tch_st at(yī)us=0 geb? egin

      --計(jì)算訂單明細(xì)修改時, 訂購數(shù)量得變化值 inserte d表項(xiàng)-d elet ed表項(xiàng)

      s sel ect quantity_d if f_ li neit em= @q ty _in se rte d—@ @q ty_delete ed

      ? --從parts upp 表獲取ava ilq ty值, 注意partsupp 表得主鍵為(partk ey,suppke ey)tceles?? t @quanti ty_p ar tsupp =av ailq ty fro m pa rtsu pp

      w?? wh er e suppkey= suppke y

      and part key= @par tk ey

      -—斷判始開?? 開始判斷

      geb? begi n

      fi? f quant ity _d iff_ lin eite m=0

      ?

      ? p rin t “ 更新得數(shù)量與原表中得值相同, 不需要更新”

      e ls e if @quantit y_d iff_lin eitem 〈=q uantity_partsupp

      ?

      be gin

      ? pu?? pd at(yī)e partsupp

      s et avail qty= availqty-@qua ntit y_d iff_li ne item

      ? pus erehw? ppkey=suppkey

      and

      p artkey= @par tke y

      ?

      ? p rint “ 兩個表都更新成功’ ?

      ??ne? nd

      els e

      igeb?? in

      ? u?? update li nei tem

      set

      quantit y=quantity+ @quanti ty_diff_linei tem

      whe re o rd erke y=@orde rke y and li nenu mber= @li ine number

      ?

      p ri nt '更新失敗”

      ?? end

      ? e nd ef?? etch ne xt

      fr om c urso r_i nserted

      i nto @ord erke y, @partkey,s upp key, @linenumb er, @qt y_ ins ert ed

      f etch ne xt from curso r_de leted into @qt y_d elet ed dne? nd

      d eallocat e cur sor _i nserte d

      dealloc at(yī) e cursor_de le ted e end e end(2)在 在 l ineite m表上定義一個 instea d of in sert 觸發(fā)器, 當(dāng)插入明細(xì)表中一條記錄 時 時, 應(yīng)先檢查供應(yīng)表par tsupp 得 得 ava il qt y就是否足夠 qu anti ty 得數(shù)量 c rea te t rig ger tri g_lineitem_q ua nti ty_ insert

      on

      line item i instead of inser t as b begin

      -— 聲明游標(biāo)變量指向 inserte d表

      d eclar e cur sor_inserte d cur sor

      rea d_ only f or

      s?? select or derk ey,pa rtkey,sup pk ey, lin en umber,q uantity

      f rom ins er ted

      -—

      聲明變量獲取查找信息

      dec lare quantity int, @av ailq ty i nt, @suppkey

      in t, @partkey

      in nt t, @o rderkey int, @linenu mber int

      -—標(biāo)游開打? 打開游標(biāo) c nepo? curs or_ins erted -? -— 讀取游標(biāo)

      f etc h next fro m cursor_insert ed int o @orde rkey,partkey,@ @s suppkey, @linenumber,qu antity

      wh ile @@FETCH_S TATUS= 0 igeb? in

      --為變量賦值

      a tceles? availqty y

      = =av ai lqt y fr om

      partsupp

      w? whe re suppkey =@su ppk ey and part ke y= partke y

      ? if @quant ity 〈= @avail qt y

      -— 如果可以更新

      b? begin /??? /*將 將 insert ed 表中得記錄插入到明細(xì)表*/

      ? sni? sert

      i nto l ineite m select *

      from i nserted

      ro=yekredro

      erehw?? rderk ey and

      linenumb er = @linenumber */??新更時同? *同時更新 part supp 表得數(shù)量*/

      ?? u upd ate pa rtsup p set a vailqty=availqty-@quanti ty

      ?

      erehw? e sup pke y= @sup pkey and partkey=part key

      p pr int ’pa arts upp 表有足夠得貨物可以滿足 lin eitem 得quan tity y, 插入成功’

      end

      else

      begin

      ?? p rint t

      ' 'pa rt sup p表沒有足夠得貨物可以滿足 l ineitem 得 得 q uantity,插入失敗’

      dne?f?? fetc h next from curso r_ins ert ed in to @ord erkey, partkey, suppkey, @li inenumbe r, qu antity e? en d

      deall ocat e cursor_ inserted end(3)在 在 line ite m表上定義一個 inste ad of del ete 觸發(fā)器,當(dāng) 當(dāng) 刪除 明細(xì)表中記錄 時 時, 同時改變表 供應(yīng)表 partsupp 得ava il qty y 數(shù)值 c re at(yī)e trigge r tri g_ lin eit em_quanti ty_ del ete o n line item inste ad of del ete as be gin

      —-聲明游標(biāo)變量指向deleted 表

      de cla re curs or_ del eted c ursor

      read _only for

      les?? elect or derke y, par tkey,sup pkey, linenumbe r,quan tity fr om deleted -? --聲明變量

      decl are s upp key i nt, par tke y

      int, @orde rkey int,linen umb er

      int, @qua ant it y int

      —-標(biāo)游開打? 打開游標(biāo)

      open

      cursor_deleted

      -—標(biāo)游取讀? 讀取游標(biāo)

      f fetch next fr om

      curs or _del et ed

      in to @ord erkey , @partkey,s uppke ey, @lin en umber,q ua ntity

      whi le

      F FET CH_ STATUS=0 igeb? in

      */*除刪? *刪除*/

      ? de let e from

      lineite m where linenu mber= line number and o rde rkey =ord der key

      */新更時同? 同時更新 pa rt supp 表得數(shù)量*/

      u pdate

      parts upp se t

      availqt y=a vai lq ty+quant ity

      ? where s uppke y= @s uppkey a nd par tk ey= @p ar tkey

      ? p rin t

      ’ 刪除成功, 并且已經(jīng)把貨物數(shù)量歸還到 p ar tsup p里“ f?? fetc h ne xt fr om

      curso r_del eted

      into @ord er ke y,p ar tkey,@ @suppkey, @lin enu mber,quanti ty ne? nd ed? ea lloc at(yī)e cursor_ delete d end(4)驗(yàn)證 update 觸發(fā)器--查瞧li neit em 得quan tit y select *

      fr om

      lin eit em whe re or derk ey =1830

      and li nenum ber=1;

      —— 查詢partsupp 表得ava ilqt y se lect * from part supp w here suppk ey =(select

      supp key fr om

      lin e

      item w here ord erkey=18 30)

      and partk ey

      =(s elec t part key from lin eite m wh er e

      order key =18 30 a nd linenu mber=1)

      ---更新數(shù)量過大

      —— 更新得值與原值相同

      ---更新到+ + 2 00 數(shù)量, , 成功

      update

      li neitem set

      quant ity

      =q uanti ty+ 200

      where order key=1830

      and lin en umber = 1;

      --更新 +2 00 成功后l ineite m得 quanti ty y 變化

      —— 更新+200 成功后par ts upp 表得a va ilqty 變化

      實(shí)驗(yàn)到此。所有創(chuàng)建得觸發(fā)器結(jié)果

      刪除觸發(fā)器

      dr op trigger tri g_li nei tem_de lete;實(shí)驗(yàn)六存儲過程實(shí)驗(yàn)

      (1 1)

      定義無參數(shù) 得存儲過程并執(zhí)行

      更新所有訂單總價

      go?

      CREATE

      PROCED URE Pro c_Ca lTotalP ri ce

      AS BEGIN

      up date

      o rders set to talprice =

      (sele ct sum(exte ndedprice*(1-discount)*(1+ tax))

      ? fr om li nei tem

      erehw? orders、orderkey= li neite m。o rderke y)END

      go 執(zhí)行此存儲過程

      exec P ro c_CalTotal Pric c e;;

      (2 2)

      定義有參數(shù)得存儲 過程并執(zhí)行

      更新給定訂單號得總價

      g go create pro cedu re P ro_Cal TotalP rice 4Ord er @id_ order

      intege r a as be gin

      u up date e

      o orders set total price=(les? lect SU M(ext en ded price*(1 -di sc ount)*(1 +tax))

      ? fr om li neit em

      ? whe re

      orde rs。or derke y=lin eite m。orderkey)end g o 執(zhí)行此存儲過程 exe c P ro_ CalTota lPr ice 4Order @id_ order=2;((3))

      定義有局部變量得存儲過程 更新某一個顧客所有訂單得總價 g o cr eate

      procedure Proc_Ca lTot alPr ice4Custo me r n ame _cus to mer varc har(50)as

      dec lare cus tk ey _c usto mer i nt b egin tceles? t

      cus tke y_cu stomer=cu st key

      from

      cu sto mer

      where name _customer =RTRI M(n ame)

      u pdate order s set to talp ri ce=(tceles?? t S UM(exte nde dp rice *(1 -dis count)*(1+tax))rf?? rom li neite m

      w? wher e orders、order key=lineitem。or derke y

      ? and

      o rde rs、cust key= @c ustkey _cust omer)?e nd go 執(zhí)行此存儲過程

      e xec Pro c_CalT ot alPr ic e4C ustome r name_custom er=” 艾錦亮’;查瞧結(jié)果 u pdate

      linei te m set

      ex tende dpric e=1 00 , ta x=0.25 where orderkey=“1 830’;s elect * from

      l ineite m

      w here order key ='183 0’;

      s elect * fr om or ders wh ere custke y=(sele ct cus tk ey from custo mer whe re name=’ 艾錦亮’);

      (4)

      定義一個帶輸出參數(shù)得存儲過程 更新某個顧客得所有得訂單總價, 并輸出總價 go crea te proc edure Proc_C alT otalP ri ce4Custo me r2

      na me_ cu st ome r va rch ar(50), totalpr ice_ord er real out put

      as —— 聲明一個變量存儲 name 對應(yīng)得顧客編號 d eclar e @c us tkey _cus tomer integer

      —— 為該變量賦值

      se lec t c ustke y_cu sto mer =cu stkey

      from cus tome r w here n ame_ customer=R TRIM(n ame)begi n -? -- 更改訂單總價

      up date

      o rd ers

      set t otalp rice=(se lec t SUM(ext endedprice*(1-dis count)*(1+tax))

      f? fr om l in eitem rehw?? ere

      orders。o rderk ey=li neit em.ord erk ey、sredro dna?、c ustkey =@custkey_ custome r)

      -— 為返回變量賦值

      select

      totalprice_order=total pri ce fro m orders

      ? w here custk ey= @c ustkey_c ustom er

      ?

      e nd go —-執(zhí)行帶有輸出參數(shù)得存儲過程要聲明輸出參數(shù)變量 declare t otalp rice re al;exe c Proc_ Cal Tota lPrice4C ustomer2

      ” 艾錦亮 ', @to talpri ce

      output;--在屏幕上輸出返回值結(jié)果

      selec t t otalpri ce;

      實(shí)驗(yàn)到此, , 所有結(jié)果顯示

      (5 5)

      修改存儲過程名

      exec sp_renam e ’Pr o_Cal TotalPrice4Ord er",’C alTotalPr ice4 Or der';

      (6)編譯存儲過程

      exe c sp_ re compile ’CalTotalPric ce 4Order’;

      (7)刪除存儲過程

      d drop

      proc edure CalT otalPric e4Orde r;e exe c sp_h elptext CalT ot alPrice4 Order;

      第五篇:SQL數(shù)據(jù)庫系統(tǒng)_實(shí)驗(yàn)報(bào)告2

      實(shí)驗(yàn)時間:2014年4月1日

      實(shí)驗(yàn)名稱:數(shù)據(jù)庫表的管理與查詢語句

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

      1、熟練掌握數(shù)據(jù)表的創(chuàng)建、修改和刪除方法

      2、熟練掌握表中數(shù)據(jù)的插入、修改、刪除和查詢方法

      3、熟練掌握SQL語句的使用方法

      4、理解數(shù)據(jù)表的約束及其使用

      實(shí)驗(yàn)原理:

      數(shù)據(jù)庫是保存數(shù)據(jù)的集合。表是數(shù)據(jù)的集合,由行列構(gòu)成,行又被稱為記錄,列被稱為字段。SQL全稱是Structured Query Language,其主要有功能有:創(chuàng)建數(shù)據(jù)庫并定義表的結(jié)構(gòu)、查詢需要的數(shù)據(jù)、更新或者刪除指定的數(shù)據(jù)、管理數(shù)據(jù)庫。

      儀器與材料:

      裝有Windows操作系統(tǒng)的PC機(jī)一臺,SQL Server安裝包ISO鏡像

      實(shí)驗(yàn)步驟:

      1、加載示例數(shù)據(jù)庫,查看示例數(shù)據(jù)庫及內(nèi)部的數(shù)據(jù)庫表結(jié)構(gòu)

      2、向“學(xué)生基本信息表”中添加“出生日期”字段

      3、刪除“學(xué)生基本信息表”中“年齡”字段

      4、刪除表“教師基本信息表”

      5、向“學(xué)生基本信息表”中添加5條記錄

      6、修改“學(xué)生基本信息表”中學(xué)號為3的學(xué)生的姓名為“張三”

      7、刪除“學(xué)生基本信息表”中姓名為“李四”的學(xué)生信息

      8、查詢“學(xué)生基本信息表”中所有學(xué)生的所有信息

      9、查詢“學(xué)生基本信息表”中所有男生信息

      10、查詢“學(xué)生基本信息表”中所有19歲以上學(xué)生信息

      11、查詢“學(xué)生基本信息表”中所有姓“張”的學(xué)生信息

      12、查詢“學(xué)生基本信息表”中所有選修103號課程的學(xué)生信息

      實(shí)驗(yàn)記錄:

      1、加載示例數(shù)據(jù)庫,查看示例數(shù)據(jù)庫及內(nèi)部的數(shù)據(jù)庫表結(jié)構(gòu)

      2、向“學(xué)生基本信息表”中添加“出生日期”字段

      ??

      3、刪除“學(xué)生基本信息表”中“年齡”字段

      ??

      4、刪除表“教師基本信息表”

      ??

      (以下略)

      討論及問題回答:

      嘗試查詢所有選修了“SQL數(shù)據(jù)庫系統(tǒng)”并且成績優(yōu)秀的學(xué)生信息。

      下載SQL實(shí)驗(yàn)報(bào)告總結(jié)word格式文檔
      下載SQL實(shí)驗(yàn)報(bào)告總結(jié).doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點(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ù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        SQL數(shù)據(jù)庫系統(tǒng)_實(shí)驗(yàn)報(bào)告45篇

        實(shí)驗(yàn)四 實(shí)驗(yàn)時間:2014年4月29日 實(shí)驗(yàn)名稱:T-SQL、存儲過程、觸發(fā)器 實(shí)驗(yàn)?zāi)康模?1、掌握T-SQL常量、變量、運(yùn)算符、表達(dá)式、函數(shù)的使用方法 2、掌握T-SQL流程控制語句使用方法 3......

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

        數(shù)據(jù)庫原理及實(shí)驗(yàn)報(bào)告 實(shí)驗(yàn)6 視圖 實(shí)驗(yàn)?zāi)康模?)掌握交互式創(chuàng)建、刪除視圖的方法 2)掌握使用SQL創(chuàng)建、刪除視圖的方法 3)掌握交互式更新視圖的方法 4)掌握使用SQL更新視圖的方法 實(shí)......

        SQL數(shù)據(jù)的定義實(shí)驗(yàn)報(bào)告

        實(shí)驗(yàn)1、數(shù)據(jù)定義班級:計(jì)自班姓名:學(xué)號:1、實(shí)驗(yàn)?zāi)康氖煜QL的數(shù)據(jù)定義語言,能夠熟練地使用SQL語句來創(chuàng)建和更改基本表,創(chuàng)建和取消索引。2、實(shí)驗(yàn)內(nèi)容l用SSMS創(chuàng)建數(shù)據(jù)庫University_M......

        sql實(shí)驗(yàn)報(bào)告6[5篇范例]

        閩 南 師 范 大 學(xué) 實(shí) 實(shí) 驗(yàn) 報(bào) 告 告班級14 計(jì)本高一班 學(xué)號 1408200104 姓名 林強(qiáng)成績同組人實(shí)驗(yàn)日期 2014.10.28 課程名稱:MS SQL 程序設(shè)計(jì) 實(shí)驗(yàn)題目:利用控制流語句編程......

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

        實(shí)驗(yàn)2SQL Server數(shù)據(jù)庫的管理 1.實(shí)驗(yàn)?zāi)康?(1)了解SQL Server 數(shù)據(jù)庫的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)的特點(diǎn)。 (2)掌握使用SQL Server管理平臺對數(shù)據(jù)庫進(jìn)行管理的方法。 (3)掌握使用Transact-S......

        SQL總結(jié)(精選合集)

        1.SQL語句的With cte as用法: with as短語,也叫做子查詢部分。即定義一個SQL片斷,該片斷會讓整個SQL語句所用到。 eg: with cr as (select CountryRegionCode from person.Count......

        實(shí)驗(yàn)一 SQL SERVER 2008入門實(shí)驗(yàn)報(bào)告

        實(shí)驗(yàn)一 SQL SERVER 2008環(huán)境 一、實(shí)驗(yàn)?zāi)康?1、了解SQL SERVER 2008的安裝過程中的關(guān)鍵問題; 2、掌握通過SQL Server Management Studio管理數(shù)據(jù)庫服務(wù)器、操作數(shù)據(jù)庫對象的方......

        SQL語句經(jīng)典總結(jié)

        SQL語句經(jīng)典總結(jié) 一、入門 1、說明:創(chuàng)建數(shù)據(jù)庫 CREATE DATABASE database-name2、說明:刪除數(shù)據(jù)庫 drop database dbname 3、說明:備份sql server --- 創(chuàng)建 備份數(shù)據(jù)的 device......