欧美色欧美亚洲高清在线观看,国产特黄特色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ù)庫原理復(fù)習(xí)

      時間:2019-05-12 07:16:36下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《數(shù)據(jù)庫原理復(fù)習(xí)》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《數(shù)據(jù)庫原理復(fù)習(xí)》。

      第一篇:數(shù)據(jù)庫原理復(fù)習(xí)

      1.請寫出SQL Server 2000中的六種約束。

      主鍵約束,唯一鍵約束,檢查約束,默認(rèn)值約束,外鍵約束,級聯(lián)參照完整性約束

      2.在關(guān)系模型中,有哪三類完整性約束?

      實體完整性:體現(xiàn)在實體的唯一性上,在一個關(guān)系R中,設(shè)屬性A是它的主

      關(guān)鍵字的組成部分,則屬性A不能取空值;

      參照完整性:本關(guān)系的某一個非主屬性值,必須等于另一個關(guān)系的關(guān)鍵

      字的值;

      用戶定義的完整性:針對某一具體數(shù)據(jù)庫的約束條件,由應(yīng)用環(huán)境決定,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。

      3.?dāng)?shù)據(jù)模型由哪三部分組成?

      數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)操作,完整性約束

      1.創(chuàng)建一個名為“產(chǎn)品”的數(shù)據(jù)庫,其包含一個主文件和一個事務(wù)日志文件。主文件的邏輯名為“產(chǎn)品銷售_data”,物理文件名為“C:產(chǎn)品銷售_data.mdf”,初始容量為10MB,最大容量是20MB,每次的增量是10%。事務(wù)日志文件的邏輯名為“產(chǎn)品銷售_log”,物理文件名為“C:產(chǎn)品銷售_log.ldf”,初始容量是2MB,最大容量不受限制,每次的增量是2MB。

      CREATE DATABASE產(chǎn)品

      ON

      PRIMARY

      (NAME=產(chǎn)品銷售_data,FILENAME='C:產(chǎn)品銷售_data.mdf',SIZE=10MB,MAXSIZE=20MB,FILEGROWTH=10%)

      LOG ON

      (NAME=產(chǎn)品銷售_log,FILENAME='C: 產(chǎn)品銷售_log.ldf',SIZE=2MB,MAXSIZE=UNLIMITED,FILEGROWTH=2MB)

      2、打開“產(chǎn)品”的數(shù)據(jù)庫。

      USE產(chǎn)品

      3、將“產(chǎn)品”的數(shù)據(jù)庫改名為“產(chǎn)品銷售”的數(shù)據(jù)庫

      EXEC sp_renamedb產(chǎn)品, 產(chǎn)品銷售

      4、刪除“產(chǎn)品銷售”的數(shù)據(jù)庫

      DROP DATABASE產(chǎn)品銷售5、2)、產(chǎn)品編號、銷售商編號都是外鍵,其中產(chǎn)品編號參照表“產(chǎn)品信息”的產(chǎn)品編號屬性,銷售商編號參照表“銷售商信息”的銷售商編號屬性。

      CREATE TABLE 銷售

      (產(chǎn)品編號 CHAR(6)references 產(chǎn)品信息(產(chǎn)品編號),銷售商編號 CHAR(6)references銷售商信息(銷售商編號),銷售時間DatetimeNOT NULL,數(shù)量Int NOT NULL,PRIMARY KEY(產(chǎn)品編號,銷售商編號)

      6、已知有學(xué)生信息表:STUDENT;課程表:COURSE;成績表:SC

      1)、向SC表中添加一條記錄(’ 9309119’,‘EE-201’,90.5);

      INSERTSC

      VALUES('9309119','EE-201',90.5)

      2)、刪除SC表中學(xué)號為9309120的記錄;

      DELETE SC

      WHERE SNO='9309120'

      3)、把所有課程的學(xué)分都改為4分;

      UPDATE COURSE

      SET CREDIT =

      44)、把學(xué)號為9104421的學(xué)生的身高改為1.83;

      UPDATE STUDENT

      SET high=1.8

      3WHERE SNO='9104421'

      5)、查詢COURSE表中每門課程的課程名稱、學(xué)分;

      SELECTcname,creditFROMCOURSE

      ORDER BYCREDITDESC

      6)、查詢所有男同學(xué)的學(xué)號和姓名;

      SELECT sno,sname

      FROM student

      WHERE sex='男'

      7)、查詢成績在90分以上的學(xué)生的學(xué)號、課程號、成績。

      SELECT sno,cno,grade

      FROM sc

      WHERE grade>90

      8)、查詢至少有一門課的成績在80分以上的男同學(xué)的學(xué)號;

      SELECT sno

      FROM student A

      WHERE exists(SELECT *

      FROM scB

      WHERE A.sno=B.sno AND grade>80)

      9)、求各門課程的最高分、最低分、平均分;

      SELECT sno,max(grade),min(grade), avg(grade)

      FROM sc

      GROUP BY sno

      10)、查詢歐陽美齡選修的課程名稱和成績,結(jié)果按成績降序排列;

      SELECTcname,grade

      FROM student A,course B,sc C

      WHERE sname='歐陽美齡' AND A.sno=C.sno AND B.cno=C.cno

      11)、查詢身高大于李惟德身高的學(xué)生的姓名。

      SELECTsname

      FROM student

      WHEREhigh>(SELECT high

      FROM student

      WHERE sname='李惟德'

      12)、求選修了全部課程的學(xué)生學(xué)號、姓名

      SELECT sno

      FROM student

      WHERE(select distinct cno

      FROM sc B

      WHERE A.sno=B.sno)

      =(SELECT COUNT(*)FROMcourse)

      1.實體間的聯(lián)系可分為三類1:1(或一對一),1:N(或一對多),M:N(或多對多)

      2.E-R模型的組成要素包括: 實體,屬性,聯(lián)系。

      3.唯一標(biāo)識實體的屬性或?qū)傩越M稱為: 主鍵

      4.關(guān)系模型要求關(guān)系必須規(guī)范化也就是要求關(guān)系必須滿足一定的條件,這些規(guī)范條件中最基本的一條就是,關(guān)系的每一個分量必須是: 不可再分的數(shù)據(jù)項。

      5.四種專門的關(guān)系操作是:選擇、投影、連接、除。

      第二篇:2018年數(shù)據(jù)庫原理復(fù)習(xí)例題

      一、單選題 關(guān)系演算的基礎(chǔ)是()

      A、形式邏輯中的邏輯演算

      B、形式邏輯中的關(guān)系演算

      C、數(shù)理邏輯中的謂詞演算

      D、數(shù)理邏輯中的形式演算

      答案:C 關(guān)于數(shù)據(jù)庫系統(tǒng)的說法不正確的是().

      A、數(shù)據(jù)庫系統(tǒng)是指引入數(shù)據(jù)庫技術(shù)后的計算機系統(tǒng)

      B、狹義地講,數(shù)據(jù)庫系統(tǒng)就是數(shù)據(jù)庫管理系統(tǒng)

      C、狹義地講,數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)組成

      D、廣義地講,數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng),數(shù)據(jù)庫管理員和用戶構(gòu)成答案:B 對數(shù)據(jù)庫并發(fā)操作有可能帶來的問題包括()

      A、讀出“臟數(shù)據(jù)”

      B、帶來數(shù)據(jù)的冗余

      C、未被授權(quán)的用戶非法存取數(shù)據(jù)

      D

      答案:A 事務(wù)有多個性質(zhì),其中不包括()

      A、一致性

      B、唯一性

      C、原子性

      D

      答案:B 屬性類型允許是基本數(shù)據(jù)類型、結(jié)構(gòu)類型和集合類型的模型是()

      A、平面關(guān)系模型

      B、嵌套關(guān)系模型

      C、復(fù)合對象模型 D、分布式關(guān)系模型

      答案:C 反映現(xiàn)實世界中實體及實體間聯(lián)系的信息模型是()

      A、關(guān)系模型

      B、層次模型

      C、網(wǎng)狀模型

      D、E-R

      答案:D 設(shè)在關(guān)系模型中,同一表中的不同屬性命名()。

      A、可相同

      B、必須相同

      C、必須不同

      D、可相同,但數(shù)據(jù)類型不同

      答案:C 關(guān)系模式的規(guī)范化過程主要是為克服數(shù)據(jù)庫邏輯結(jié)構(gòu)中存在的插入異常、刪除異常以及()

      A、數(shù)據(jù)不一致性

      B、結(jié)構(gòu)不合理

      C、數(shù)據(jù)冗余度大

      D、數(shù)據(jù)丟失

      答案:C 局部E-R圖中實體類的沖突主要類型是().

      A、屬性沖突、命名沖突和結(jié)構(gòu)沖突

      B、命名沖突和屬性沖突

      C、屬性沖突

      D、結(jié)構(gòu)沖突和命名沖突

      答案:A 在關(guān)系演算中,元組變量的變化范圍是().

      A、某一命名的關(guān)系

      B、數(shù)據(jù)庫中的所有關(guān)系

      C、某一個域 D、數(shù)據(jù)庫中的所有域

      答案:C 數(shù)據(jù)字典的內(nèi)容應(yīng)包括().

      A、數(shù)據(jù)項,數(shù)據(jù)結(jié)構(gòu)

      B、數(shù)據(jù)流,數(shù)據(jù)存儲,處理過程

      C、數(shù)據(jù)項,數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)流,數(shù)據(jù)存儲,處理過程

      D、數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)流

      答案:C 關(guān)于數(shù)據(jù)處理和數(shù)據(jù)管理,下列敘述正確的是()

      A、數(shù)據(jù)處理經(jīng)歷了人工系統(tǒng)、文件系統(tǒng)、數(shù)據(jù)庫系統(tǒng)三個階段

      B、數(shù)據(jù)處理是數(shù)據(jù)管理的中心問題

      C、數(shù)據(jù)管理的主要工作是對數(shù)據(jù)進行收集、分類整理、組織、存儲、維護、檢索等操作

      D、數(shù)據(jù)管理技術(shù)優(yōu)劣不影響數(shù)據(jù)處理的效率

      答案:C SQL的全局約束是指基于元組的檢查子句和()

      A、非空值約束

      B、域約束子句

      C、斷言

      D、外鍵子句

      答案:C

      14下列四項中,不屬于數(shù)據(jù)庫特點的是()

      A、數(shù)據(jù)共享

      B

      C、數(shù)據(jù)冗余很高

      D

      答案:C

      15關(guān)系數(shù)據(jù)模型的三個組成部分中,不包括()

      A、完整性規(guī)則

      B、數(shù)據(jù)結(jié)構(gòu) C、數(shù)據(jù)操作

      D

      答案:D

      16如何構(gòu)造出一個合適的數(shù)據(jù)邏輯結(jié)構(gòu)是()主要解決的問題。

      A、關(guān)系數(shù)據(jù)庫優(yōu)化

      B、數(shù)據(jù)字典

      C、關(guān)系數(shù)據(jù)庫規(guī)范化理論

      D

      答案:C 下面系統(tǒng)中不屬于關(guān)系數(shù)據(jù)庫管理系統(tǒng)的是()

      A、Oracle

      B、MS SQL Server

      C、IMS

      D、DB2 答案:C 有一個關(guān)系:學(xué)生(學(xué)號,姓名,系別),規(guī)定學(xué)號的值域是8個數(shù)字組成的字符串,這一規(guī)則屬于()

      A、實體完整性約束

      B、參照完整性約束

      C、用戶自定義完整性約束

      D、關(guān)鍵字完整性約束

      答案:A 關(guān)于數(shù)據(jù)庫的說法不正確的是().

      A、一個相互關(guān)聯(lián)的數(shù)據(jù)集合

      B、包含了關(guān)于某個企業(yè)或組織的信息

      C、是信息系統(tǒng)的核心和基礎(chǔ)

      D、是一種數(shù)據(jù)管理的軟件

      答案:D

      每個屬性,都有一個取值范圍,這叫屬性()。

      A、域

      B、值

      C、主屬性

      D、關(guān)鍵字

      答案:A 已知學(xué)生關(guān)系:(學(xué)號,性別,年齡,籍貫),若執(zhí)行SQL語句:Select 姓名,年齡 From 學(xué)生 Where 籍貫='北京' 說明該語句對學(xué)生執(zhí)行了()操作.

      A、交和選擇

      B、投影和選擇

      C、選擇和連接

      D、連接和投影

      答案:B 以下數(shù)據(jù)庫的數(shù)據(jù)模型中,現(xiàn)今使用的主要的數(shù)據(jù)模型是().

      A、層次模型

      B、網(wǎng)狀模型

      C、關(guān)系模型

      D、面向?qū)ο竽P?/p>

      答案:C 概念設(shè)計的步驟是().

      A、進行數(shù)據(jù)抽象,設(shè)計局部概念模式;評審;集成局部概念模式,得到全局概念模式

      B、進行數(shù)據(jù)抽象,設(shè)計局部概念模式;集成局部概念模式,得到全局概念模式;評審

      C、進行數(shù)據(jù)抽象,設(shè)計局部概念模式;集成局部概念模式,得到全局概念模式

      D、評審;進行數(shù)據(jù)抽象,設(shè)計局部概念模式;集成局部概念模式,得到全局概念模式

      答案:B 因為每個中間運算的結(jié)果被創(chuàng)建,然后用于下一層的運算,這種查詢表達式的計算方法被稱為()計算.

      A、實體化

      B、流水線

      C、雙緩沖

      D、臨時區(qū)

      答案:A SQL語言通常稱為()

      A、結(jié)構(gòu)化查詢語言

      B

      C、結(jié)構(gòu)化定義語言

      D、結(jié)構(gòu)化操縱語言

      答案:A SQL中的視圖提高了數(shù)據(jù)庫系統(tǒng)的()

      A、完整性

      B、并發(fā)控制

      C、隔離性

      D、獨立性

      答案:D 在二維表中,不允許“表中套表”是指()。

      A、分量是原子的 B、值是原子的 C、屬性是原子的 D、域是原子的答案:A 數(shù)據(jù)的邏輯獨立性是指()

      A、模式變,應(yīng)用程序不變

      B、應(yīng)用程序變,模式不變

      C、內(nèi)模式變,應(yīng)用程序不變

      D、應(yīng)用程序變,內(nèi)模式不變

      答案:D 下列不是數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的本質(zhì)區(qū)別是().

      A、數(shù)據(jù)庫系統(tǒng)實現(xiàn)了整體數(shù)據(jù)結(jié)構(gòu)化,而文件系統(tǒng)只考慮某個具體應(yīng)用的數(shù)據(jù)結(jié)構(gòu)

      B、數(shù)據(jù)具有較高的共享性,減少了冗余;文件之間基本不能共享,導(dǎo)致數(shù)據(jù)冗余度高

      C、數(shù)據(jù)庫系統(tǒng)中程序與數(shù)據(jù)的邏輯結(jié)構(gòu)和物理存儲相獨立,而文件系統(tǒng)中數(shù)據(jù)邏輯結(jié)構(gòu)與文件結(jié)構(gòu)緊密聯(lián)系

      D、數(shù)據(jù)由數(shù)據(jù)庫管理系統(tǒng)統(tǒng)一管理和控制

      答案:A 如果文件沒有使用索引,并按某一屬性排序,且選擇條件是鎮(zhèn)屬性上的等值比較,則可用()的選擇運算算法來定位符合選擇條件的記錄.

      A、線性搜索

      B、二分搜索

      C、聚簇索引

      D、輔助索引

      答案:B

      要保證數(shù)據(jù)庫邏輯數(shù)據(jù)獨立性,需要修改的是()

      A、模式

      B

      C、模式與外模式的映射

      D、內(nèi)模式

      答案:C

      在笛卡爾積可看成為一張()。

      A、一維表

      B、二維表

      C、三維表

      D、四維表

      答案:B

      關(guān)系模型是().

      A、用關(guān)系表示實體

      B、用關(guān)系表示聯(lián)系

      C、用關(guān)系表示實體及其聯(lián)系

      D、用關(guān)系表示屬性

      答案:C

      對于經(jīng)常在查詢條件中出現(xiàn)的屬性或者經(jīng)常在聚集函數(shù)中出現(xiàn)的屬性,可以考慮在這些屬性上建立().

      A、視圖

      B、關(guān)系

      C、連接

      D、索引

      答案:D

      35()是相互矛盾的,數(shù)據(jù)庫物理設(shè)計過程中需要對它們進行折中權(quán)衡.

      A、時間效率,維護代價

      B、時間效率,空間效率

      C、時間效率,空間效率,維護代價

      D、空間效率,維護代價

      答案:C

      分布式數(shù)據(jù)庫系統(tǒng)中分片模式和分配模式均是()

      A、全局的 B、局部的 C、分布的 D、集中的答案:A

      學(xué)生社團可以接納多名學(xué)生參加,但每個學(xué)生只能參加一個社團,從社團到學(xué)生之間的聯(lián)系類型是()

      A、多對多

      B、一對一

      C、多對一

      D

      答案:D

      關(guān)系代數(shù)表達式的優(yōu)化策略中,首先要做的是()

      A、對文件進行預(yù)處理

      B、盡早執(zhí)行選擇運算

      C、執(zhí)行笛卡兒積運算

      D 答案:B

      在關(guān)系代數(shù)運算中,五種基本運算為()

      A、并、差、選擇、投影、自然連接

      B、并、差、選擇、交、投影

      C、并、差、選擇、投影、笛卡兒積

      D、并、差、交、選擇、笛卡兒積

      答案:C

      40()是關(guān)系代數(shù)的基本運算之一.

      A、交

      B、除

      C、關(guān)系模型

      D、廣義笛卡兒積

      答案:D

      如果文件沒有使用索引,并按某一屬性排序,且選擇條件是鎮(zhèn)屬性上的等值比較,則可用()的選擇運算算法來定位符合選擇條件的記錄.

      A、線性搜索

      B、二分搜索

      C、聚簇索引

      D、輔助索引

      答案:B

      在關(guān)系數(shù)據(jù)庫中,外模式對應(yīng)的是()。

      A、基本表

      B、視圖

      C、存儲文件

      D、關(guān)系

      答案:B

      事務(wù)(TransaCtion)是用戶定義的一個數(shù)據(jù)庫操作序列,下列()不是它的特性。

      A、原子性

      B、一致性

      C、并發(fā)性 D、持續(xù)性

      答案:C

      根據(jù)關(guān)系模型的完整性規(guī)則,一個關(guān)系中的主碼().

      A、不能有兩個

      B、不可作為其他關(guān)系的外部鍵

      C、可以取空值

      D、不可以是屬性組合答案:A

      數(shù)據(jù)庫邏輯設(shè)計的主要任務(wù)是()。

      A、建立E-R圖和說明書

      B、創(chuàng)建數(shù)據(jù)庫說明

      C、建立數(shù)據(jù)流圖

      D、把數(shù)據(jù)送入數(shù)據(jù)庫

      答案:C

      二、填空題 SQL語言是一種________型數(shù)據(jù)庫系統(tǒng),它是以_______的形式組織起來的數(shù)據(jù)集合,二維表中的一行,在關(guān)系中稱為_______;二維表中的一列,在關(guān)系中稱為_______。

      答案:關(guān)系型、表、元組、屬性從邏輯結(jié)構(gòu)的角度進行分類,數(shù)據(jù)庫的數(shù)據(jù)模型主要有________和________模型.

      答案:格式化、關(guān)系引起數(shù)據(jù)不一致的主要原因是事務(wù)的____________在并發(fā)中遭到了破壞.

      答案:隔離性在函數(shù)信賴中,平凡的函數(shù)信賴根據(jù)Armstrong推理規(guī)則中的_______________律就可推出。

      答案:自反數(shù)據(jù)庫物理設(shè)計中選擇何種存儲結(jié)構(gòu)與選定的_________________類型有關(guān)。

      答案:DBMS 一個關(guān)系表中只能有___________個PRIMARY KEY,UNIQUE可以有______多個.

      答案:一,任意事務(wù)必須具有的四個性質(zhì)是: 原子性、____________、隔離性、持久性。

      答案:不確定關(guān)鍵字是用來標(biāo)識_________________。

      答案:實體數(shù)據(jù)庫操縱技術(shù)就是指插入、_______、_______和檢索表中數(shù)據(jù)的技術(shù).其中,前三種又被并稱為更新操作.

      答案:刪除、修改數(shù)據(jù)庫中要儲存批發(fā)商與零售商的供貨合同信息。一個合同中可以填寫多種商品,每種商品需要記錄定貨數(shù)量。對應(yīng)的關(guān)系模式為:合同(合同號,商品號,商品名,商品單價,數(shù)量),該關(guān)系的碼是________________________。

      答案:合同號,商品號事務(wù)必須具有的四個性質(zhì)是:原子性、一致性、_______________和持久性。

      答案:隔離性______是事務(wù)T在對數(shù)據(jù)項A修改之前,必須先對數(shù)據(jù)A加排它鎖,直到事務(wù)結(jié)束才釋放。

      答案:一級封鎖協(xié)議.假定利用CREATE TABLE命令建立如下一個表:BOOK(總編號C(6),分類號C(3),書名C(16),單價N(10,2)),則單價字段的類型為_____型,字段寬度為_____,其中包含有_______位小數(shù).

      答案:Numeric、10、2 從邏輯結(jié)構(gòu)的角度進行分類,數(shù)據(jù)庫的數(shù)據(jù)模型主要有格式化和________模型.

      答案:關(guān)系

      一般地,屬性個數(shù)少的表上不建_______________,不同屬性值少的屬性上也不用建________________,元組數(shù)少或跟新頻率高的關(guān)系上也不建索引.答案:索引,索引設(shè)關(guān)系模式R(A,B,C),F(xiàn)是R上成立的FD集,F(xiàn) = {B→A,B→C},則分解ρ = {AB,AC}丟失的FD是_______________。

      答案:B→C 如果記錄是做插入操作,那么撤銷操作相當(dāng)于__________________。

      答案:做數(shù)據(jù)刪除操作關(guān)系數(shù)據(jù)庫的關(guān)系演算語言是以_______________為基礎(chǔ)的DML語言。

      答案:謂詞演算實體是______“事件”或“物體’。

      答案:客觀存在并可相互區(qū)別的關(guān)系查詢處理可以分4個步驟,包括_____,_____、______、______。

      答案:查詢分析和檢查、查詢翻譯、查詢優(yōu)化、查詢執(zhí)行。用樹型結(jié)構(gòu)表示實體類型及實體間聯(lián)系的數(shù)據(jù)模型稱為_______________。

      答案:層次模型分布式數(shù)據(jù)庫中定義數(shù)據(jù)分片時,必須滿足三個條件:完備性條件、重構(gòu)條件和_______________。

      答案:不相交條件在有泛化/細化聯(lián)系的對象類型之間,較低層的對象類型稱為_______________。

      答案:子類型弱實體集的屬性_______。

      答案:不足以形成主碼_____________是衡量模式優(yōu)劣的標(biāo)準(zhǔn),_______________表達了模式中數(shù)據(jù)依賴之間應(yīng)滿足的聯(lián)系. 答案:范式,范式一個類可以從直接的或間接的祖先中繼承所有屬性和方法。采用這個方法提高了軟件的_______________。

      答案:可重用性(或共享性)第一范式是指同一列中不能有________,即實體中的某個屬性必須是原于項.

      答案:多個值分解模式的目標(biāo)是____________________,此外要遵守兩個基本原則:分解是無損的,分解保持函數(shù)依賴。

      答案:達到更高級的范式分解模式的目標(biāo)是達到更高級的范式,此外要遵守兩個基本原則:分解是無損的,________________________。

      答案:分解保持函數(shù)依賴關(guān)系規(guī)范化的過程實質(zhì)是___________的過程。

      答案:不斷分解

      三、分析題 現(xiàn)有如下的銀行系統(tǒng)關(guān)系: Branch(branch_name nvarchar(10),branch_city nvarchar(10),asserts int)Customer(customer_name nvarchar(10),customer_street nvarchar(10),customer_city rvarchar(10))Loan(10an_number nvarchar(10),branch_name nvarchar(10),amount int)Borrower(customer_name nvarchar(10),loan_number nvarchar(10))Account(account_number nvarchar(10),branch_name nvarchar(10),balance int)Depositor(customer_name nvarchar(10),account_number nvarchar(10))試用SQL查詢語句來表達下列查詢:(1)創(chuàng)建Branch表,其中branch_name和branch_city為聯(lián)合主鍵.(2)向Branch表中增加一個“address”列,其數(shù)據(jù)類型為10個字長的unicode字符串.(3)刪除Branch表的address列.(4)查詢位于’廣州’的,資產(chǎn)在10,000,000以上的的支行名.

      答案:(1)創(chuàng)建Branch表,其中branch_name和branch_city為聯(lián)合主鍵 3分 create table Branch(branch_name nvarchar(10), branch_city nvarchar(10), asserts int primary key(branch_name, branch_city))(2)向Branch表中增加一個“address”列,其數(shù)據(jù)類型為十個字長的unicode字符串。2分 alter table Branch add address nvarchar(10)(3)刪除Branch表的address列 2分 alter table Branch rop column address(4)查詢位于“廣州”的,資產(chǎn)在10,000,000以上的的支行名。3分 select branch_name from Branch where asserts> 10000000 一個電影資料數(shù)據(jù)庫假定有三個基本表:電影表Movie、演員表Actor和電影主演表Acts, 這三個關(guān)系的模式如下:(1)電影表Movie(電影名稱Title,制作年份Year,長度Length).(2)演員表Actor(姓名Name,地址Address,性別Gender,出生日期Birthdate).(3)電影主演表Acts(電影名稱MovieTitle,制作年份MovieYear,主演姓名ActorName). 用SQl實現(xiàn)如下查詢或更新操作:(1)統(tǒng)計1999年制作電影的平均長度和最短長度.(2)在1999年主演過電影的演員姓名.(3)把電影 ”的世界” 的長度改為110分鐘.(4)刪除1940年以前制作的所有電影記錄以及電影主演記錄.

      答案:(1)統(tǒng)計1999年制作電影的平均長度和最短長度。2分 select平均長度=avg(Length), 最短長度=min(Length)from Movie where Year=1999(2)在1999年主演過電影的演員姓名 2分 select ActorName from Movie inner join Acts on Movie.Title=Acts.MovieTitle where Movie.Year=1999(3)把電影“我的世界”的長度改為110分鐘。3分 update Movie set Length=110 where Title=’我的世界’(4)刪除1940年以前制作的所有電影記錄以及電影主演記錄。3分 delete Acts where MovieTitle in(select Title from Movie where Year< 1904)delete MovieTitle where Year< 1940 現(xiàn)有如下的銀行系統(tǒng)關(guān)系: Branch(branch_name nvarchar(10),branch_city nvarchar(10),asserts int)Customer(customer_name nvarchar(10),customer_street nvarchar(10),customer_city rvarchar(10))Loan(10an_number nvarchar(10),branch_name nvarchar(10),amount int)Borrower(customer_name nvarchar(10),loan_number nvarchar(10))Account(account_number nvarchar(10),branch_name nvarchar(10),balance int)Depositor(customer_name nvarchar(10),account_number nvarchar(10))試用SQL查詢語句來表達下列查詢:(1)向Branch表中增加一個“address”列,其數(shù)據(jù)類型為10個字長的unicode字符串.(2)創(chuàng)建一個視圖來顯示每個顧客的顧客信息,貸款總額.(3)刪除所有貸款在100以下的貸款記錄.(4)刪除每家支行貸款數(shù)額最大的記錄.

      答案:(1)向Branch表中增加一個“address”列,其數(shù)據(jù)類型為十個字長的unicode字符串。alter table Branch add address nvarchar(10)(2)創(chuàng)建一個視圖來顯示每個顧客的顧客信息、貸款總額。3分 create view customer_loan as select customer_name, amount_total=sum(amount)from borrower as t1 left join loan as t2 on t1.loan_number=t2.loan_number group by customer_name(3)刪除所有貸款在100以下的貸款記錄 2分 delete from loan where amount< 100(4)刪除每家支行貸款數(shù)額最大的記錄 3分 delete loan where not exists(select * from loan as t2 where loan.branch_name=t2.branch_name and loan.amount< t2.amount)

      四、問答題已知學(xué)生關(guān)系模式Student(Sno,Sname,Sdept,MN,Course,Grade),其中:Sno:學(xué)號,Sname:學(xué)生姓名,Sdept:系名,MN:系主任名,Course:課程名,Grade:成績.(1)寫出關(guān)系模式Student的基本函數(shù)依賴及其主碼.(2)將關(guān)系模式分解為2NF,并說明為什么?(3)將關(guān)系模式分解為3NF,并說明為什么? 答案:答:(1)該關(guān)系模式存在以下函數(shù)依賴: Sno→Sname,Sdept→MN,Sno→Sdept,(Sno,Course)→Grade 顯然關(guān)系模式的碼為Sno,Course。(2)原關(guān)系模式是屬于1NF的,非主屬性Grade完全按函數(shù)依賴于碼,而其他非主屬性對碼的函數(shù)依賴均為部分函數(shù)依賴,所以不屬于2NF??蓪⒃撽P(guān)系模式分解為2NF如下: Student1(Sno,Sname,Sdept,MN)Student2(Sno,Course,Grade)(3)(2)中的關(guān)系模式Student1中存在Sno→Sdept,Sdept→MN,即非主屬性MN傳遞依賴于碼Sno,所以Student1可以進一步分解為3NF如下: Student11(Sno,Sname,Sdept)Student12(Sdept,MN)而Student2中不存在非主屬性對碼的傳遞依賴,故已經(jīng)屬于3NF。最終原關(guān)系模式分解為3NF得到: Student11(Sno,Sname,Sdept)Student12(Sdept,MN)Student2(Sno,Course,Grade)請舉一個屬于2NF,但不屬于3NF的關(guān)系模式的例子,并指出可能出現(xiàn)的“異?!?。

      答案:關(guān)系模式R(A, B, C, D, E),在R上有如下函數(shù)依賴集:F={AB→E,B→C,C→D} 數(shù)據(jù)庫設(shè)計的基本步驟分為哪幾個階段,各階段結(jié)束后分別產(chǎn)生哪些文檔或得到什么結(jié)果。

      答案:數(shù)據(jù)庫設(shè)計的基本步驟(六個階段)需求分析、概念結(jié)構(gòu)設(shè)計(E-R圖)、邏輯結(jié)構(gòu)設(shè)計(規(guī)范化)、物理結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫實施、數(shù)據(jù)庫運行和維護什么是數(shù)據(jù)庫的物理設(shè)計? 答案:答:根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲結(jié)構(gòu)和存取方法等依賴于具體計算機結(jié)構(gòu)的各項物理設(shè)計措施,對具體的應(yīng)用任務(wù)選定最合適的物理存儲結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這個過程就叫做數(shù)據(jù)庫的物理設(shè)計。用實體完整性規(guī)則解釋關(guān)系數(shù)據(jù)庫中,表的主碼(主鍵)不能取空值的原因.

      答案:答:(1)關(guān)系對應(yīng)著事物實體集,如學(xué)生關(guān)系對應(yīng)于一個學(xué)生集合;(2)現(xiàn)實世界的實體是可區(qū)分的,如學(xué)號是區(qū)分不同學(xué)生的標(biāo)志;(3)關(guān)系以主碼作為區(qū)分關(guān)系元組的惟一性標(biāo)志,因此,候選碼中的屬性(主屬性)不能取空值。否則,關(guān)系的一個元組就不能被標(biāo)識,也就是說有個事物實體是不能區(qū)分的,這就和(2)矛盾。這種述規(guī)則稱為關(guān)系的實體完整性。例如:郵政局派信,顯然,信封上的通訊地址和姓名是主屬性。如果這兩個屬性之一取空值,即“不知道”,那么信件將無法投遞給收信人。這樣,這封信就是不完整的。數(shù)據(jù)庫的基本恢復(fù)技術(shù)有哪些?

      答案:答:基于日志的數(shù)據(jù)恢復(fù)和基于數(shù)據(jù)轉(zhuǎn)儲的數(shù)據(jù)恢復(fù)。數(shù)據(jù)庫為什么要并發(fā)控制?

      答案:答:多個事務(wù)并發(fā)執(zhí)行時,使用并發(fā)控制可以避免數(shù)據(jù)不一致。

      數(shù)據(jù)庫的體系的三級結(jié)構(gòu)。

      答案:答:數(shù)據(jù)庫的體系的三級結(jié)構(gòu)指數(shù)據(jù)庫系統(tǒng)是由模式、外模式和內(nèi)模式三級構(gòu)成的。關(guān)系規(guī)范化一般應(yīng)遵循的原則是什么?各范式之間有什么關(guān)系? 答案:(1)關(guān)系模式規(guī)范化一般應(yīng)遵循的原則如下: ① 將關(guān)系模式進行無損連接分解,在關(guān)系模式分解的過程中,數(shù)據(jù)不能丟失或增加,要保持?jǐn)?shù)據(jù)的完整性; ② 合理地選擇規(guī)范化程度。在規(guī)范化時,既要考慮到低級范式造成的冗余度高、數(shù)據(jù)不一致性,又要考慮到高級范式帶來的查詢效率低的問題; ③ 要考慮正確性和可實現(xiàn)原則,即要保證規(guī)范化過程是正確的,并且通過規(guī)范化能達到要求。(2)各范式之間的關(guān)系為:4NF BCNF 3NF 2NF 1NF,1NF消去非主屬性對碼的部分函數(shù)依賴便得到2NF,2NF消去非主屬性對碼的傳遞函數(shù)依賴便得到3NF,3NF消去主屬性對碼的部分和傳遞函數(shù)依賴便得到BCNF,BCNF消去非平凡且非函數(shù)依賴的多值依賴得到4NF。

      第三篇:數(shù)據(jù)庫原理總結(jié)

      1關(guān)系的范式及規(guī)范化

      范式是衡量關(guān)系模式優(yōu)劣的標(biāo)準(zhǔn)。范式級別越高,其數(shù)據(jù)冗余和操作異?,F(xiàn)象就越少。第一范式:如果一個關(guān)系模式R的所有屬性都是不可分的基本數(shù)據(jù)項,則這個關(guān)系屬于第一范式。第二范式:若關(guān)系模式R屬于第一范式,且每個非主屬性都完全函數(shù)依賴于主鍵,則R屬于第二范式。第三范式:若關(guān)系模式R屬于第一范式,且每個非主屬性都不傳遞依賴于主關(guān)鍵字,則R屬于第三范式。BC范式:若關(guān)系模式R屬于第一范式,且每個屬性都不傳遞依賴于主關(guān)鍵字,則R屬于BC范式。

      2對模式的分解顯然不是隨意的,主要涉及以下兩個原則:無損聯(lián)結(jié):當(dāng)對關(guān)系模式R進行分解時,R的元組將分別在相應(yīng)屬性集進行投影而產(chǎn)生新的關(guān)系。如果對新的關(guān)系進行自然聯(lián)接得到的元組的集合與原關(guān)系完全一致,則稱為無損聯(lián)結(jié)。保持依賴:當(dāng)對關(guān)系模式R進行分解時,R的函數(shù)依賴集也將按相應(yīng)的模式進行分解。如果分解后總的函數(shù)依賴集與原函數(shù)依賴集保持一致,則稱為保持依賴。

      3事務(wù)的定義:事務(wù)是數(shù)據(jù)庫的邏輯工作單位,由用戶定義的一組操作序列組成,序列中的操作要么全做要么全不做。

      4簡述事務(wù)所具有的ACID(原子性,一致性,隔離性,持續(xù)性)特性:事務(wù)的ACID特性是: 原子性:事務(wù)是一個不可分割的單位。一致性:事務(wù)對數(shù)據(jù)庫操作的結(jié)果是將數(shù)據(jù)庫從一個一致性狀態(tài)變?yōu)榱硪粋€一致性狀態(tài)。隔離性:多個事務(wù)的并發(fā)執(zhí)行不互相干擾。持續(xù)性:事務(wù)一旦提交,它對數(shù)據(jù)庫中數(shù)據(jù)的改變就是永久性的。5事務(wù)的調(diào)度:事務(wù)的執(zhí)行次序稱為調(diào)度。若多個事務(wù)是按照某一次序串行地執(zhí)行,則稱事務(wù)的調(diào)度是串行調(diào)度。若多個事務(wù)同時交叉地并行執(zhí)行,則稱事務(wù)的調(diào)度為并發(fā)調(diào)度。

      6事務(wù)并發(fā)執(zhí)行產(chǎn)生的不一致情況及避免:并發(fā)操作可能會產(chǎn)生丟失修改,不能重復(fù)讀和讀”臟”數(shù)據(jù)這三種不一致情況,采用封鎖機制來進行并發(fā)控制,可避各種不一致情況。一級封鎖協(xié)議可以避免丟失修改,二級封鎖協(xié)議可以避免丟失修改和讀”臟”數(shù)據(jù),三級封鎖協(xié)議可以避免丟失修改、不能重復(fù)讀和讀”臟”數(shù)據(jù)。

      7事務(wù)的COMMIT語句和ROLLBACK語句的功能是什么?答:COMMIT語句表示事務(wù)執(zhí)行成功地接結(jié)束(提交),此時告訴系統(tǒng),DB要進入一個新的正確狀態(tài),該事務(wù)對DB的所有更新都已交付實施(寫入磁盤)。ROLLBACK語句表示事務(wù)執(zhí)行不成功地結(jié)束(應(yīng)該“回退”)此時告訴系統(tǒng),已發(fā)生錯誤,DB可能處在不正確的狀態(tài),該事務(wù)對DB的所有更新必須被撤消,DB應(yīng)恢復(fù)該事務(wù)到初始狀態(tài)。

      8活鎖和死鎖:活鎖:在多個事務(wù)并發(fā)執(zhí)行的過程中,可能會存在某個總有機會獲得鎖的事務(wù)卻永遠也沒得到鎖的現(xiàn)象,可以通過“先來先服務(wù)”的策略預(yù)防活鎖的發(fā)生。死鎖:在多個事務(wù)并發(fā)執(zhí)行過程中,多個并發(fā)事務(wù)處于相互等待的狀態(tài)的現(xiàn)象。

      9死鎖的預(yù)防:數(shù)據(jù)庫當(dāng)中預(yù)防死鎖的方法有兩種。第一種方法是要求每個事務(wù)必須一次性地將所有要使用的數(shù)據(jù)加鎖或必須按照一個預(yù)定的加鎖順序?qū)κ褂玫降臄?shù)據(jù)加鎖。第二種方法是每當(dāng)處于等待狀態(tài)的事務(wù)由可能導(dǎo)致死鎖時,就不再等待下去,強行回滾該事務(wù)。

      10完整性約束的定義:關(guān)系數(shù)據(jù)庫提供的三類完整性約束:實體完整性、參照完整性和用戶自定義完整性。實體完整性:實體完整性約束是指任何基本表(關(guān)系)的主鍵(主關(guān)鍵字)中的每一個屬性列都不能取空值,即基本表中的每一個元組在主鍵上的分量都有值。參照完整性:根據(jù)參照完整性原則,用戶只要定義了某一個關(guān)系(基本表)的外鍵(外部關(guān)鍵字),系統(tǒng)就會控制外鍵的值要么為空,要么等于被參照關(guān)系中某一個主鍵的值,這就是系統(tǒng)對外鍵的一種約束。用戶定義完整性:用戶定義完整性約束條件的作用對象可以是屬性列、元組或關(guān)系(基本表),其中對屬性列的約束可以規(guī)定屬性列的數(shù)據(jù)類型、取值范圍等;對元組的約束可以規(guī)定元組中各屬性間的相互關(guān)系;而對關(guān)系的約束則可以規(guī)定各元組間或關(guān)系間的相互聯(lián)系。

      11故障恢復(fù)的原則:對數(shù)據(jù)庫的影響有兩種可能性:一是數(shù)據(jù)庫本身被破壞;二是數(shù)據(jù)庫沒有被破壞,但數(shù)據(jù)可能不正確,這是因為事務(wù)的運行被非正常終止造成的。12恢復(fù)算法一般由兩部分組成:在正常事務(wù)處理時采取措施,保證有足夠的冗余信息可用于故障恢復(fù)。故障發(fā)生后采取措施,將數(shù)據(jù)庫內(nèi)容恢復(fù)到某個保證數(shù)據(jù)庫一致性、事務(wù)原子性及持久性的狀態(tài)。

      13數(shù)據(jù)庫在運行過程中可能產(chǎn)生的故障有哪幾類? 答:1)事務(wù)故障:事務(wù)在運行過程中由于種種原因,如輸入數(shù)據(jù)的錯誤,運算溢出,違反了某些完整性限制,某些應(yīng)用程序的錯誤,以及并行事務(wù)發(fā)生死鎖等,使事務(wù)未能運行到正常中指點之前就被撤消了,這種情況稱為“事務(wù)故障”。2)系統(tǒng)故障:系統(tǒng)故障是指系統(tǒng)在運行過程中,由于某些原因,如OS和DBMS代碼錯誤,操作員操作事物。特定類型的硬件錯誤(CPU故障),突然停電等造成系統(tǒng)停止運行,致使事物在執(zhí)行過程中以非控方式中指。這時。內(nèi)存中的信息丟失,而存儲在外存儲上的數(shù)據(jù)未受影響,這種情況稱為“系統(tǒng)故障”。3)介質(zhì)故障:系統(tǒng)在運行過程中,由于某種硬件故障,如磁盤損壞,磁頭碰撞,或由于OS的某種潛在的錯誤。瞬間強磁場干擾,使存儲在外存的數(shù)據(jù)部分損失或全部損失,稱之為“介質(zhì)故障”。14故障恢復(fù)技術(shù):數(shù)據(jù)轉(zhuǎn)儲、日志文件、檢查點方法、數(shù)據(jù)庫鏡像

      15關(guān)系的完整性約束:域完整性約束:關(guān)系中屬性的值應(yīng)是域中的值,并由語義決定其能否為空值。實體完整性約束:關(guān)系中的主鍵不能為空值。參照完整性約束:關(guān)系的外鍵必須是另一個關(guān)系主鍵的有效值或者是空值。用戶自定義完整性約束:正對某一具體數(shù)據(jù)的約束條件,由應(yīng)用環(huán)境決定。

      16故障恢復(fù)原理是冗余可分為副本和日志?;謴?fù)算法:在正常事物處理時采取措施,保證有足夠的冗余信息可用于故障恢復(fù)、故障發(fā)生后采取措施,將數(shù)據(jù)庫內(nèi)容恢復(fù)到某個保證數(shù)據(jù)庫一致性、事物原子性及持久性的狀態(tài)。

      17事務(wù)故障的恢復(fù):事務(wù)故障是指事務(wù)在運行至正常終止點前被中止,這時恢復(fù)子系統(tǒng)應(yīng)利用日志文件撤消(UNDO)此事務(wù)已對數(shù)據(jù)庫進行的修改。事務(wù)故障的恢復(fù)是由系統(tǒng)自動完成的,對用戶是透明的,系統(tǒng)的恢復(fù)步驟是:⑴ 反向掃描文件日志(即從最后向前掃描日志文件),查找該事務(wù)的更新操作。⑵ 對該事務(wù)的更新操作執(zhí)行逆操作。即將日志記錄中“更新前的值”寫入數(shù)據(jù)庫。這樣,如果記錄中是插入操作,則相當(dāng)于做刪除操作(因此時“更新前的值”為空)。若記錄中是刪除操作,則做插入操作,若是修改操作,則相當(dāng)于用修改前值代替修改后值。⑶ 繼續(xù)反向掃描日志文件,查找該事務(wù)的其他更新操作,并做同樣處理。⑷ 如此處理下去,直至讀到此事務(wù)的開始標(biāo)記,事務(wù)故障恢復(fù)就完成了。

      18系統(tǒng)故障的恢復(fù):系統(tǒng)故障造成數(shù)據(jù)庫不一致狀態(tài)的原因有兩個,一是未完成事務(wù)對數(shù)據(jù)庫的更新可能已寫入數(shù)據(jù)庫,二是已提交事務(wù)對數(shù)據(jù)庫的更新可能還留在緩沖區(qū)沒來得及寫入數(shù)據(jù)庫。因此,恢復(fù)操作就是要撤銷故障發(fā)生時未完成的事務(wù),重做已完成的事務(wù)。系統(tǒng)恢復(fù)步驟如下:正向掃描日志文件,即從頭掃描日志文件,找出在故障發(fā)證前已經(jīng)提交的事務(wù),將其事務(wù)標(biāo)示記入重做隊列,同時找出故障發(fā)證時尚未完成的事務(wù),將其事務(wù)標(biāo)識計入撤銷隊列、對撤銷隊列中的各個事務(wù)進行撤銷處理、對重做隊列中的各個事務(wù)進行重做掃描

      19日志文件作用及建立原因:答:日志文件是用來記錄事務(wù)對數(shù)據(jù)庫的更新操作的文件。目的是進行事物故障恢復(fù);進行系統(tǒng)故障恢復(fù);協(xié)助后備副本進行介質(zhì)故障恢復(fù)。

      20三級模式:三級模式結(jié)構(gòu):數(shù)據(jù)庫的三級模式由外模式、概念模式和內(nèi)模式三級模式構(gòu)成。概念模式:簡稱模式,又稱數(shù)據(jù)庫模式、邏輯模式。一個數(shù)據(jù)庫只有一個概念模式,它是數(shù)據(jù)庫系統(tǒng)三級模式結(jié)構(gòu)的中間層,概念模式是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯描述,而不是數(shù)據(jù)庫本身,它是裝配數(shù)據(jù)的一個結(jié)構(gòu)框架。外模式:外模式簡稱子模式,又稱用戶模式,是數(shù)據(jù)庫用戶能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是用戶與數(shù)據(jù)庫系統(tǒng)之間的接口。一個數(shù)據(jù)庫可以有多個外模式,設(shè)置外模式的優(yōu)點如下:方便用戶使用,簡化用戶接口、保證數(shù)據(jù)的獨立性、有利于數(shù)據(jù)共享、有利于數(shù)據(jù)安全和保密。內(nèi)模式:內(nèi)模式也稱存儲模式。是對數(shù)據(jù)庫中數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示形式。一個數(shù)據(jù)庫只能有一個內(nèi)模式。21兩級映像:外模式/概念模式映像:外模式/概念模式映像定義了各個外模式與概念模式間的映像關(guān)系。概念模式/內(nèi)模式映像:概念模式/內(nèi)模式映像定義了數(shù)據(jù)庫全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應(yīng)關(guān)系。

      22兩極結(jié)構(gòu)的獨立性:物理數(shù)據(jù)獨立性:如果數(shù)據(jù)庫內(nèi)模式要修改,即數(shù)據(jù)庫的物理結(jié)構(gòu)有所變化,那么只要對概念模式/內(nèi)模式做相應(yīng)的修改即可。概念模式/內(nèi)模式提供了數(shù)據(jù)的物理數(shù)據(jù)獨立性。邏輯數(shù)據(jù)獨立性:如果概念模式要修改,例如增加記錄類型或增加數(shù)據(jù)項,那么只要對外模式/概念模式映像做相應(yīng)的修改,就可以使外模式和應(yīng)用程序盡可能保持不變。這樣,就稱數(shù)據(jù)庫打到了邏輯數(shù)據(jù)獨立性。外模式/概念模式映像提供了數(shù)據(jù)的邏輯獨立性。

      23數(shù)據(jù)庫技術(shù)的發(fā)展階段:工管理階段(數(shù)據(jù)部保存、沒有對數(shù)據(jù)進行管理的軟件系統(tǒng)、沒有文件的概念、一組數(shù)據(jù)對應(yīng)于一個程序,數(shù)據(jù)時面向應(yīng)用的)、文件系統(tǒng)階段(數(shù)據(jù)需要長期保存在外存上供反復(fù)使用、程序和數(shù)據(jù)之間有了一定得獨立性、文件的形式已經(jīng)多樣化、數(shù)據(jù)的存取基本以記錄為單位)、數(shù)據(jù)庫系統(tǒng)階段(數(shù)據(jù)結(jié)構(gòu)化、數(shù)據(jù)共享、減少數(shù)據(jù)冗余、具有較高的數(shù)據(jù)獨立性、方便用戶接口、統(tǒng)一的數(shù)據(jù)管理與控制功能)

      某校與教學(xué)管理相關(guān)的3個關(guān)系模式的結(jié)構(gòu)如下: 學(xué)生(學(xué)號、姓名、年齡、性別、所在系)課程(課程號、課程名、開課系、任課教師)學(xué)習(xí)(學(xué)號、課程號、成績)試進行如下操作:

      1.創(chuàng)建“教學(xué)”數(shù)據(jù)庫,在“教學(xué)”數(shù)據(jù)庫中創(chuàng)建“學(xué)生”、“課程”、“學(xué)習(xí)”這3個基本表,并說明主鍵和外鍵。2.使用SQL的查詢語句表達下列查詢(1)查詢劉老師所授課程的課程號和課程名(2)查詢年齡大于23歲的男學(xué)生的學(xué)號和姓名

      (3)查詢至少修讀劉老師所授課程中一門課程的女學(xué)生和姓名(4)查詢王樂同學(xué)不學(xué)的課程的課程號(5)查詢至少修讀兩門課程的學(xué)生學(xué)號

      (6)查詢?nèi)繉W(xué)生都修讀的課程的課程號與課程名(7)查詢修讀課程中包含劉老師所授課程的學(xué)生學(xué)號

      3)SELECT 姓名 FROM 學(xué)生 WHERE 性別=‘女’ AND EXISTS(SELECT * FROM 學(xué)習(xí)WHERE 學(xué)習(xí).學(xué)號=學(xué)生.學(xué)號 AND 課程號 IN(SELECT 課程號 FROM 課程 WHERE 任課教師 LIKE ‘劉%’))4)SELECT 課程號 FROM 課程 WHERE NOT EXISTS(SELECT * FROM 學(xué)習(xí)WHERE 學(xué)習(xí).課程號=課程.課程號 AND 學(xué)號 IN(SELECT 學(xué)號 FROM 學(xué)生 WHERE 姓名=‘王樂’))5)SELECT 學(xué)號 FROM 學(xué)生 GROUP BY 學(xué)號 HAVING COUNT(*)>=2 6)SELECT 課程號,課程名 FROM 課程 WHERE NOT EXISTS(SELECT * FROM 學(xué)生 WHERE NOT EXISTS(SELECT * 學(xué)號 FROM 學(xué)習(xí)WHERE 學(xué)習(xí).課程號=課程.課程號 AND 學(xué)習(xí).學(xué)號=學(xué)生.學(xué)號))7)SELECT 學(xué)號 FROM 學(xué)習(xí)WHERE EXISTS(SELECT * FROM 學(xué)習(xí)WHERE 課程號 IN(SELECT * FROM 課程號 FROM 課程 WHERE 任課教師 LIKE ‘劉%’))試用SQL查詢語句表達下列對教學(xué)數(shù)據(jù)庫中3個基本表“學(xué)生”、“課程”、“學(xué)習(xí)”的查詢(1)統(tǒng)計有學(xué)生修讀的課程門數(shù)(2)求修讀C4課程的學(xué)生的平均年齡

      (3)求劉老師所授課程的每門課程的學(xué)生平均成績

      (4)統(tǒng)計每門課程學(xué)生的修讀人數(shù)(超過10人的課程才統(tǒng)計),要求輸出課程號和修讀人數(shù),查詢結(jié)果按人數(shù)降序排列,若人數(shù)相同,按課程號升序排列(5)查詢學(xué)號比王樂同學(xué)大,而年齡比他小的學(xué)生姓名(6)查詢姓名以王打頭的所有學(xué)生的姓名和年齡(7)在“學(xué)習(xí)”表中檢索成績?yōu)榭罩档膶W(xué)生學(xué)號和課程號(8)求年齡大于女同學(xué)平均年齡的男學(xué)生姓名和年齡(9)求年齡大于所有女同學(xué)年齡的男學(xué)生姓名和年齡 SELECT COUNT(DISTINCT 課程號)FROM 學(xué)習(xí)

      SELECT AVG(年齡)FROM 學(xué)生 WHERE EXISTS(SELECT * FROM 學(xué)習(xí)WHERE學(xué)生.學(xué)號=學(xué)習(xí).學(xué)號 AND 課程號=’C4’)SELECT AVG(成績)FROM 學(xué)習(xí)WHERE GROUP BY 課程號 HAVING 課程號 IN(SELECT 課程號 FROM 課程 WHERE 任課教師 LIKE ‘劉%’)SELECT 課程號,COUNT(*)AS C_COUNT FROM 學(xué)習(xí)HAVING C_COUNT>10 ORDER BY C_COUNT DESC,課程號

      SELECT 姓名 FROM 學(xué)生 WHERE 學(xué)號>ALL(SELECT 學(xué)號FROM 學(xué)生WHERE 姓名=’王樂’)AND 年齡(SELECT AVG(年齡)FROM 學(xué)生 WHERE 性別=’女’)SELECT 姓名, 年齡 FROM 學(xué)生WHERE 性別=’男’ AND年齡>(SELECT MAX(年齡)FROM 學(xué)生 WHERE 性別=’女’)試用SQL更新語句表達對“教學(xué)”數(shù)據(jù)庫中3個基本表“學(xué)生”、“課程”和“學(xué)習(xí)”的各個更新操作(1)向基本表“學(xué)生”中插入一個學(xué)生組(‘S009’,‘吳’,18)

      (2)在基本表“學(xué)生”中查詢每一門課程成績都大于等于80分的學(xué)生學(xué)號、姓名和性別,并把查詢到的值送往另一個已存在的基本表“結(jié)果”(學(xué)號,姓名,性別)中(3)在基本表“學(xué)習(xí)”中刪除尚無成績的元組

      (4)把王樂同學(xué)在“學(xué)習(xí)”基本表中的課程和成績?nèi)縿h除(5)把修讀Java課程不及格的成績?nèi)臑榭罩担?)把低于總平均成績的女同學(xué)成績提高5%(7)在基本表“學(xué)習(xí)”中修改C4課程的成績,若成績小于等于75分時提高5%,若成績大于75分時提高4%(用兩個UPDATE語句實現(xiàn))INSERT INTO 學(xué)生 VALUES(‘S009’,’吳’,18)INSERT INTO 結(jié)果(學(xué)號,姓名,性別)SELECT學(xué)號,姓名,性別 FROM 學(xué)生 WHERE NOT EXISTS(SELECT * FROM 學(xué)習(xí)WHERE 學(xué)生.學(xué)號=學(xué)習(xí).學(xué)號 AND 成績<80)DELETE FROM 學(xué)習(xí)WHERE 成績 IS NULL DELETE FROM 學(xué)習(xí)WHERE 學(xué)號 IN(SELECT 學(xué)號 FROM 學(xué)生 WHERE 姓名=’王樂’)UPDATE 學(xué)習(xí)SET成績=NULL WHERE 成績<60 AND 課程號 IN(SELECT 課程號 FROM 課程 WHERE 課程名=’JAVA’)UPDATE 學(xué)習(xí)SET 成績=成績*1.05 WHERE 成績<(SELECT AVG(成績)FROM 學(xué)生)UPDATE 學(xué)習(xí)SET 成績=成績*1.04 WHERE 成績>75 AND 課程號=’C4’ UPDATE 學(xué)習(xí)SET 成績=成績*1.05 WHERE 成績<=75 AND 課程號=’C4’

      第四篇:數(shù)據(jù)庫原理實驗報告

      南 京 曉 莊 學(xué) 院

      《數(shù)據(jù)庫原理與應(yīng)用》

      課程實驗報告

      實驗一 SQL Server 2005常用服務(wù)與實用工具實驗

      所在院(系): 數(shù)學(xué)與信息技術(shù)學(xué)院 班級:

      學(xué)號:

      姓名:

      1.實驗?zāi)康?/p>

      (1)了解Microsoft 關(guān)系數(shù)據(jù)庫管理系統(tǒng)SQL Server的發(fā)展歷史及其特性。(2)了解SQL Server 2005的主要組件、常用服務(wù)和系統(tǒng)配置。

      (3)掌握Microsoft SQL Server Management Studio 圖形環(huán)境的基本操作方法。了解使用“SQL Server 2005 聯(lián)機從書”獲取幫助信息的方法;了解“查詢編輯器”的使用方法;了解模板的使用方法。

      2.實驗要求

      (1)收集整理Microsoft關(guān)系數(shù)據(jù)庫管理系統(tǒng)SQL Server的相關(guān)資料,總結(jié)其發(fā)展歷史及SQL Server 2005主要版本類別和主要功能特性。

      (2)使用SQL Server配置管理器查看和管理SQL Server 2005服務(wù)。

      (3)使用Microsoft SQL Server Management Studio連接數(shù)據(jù)庫;使用SQL Server幫助系統(tǒng)獲得所感興趣的相關(guān)產(chǎn)品主題/技術(shù)文檔。

      (4)使用Microsoft SQL Server Management Studio“查詢編輯器”編輯并執(zhí)行Transact-SQL查詢語句。

      (5)查看Microsoft SQL Server 2005模板,了解模板的使用方法。(6)按要求完成實驗報告。

      3.實驗步驟、結(jié)果和總結(jié)實驗步驟/結(jié)果

      (1)簡要總結(jié)SQL Server系統(tǒng)發(fā)展歷史及SQL Server 2005主要版本類別與主要功能特性。

      (2)總結(jié)SQL Server Management Studio的主要操作方法。

      (3)總結(jié)查詢編輯器的功能和主要操作方法,并舉例說明。

      (4)總結(jié)“模板”的使用方法,并舉例說明。

      4.實驗思考:

      查詢相關(guān)資料,簡要描述SQL Server 2005的主要服務(wù)。

      第五篇:數(shù)據(jù)庫原理-教案

      第一章 緒論

      內(nèi)容概述

      闡述數(shù)據(jù)庫的基本概念,介紹數(shù)據(jù)管理技術(shù)的進展情況、數(shù)據(jù)庫技術(shù)產(chǎn)生和發(fā)展的背景,數(shù)據(jù)模型的基本概念、組成要素和主要的數(shù)據(jù)模型,概念模型的基本概念及ER方法,數(shù)據(jù)庫系統(tǒng)的3級模式結(jié)構(gòu)以及數(shù)據(jù)庫系統(tǒng)的組成。

      本章目標(biāo)

      本章講解的數(shù)據(jù)庫基本概念和基本知識是學(xué)習(xí)后續(xù)各個章節(jié)的基礎(chǔ)。學(xué)習(xí)本章的目的在于了解基本知識,掌握基本概念,為以后的學(xué)習(xí)打好扎實的基礎(chǔ)。

      重點和難點

      重點:牢固掌握概念模型的基本概念及其主要建模方法ER方法;掌握關(guān)系數(shù)據(jù)模型的相關(guān)概念、數(shù)據(jù)庫系統(tǒng)三級模式和兩層映像的體系結(jié)構(gòu)、數(shù)據(jù)庫系統(tǒng)的邏輯獨立性和物理獨立性等;對于如何通過ER方法描述現(xiàn)實世界的概念模型要做到能夠舉一反三的程度。

      難點:本章的難點是需要掌握數(shù)據(jù)庫領(lǐng)域大量的基本概念。有些概念一開始接觸會感到比較抽象,但不要緊,隨著學(xué)習(xí)的逐漸推進,在后續(xù)章節(jié)中,這些抽象的概念會逐漸變得清晰具體起來。此外,數(shù)據(jù)模型及數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)也是本章的難點。

      第二章 關(guān)系數(shù)據(jù)庫

      內(nèi)容概述

      系統(tǒng)地講解關(guān)系數(shù)據(jù)庫的重要概念,并著重對關(guān)系模型進行講解。關(guān)系模型包括關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合、以及關(guān)系完整性約束三個組成部分。講解關(guān)系代數(shù)、元組關(guān)系演算和域關(guān)系演算。從具體到抽象,先講解實際的語言ALPHA(元組關(guān)系演算語言)和QBE(域關(guān)系演算語言),然后講解抽象的元組關(guān)系演算。本章目標(biāo)

      掌握關(guān)系模型的三個組成部分及各部分所包括的主要內(nèi)容;牢固掌握關(guān)系數(shù)據(jù)結(jié)構(gòu)及其定義;關(guān)系的三類完整性約束的概念。為學(xué)習(xí)后面關(guān)系數(shù)據(jù)庫系統(tǒng)打好基礎(chǔ)。

      重點和難點

      重點:掌握關(guān)系數(shù)據(jù)結(jié)構(gòu)及其定義;關(guān)系的三類完整性約束的概念。需要舉一反三的是:關(guān)系代數(shù)(包括抽象的語言及具體的語言);關(guān)系代數(shù)中的各種運算(包括并、交、差、選擇、投影、連接、除、及廣義笛卡爾積等)、元組關(guān)系演算語言ALPHA及域關(guān)系演算語言QBE等,能夠使用這些語言完成各種數(shù)據(jù)操縱。

      難點:由于關(guān)系代數(shù)較為抽象,因此在學(xué)習(xí)的過程中一定要結(jié)合具體的實例進行學(xué)習(xí)。同時,要注意把握由具體語言到抽象語言的原則,即通過對具體語言如ALPHA和QBE的學(xué)習(xí)過渡到對抽象的關(guān)系演算的把握。

      實驗內(nèi)容

      實驗1 學(xué)習(xí)安裝某一個數(shù)據(jù)庫管理系統(tǒng),通過對某個商用數(shù)據(jù)庫管理系統(tǒng)的安裝使用,初步了解DBMS的工作環(huán)境和系統(tǒng)構(gòu)架,熟悉對DBMS的安裝,為后面的實驗做準(zhǔn)備。

      第三章 關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL

      內(nèi)容概述

      詳細介紹關(guān)系數(shù)據(jù)庫語言SQL。SQL是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言。它內(nèi)容十分豐富,功能非常強大。因為關(guān)系數(shù)據(jù)庫系統(tǒng)的主要功能是通過SQL來實現(xiàn)的,因此講解SQL的同時要進一步講述關(guān)系數(shù)據(jù)庫的基本概念。

      本章目標(biāo) 牢固掌握SQL,達到舉一反三的掌握SQL的功能。同時通過實踐,體會面向過程的語言和SQL的區(qū)別和優(yōu)點。體會關(guān)系數(shù)據(jù)庫系統(tǒng)為數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)提供良好環(huán)境,減輕用戶負擔(dān),提高用戶生產(chǎn)率的原因。

      重點和難點

      重點:關(guān)系模型和關(guān)系數(shù)據(jù)庫是《數(shù)據(jù)庫系統(tǒng)概論》課程的重點,第3章又是重點中的重點。要熟練正確的使用SQL完成對數(shù)據(jù)庫的查詢、插入、刪除、更新操作。在使用具體的SQL時,能有意識地和關(guān)系代數(shù)、關(guān)系演算等語言進行比較,了解他們各自的特點。

      難點:用SQL語言正確完成復(fù)雜查詢,掌握SQL語言強大的查詢功能。因此在學(xué)習(xí)過程中一定要多練習(xí),要在安裝好的數(shù)據(jù)庫系統(tǒng)上進行實際操作,檢查你的答案,你查詢的結(jié)果是否正確。只有通過大量練習(xí)才能真正達到舉一反三的熟練程度。

      實驗內(nèi)容

      實驗2 在安裝好的數(shù)據(jù)庫系統(tǒng)下創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表、創(chuàng)建索引;使用SQL對數(shù)據(jù)庫進行各類查詢操作(單表查詢,連接查詢,嵌套查詢,集合查詢)和更新操作(插入數(shù)據(jù),修改數(shù)據(jù),刪除數(shù)據(jù))。練習(xí)數(shù)據(jù)定義操作,包括基本表的創(chuàng)建、修改及刪除;索引的創(chuàng)建和刪除;視圖的創(chuàng)建和刪除。對視圖的查詢,更新(注意更新的條件)。完成書后作業(yè)的SQL練習(xí)

      第四章 數(shù)據(jù)庫安全性

      內(nèi)容概述

      介紹計算機以及信息安全技術(shù)標(biāo)準(zhǔn)的進展。詳細講解數(shù)據(jù)庫安全性問題和實現(xiàn)技術(shù)。RDBMS實現(xiàn)數(shù)據(jù)庫系統(tǒng)安全性的技術(shù)和方法有多種,本章講解最重要的存取控制技術(shù)、視圖技術(shù)和審計技術(shù)。講解存取控制機制中用戶權(quán)限的授權(quán)與回收,合法權(quán)限檢查。數(shù)據(jù)庫角色的概念和定義等。本章目標(biāo)

      掌握什么是數(shù)據(jù)庫的安全性問題,牢固掌握數(shù)據(jù)庫管理系統(tǒng)實現(xiàn)數(shù)據(jù)庫安全性控制的常用方法和技術(shù)。

      重點和難點

      重點:使用SQL中的GRANT 語句和 REVOKE 語句來實現(xiàn)數(shù)據(jù)庫的實現(xiàn)自主存取控制功能。使用SQL中CREATE ROLE語句創(chuàng)建角色,用GRANT 語句給角色授權(quán)。掌握視圖機制在數(shù)據(jù)庫安全保護中的作用。

      難點:強制存取控制(MAC)機制中確定主體能否存取客體的存取規(guī)則,同學(xué)們要理解并掌握存取規(guī)則為什么要這樣規(guī)定。

      實驗內(nèi)容

      實驗3 在安裝好的數(shù)據(jù)庫系統(tǒng)下對已經(jīng)建立的數(shù)據(jù)庫創(chuàng)建用戶、角色、視圖;使用SQL對數(shù)據(jù)進行安全性控制,包括:授權(quán)和權(quán)力回收。操作完成后看看已授權(quán)的用戶是否真正具有授予的數(shù)據(jù)操作的權(quán)力了;權(quán)力收回操作之后的用戶是否確實喪失了收回的數(shù)據(jù)操作的權(quán)力。本實驗可以分小組完成。例如,用戶A登錄、建表、建視圖等,授權(quán)一些數(shù)據(jù)操作權(quán)限用戶B,然后用戶B登錄,檢查是否具有授予的數(shù)據(jù)操作權(quán)限。也可以一個人建2個用戶來完成。

      第五章 數(shù)據(jù)庫完整性

      內(nèi)容概述

      詳細講解數(shù)據(jù)庫的完整性概念。包括,什么是數(shù)據(jù)庫的完整性,數(shù)據(jù)庫的完整性概念與數(shù)據(jù)庫的安全性概念的區(qū)別和聯(lián)系,RDBMS的數(shù)據(jù)庫完整性實現(xiàn)機制,包括實體完整性、參照完整性和用戶自己定義的完整性約束的定義機制、完整性檢查機制和違背完整性約束條件時RDBMS采取的預(yù)防措施。觸發(fā)器的概念和在數(shù)據(jù)庫完整性檢查中的應(yīng)用。本章目標(biāo)

      掌握什么是數(shù)據(jù)庫的完整性,掌握用SQL語言定義關(guān)系模式的完整性約束條件。

      重點和難點

      重點:牢固掌握DBMS完整性控制機制的三個方面,即完整性約束條件的定義、完整性約束條件的檢查和違約反應(yīng)。需要舉一反三的:用SQL語言定義關(guān)系模式的完整性約束條件。包括定義每個模式的主碼;定義參照完整性;定義與應(yīng)用有關(guān)的完整性。

      難點:RDBMS如何實現(xiàn)完整性的策略,即當(dāng)操作違反實體完整性、參照完整性和用戶定義的完整性約束條件時,RDBMS如何進行處理,以確保數(shù)據(jù)的正確與有效。其中比較復(fù)雜的是參照完整性的實現(xiàn)機制。

      實驗內(nèi)容

      實驗4 在安裝好的數(shù)據(jù)庫系統(tǒng)下對已經(jīng)建立的數(shù)據(jù)庫使用SQL對數(shù)據(jù)進行完整性控制(三類完整性、CHECK短語、CONSTRAIN子句、觸發(fā)器)。進行違約操作,用實驗證實,當(dāng)操作違反了完整性約束條件時,系統(tǒng)是如何進行違約處理的

      第六章 關(guān)系數(shù)據(jù)理論

      內(nèi)容概述

      詳細講解關(guān)系數(shù)據(jù)理論,主要是關(guān)系數(shù)據(jù)庫規(guī)范化理論。包括關(guān)系數(shù)據(jù)庫邏輯設(shè)計可能出現(xiàn)的問題,數(shù)據(jù)依賴的基本概念(包括,函數(shù)依賴、平凡函數(shù)依賴、非平凡的函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞函數(shù)依賴的概念;碼、候選碼、外碼的概念;多值依賴的概念),范式的概念、1NF、2NF、3NF、BCNF、4NF的概念和判定方法。數(shù)據(jù)依賴的Armstrong公理系統(tǒng)。本章內(nèi)容分為基本要求部分(《概論》6.1-6.3)和高級部分(《概論》6.4)。前者是計算機大學(xué)本科學(xué)生應(yīng)該掌握的內(nèi)容。后者是研究生應(yīng)該學(xué)習(xí)掌握的內(nèi)容。本章目標(biāo)

      關(guān)系數(shù)據(jù)理論既是關(guān)系數(shù)據(jù)庫的重要理論基礎(chǔ)也是數(shù)據(jù)庫邏輯設(shè)計的理論指南和有力工具。要掌握規(guī)范化理論和優(yōu)化數(shù)據(jù)庫模式設(shè)計的方法。

      重點和難點

      重點:了解什么是一個“不好”的數(shù)據(jù)庫模式。什么是模式的插入異常和刪除異常。規(guī)范化理論的重要意義。牢固掌握數(shù)據(jù)依賴的基本概念,范式的概念,從1NF到4NF的定義,規(guī)范化的含義和作用。需要舉一反三的:四個范式的理解與應(yīng)用,各個級別范式中存在的問題(插入異常、刪除異常、數(shù)據(jù)冗余)和解決方法。

      難點:能夠根據(jù)應(yīng)用語義,完整地寫出關(guān)系模式的數(shù)據(jù)依賴集合,并能根據(jù)數(shù)據(jù)依賴分析某一個關(guān)系模式屬于第幾范式。各個級別范式的關(guān)系及其證明。

      本章內(nèi)容的理論性較強。要通過具體例子和習(xí)題練習(xí)理解和掌握理論知識

      第七章 數(shù)據(jù)庫設(shè)計

      內(nèi)容概述

      講解數(shù)據(jù)庫設(shè)計方法和技術(shù)。數(shù)據(jù)庫設(shè)計的特點,數(shù)據(jù)庫設(shè)計的基本步驟,數(shù)據(jù)庫設(shè)計過程中數(shù)據(jù)字典的內(nèi)容,數(shù)據(jù)庫設(shè)計各個階段的設(shè)計目標(biāo)、具體設(shè)計內(nèi)容、設(shè)計描述、設(shè)計方法等。本章內(nèi)容的實踐性較強,教師可以少講,讓學(xué)生多讀書并進行實踐。

      本章目標(biāo)

      了解數(shù)據(jù)庫設(shè)計的重要性和數(shù)據(jù)庫設(shè)計在信息系統(tǒng)開發(fā)和建設(shè)中的核心地位。掌握數(shù)據(jù)庫設(shè)計方法和步驟,使學(xué)生具有設(shè)計數(shù)據(jù)庫模式以及開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng)的基本能力,能在實際工作中運用這些知識、技術(shù)和方法,設(shè)計符合應(yīng)用需求的數(shù)據(jù)庫及其應(yīng)用系統(tǒng)。重點和難點

      重點:掌握數(shù)據(jù)庫設(shè)計步驟和數(shù)據(jù)庫設(shè)計過程中的各級模式設(shè)計方法。特別是數(shù)據(jù)庫概念結(jié)構(gòu)的設(shè)計和邏輯結(jié)構(gòu)的設(shè)計,這是數(shù)據(jù)庫設(shè)計過程中最重要的兩個環(huán)節(jié)。牢固掌握用E-R圖來表示概念模型的方法,掌握E-R圖的設(shè)計,E-R圖向關(guān)系模型的轉(zhuǎn)換。

      難點: 技術(shù)上的難點是E-R圖的設(shè)計和數(shù)據(jù)模型的優(yōu)化,包括對現(xiàn)實世界進行抽象的能力,提取實體、屬性、實體型之間的聯(lián)系,正確劃分實體與屬性的能力。如何把第6章關(guān)系數(shù)據(jù)理論與本章結(jié)合,用關(guān)系數(shù)據(jù)理論指導(dǎo)數(shù)據(jù)庫的邏輯設(shè)計。真正的難點是理論與實際的結(jié)合。同學(xué)們一般缺乏實際經(jīng)驗,缺乏對實際問題解決的能力。特別是缺乏應(yīng)用領(lǐng)域的知識。而數(shù)據(jù)庫設(shè)計需要設(shè)計人員對應(yīng)用環(huán)境、專業(yè)業(yè)務(wù)有具體深入的了解,這樣才能設(shè)計出符合具體領(lǐng)域要求的數(shù)據(jù)庫及其應(yīng)用系統(tǒng)。要在完成本章習(xí)題的基礎(chǔ)上認(rèn)真完成大作業(yè)。體會這些要點,從而真正掌握本章講解的知識、方法和技術(shù)。

      課程大作業(yè) 《數(shù)據(jù)庫設(shè)計與應(yīng)用開發(fā)》

      在某個RDBMS產(chǎn)品上,選擇合適的應(yīng)用系統(tǒng)開發(fā)工具為某個部門或單位開發(fā)一個數(shù)據(jù)庫應(yīng)用系統(tǒng)。通過實踐,掌握本章介紹的數(shù)據(jù)庫設(shè)計方法,同時培養(yǎng)團隊合作精神。要求5~6位同學(xué)組成一個開發(fā)小組,每位同學(xué)承擔(dān)不同角色(例如:項目管理員、DBA、系統(tǒng)分析員、系統(tǒng)設(shè)計員、系統(tǒng)開發(fā)員、系統(tǒng)測試員)。具體要求:

      * 給出數(shù)據(jù)庫設(shè)計各個階段的詳細設(shè)計報告;

      * 寫出系統(tǒng)的主要功能和使用說明;

      * 提交運行的系統(tǒng);

      * 寫出收獲和體會,包括已解決和尚未解決的問題,進一步完善的設(shè)想與建議;

      每個小組進行60分鐘的報告和答辯,講解設(shè)計方案,演示系統(tǒng)運行,匯報分工與合作情況

      第八章 數(shù)據(jù)庫編程 內(nèi)容概述

      在數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)中常常使用編程方法對數(shù)據(jù)庫進行操縱。本章講解這些編程技術(shù)涉及的概念和使用的方法。主要包括嵌入式SQL、游標(biāo)的概念;SQL的過程化擴展PL/SQL和存儲過程;使用ODBC設(shè)計開發(fā)數(shù)據(jù)庫應(yīng)用程序的方法。

      因為JDBC編程、OLEDB編程與ODBC編程的思路基本相同,限于篇幅本章就不講解JDBC和OLEDB編程,學(xué)生可以通過上機實驗了解這些技術(shù)。本章內(nèi)容的實踐性較強,教師可以少講,讓學(xué)生多讀書并進行實踐。

      本章目標(biāo)

      掌握開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng)的各種編程方法,具有正確選擇不同的方法和技術(shù)開發(fā)應(yīng)用程序的能力。

      重點和難點

      重點:了解SQL編程技術(shù)可以有效克服SQL實現(xiàn)復(fù)雜應(yīng)用方面的不足,提高應(yīng)用系統(tǒng)和RDBMS間的互操作性。掌握嵌入SQL中游標(biāo)的概念和使用方法;掌握PL/SQL和存儲過程的基本概念,基本結(jié)構(gòu),語句語法和用法。了解使用ODBC開發(fā)應(yīng)用系統(tǒng)的體系結(jié)構(gòu),掌握ODBC API和ODBC的應(yīng)用程序的工作流程。

      難點:理論聯(lián)系實際,能夠在實際安裝的RDBMS上通過編程的方式開發(fā)應(yīng)用程序,完成對數(shù)據(jù)庫的各種操作。能夠使用ODBC來進行數(shù)據(jù)庫應(yīng)用程序的設(shè)計,使設(shè)計的應(yīng)用系統(tǒng)可移植性好,并且能同時訪問不同的數(shù)據(jù)庫,共享數(shù)據(jù)資源。

      實驗內(nèi)容

      《數(shù)據(jù)庫系統(tǒng)概論》第4版給出了4個實驗,教師可以根據(jù)情況選擇其中部分實驗讓學(xué)生完成。具體實驗要求請參見教科書。實驗

      5通過嵌入式SQL訪問數(shù)據(jù)庫 實驗6

      使用PL/SQL編寫存儲過程訪問數(shù)據(jù)庫 實驗7

      通過ODBC訪問數(shù)據(jù)庫

      實驗8

      通過JDBC訪問數(shù)據(jù)庫(注:因為JDBC編程與ODBC編程的思路基本相同,限于篇幅本章沒有講解JDBC,同學(xué)可以自學(xué),也可以參考中國人民大學(xué) 數(shù)據(jù)庫系統(tǒng)概論精品課程教學(xué)網(wǎng)站:http://004km.cn/ 中的課程實驗)。

      第九章 關(guān)系查詢處理和查詢優(yōu)化

      內(nèi)容概述

      通過實例講解關(guān)系數(shù)據(jù)庫查詢優(yōu)化的重要性和可能性。講解RDBMS的查詢處理步驟,即查詢分析、查詢檢查、查詢優(yōu)化和查詢執(zhí)行;查詢優(yōu)化的基本概念,查詢優(yōu)化包括代數(shù)優(yōu)化和物理優(yōu)化;代數(shù)優(yōu)化是指關(guān)系代數(shù)表達式的優(yōu)化;物理優(yōu)化則是指存取路徑和底層操作算法的選擇,所以先講解實現(xiàn)查詢操作的主要算法,主要是選擇操作和連接操作的主要算法思想,然后講解關(guān)系代數(shù)表達式等價變換規(guī)則,關(guān)系代數(shù)表達式的優(yōu)化,物理優(yōu)化方法(基于啟發(fā)式規(guī)則的存取路徑選擇優(yōu)化,操作算法的執(zhí)行代價估算方法,基于代價的優(yōu)化方法)。

      本章目標(biāo)

      本章并不要求學(xué)生掌握RDBMS查詢處理和查詢優(yōu)化的內(nèi)部實現(xiàn)技術(shù),因此沒有詳細講解技術(shù)細節(jié)。

      本章的目的是希望學(xué)生了解RDBMS查詢處理的基本步驟,查詢優(yōu)化的概念、基本方法和技術(shù),為數(shù)據(jù)庫應(yīng)用開發(fā)中利用查詢優(yōu)化技術(shù)提高查詢效率和系統(tǒng)性能打下基礎(chǔ)。

      重點和難點

      重點:了解關(guān)系數(shù)據(jù)庫查詢優(yōu)化的重要性。掌握查詢處理各個步驟的主要功能。能夠把SQL語句轉(zhuǎn)換成查詢樹,對查詢樹進行代數(shù)優(yōu)化,轉(zhuǎn)換成優(yōu)化的查詢樹。掌握物理優(yōu)化的基本方法。難點:能運用本章學(xué)習(xí)的查詢優(yōu)化知識,對于比較復(fù)雜的查詢,尤其是涉及連接和嵌套的查詢,寫出適合RDBMS自動優(yōu)化的SQL語句。對于RDBMS不能優(yōu)化的查詢需要重寫查詢語句,進行手工調(diào)整以優(yōu)化性能。不要把優(yōu)化的任務(wù)全部放在RDBMS上。

      實驗內(nèi)容

      實驗9 查詢優(yōu)化 通過本章實驗,了解你安裝使用的RDBMS的查詢優(yōu)化方法和查詢計劃表示,能夠利用它分析查詢語句的實際執(zhí)行方案和查詢代價,進而通過建立索引或者修改SQL語句來降低查詢代價,達到優(yōu)化系統(tǒng)性能的目標(biāo)。

      具體實驗內(nèi)容: 對單表查詢

      例如以下的查詢(可以自己給出查詢語句)select * from student

      where age>20 ; 2.連接查詢,普通的兩表連接查詢或多表連接查詢

      3.嵌套查詢,自己寫幾個帶有子查詢的例子,主要考慮帶有IN和EXISTS謂詞的子查詢,包括相關(guān)子查詢和不相關(guān)子查詢。也可以使用《數(shù)據(jù)庫系統(tǒng)概論》書上列舉的例子。

      對以上各種查詢,通過建立索引或者刪除索引(單表查詢語句)、修改連接順序(連接查詢語句)、重寫SQL語句即查詢重寫(嵌套查詢);比較不同查詢計劃執(zhí)行的性能差異,達到降低查詢代價,優(yōu)化性能的目標(biāo)。

      第十章 數(shù)據(jù)庫恢復(fù)技術(shù)

      內(nèi)容概述

      事務(wù)處理技術(shù)主要包括數(shù)據(jù)庫恢復(fù)技術(shù)和并發(fā)控制技術(shù)。因為事務(wù)是數(shù)據(jù)庫恢復(fù)和并發(fā)控制的基本單位,所以首先講解事務(wù)的基本概念和事務(wù)的ACID性質(zhì)。

      本章講解數(shù)據(jù)庫恢復(fù)技術(shù)。包括數(shù)據(jù)庫運行中可能發(fā)生的故障類型,數(shù)據(jù)庫恢復(fù)中最經(jīng)常使用的技術(shù)—數(shù)據(jù)轉(zhuǎn)儲和登錄日志文件。講解日志文件的內(nèi)容及作用,登記日志文件所要遵循的原則,針對事務(wù)故障、系統(tǒng)故障和介質(zhì)故障等不同故障的恢復(fù)策略和恢復(fù)方法。具有檢查點的恢復(fù)技術(shù)。數(shù)據(jù)庫鏡像功能。

      本章目標(biāo)

      掌握事務(wù)的基本概念和事務(wù)的ACID性質(zhì)。了解數(shù)據(jù)庫恢復(fù)技術(shù)的重要性,針對不同的故障類型,掌握恢復(fù)數(shù)據(jù)庫的策略和方法。

      重點和難點

      重點:牢固掌握事務(wù)的基本概念和事務(wù)的ACID性質(zhì)。要掌握數(shù)據(jù)庫故障恢復(fù)的策略和方法。數(shù)據(jù)庫恢復(fù)的基本原理是數(shù)據(jù)備份,它貌似簡單,實際卻很復(fù)雜。數(shù)據(jù)庫的事務(wù)管理策略(不僅有數(shù)據(jù)庫恢復(fù)策略,還有并發(fā)控制策略)和DBMS緩沖區(qū)管理策略、事務(wù)一致性級別密切相關(guān),同學(xué)們要在學(xué)習(xí)完這些知識后把這些問題聯(lián)系起來,提升對這些技術(shù)的理解和掌握。

      難點:掌握日志文件的使用,系統(tǒng)故障、介質(zhì)故障的恢復(fù)方法。對于剛剛學(xué)習(xí)數(shù)據(jù)庫的學(xué)生來講并不體會數(shù)據(jù)庫故障恢復(fù)的復(fù)雜性和重要性。在實際工作中,則必須正確了解所用的DBMS產(chǎn)品提供的恢復(fù)技術(shù)和恢復(fù)方法,并且能夠根據(jù)這些機制正確制定系統(tǒng)的恢復(fù)策略,以保證數(shù)據(jù)庫系統(tǒng)7*24小時正確運行。保證數(shù)據(jù)庫系統(tǒng)在遇到故障時能及時恢復(fù)正常運行,提高抗故障抗災(zāi)難的能力。

      實驗內(nèi)容

      在安裝好的數(shù)據(jù)庫系統(tǒng)下對已經(jīng)建立的數(shù)據(jù)庫人為地制造事務(wù)內(nèi)部故障和系統(tǒng)故障,檢查系統(tǒng)是否進行了恢復(fù)。

      第十一章 并發(fā)控制

      內(nèi)容概述 數(shù)據(jù)庫管理系統(tǒng)必須提供并發(fā)控制機制來協(xié)調(diào)并發(fā)用戶的并發(fā)操作以保證并發(fā)事務(wù)的隔離性和一致性,保證數(shù)據(jù)庫的一致性。本章討論數(shù)據(jù)庫并發(fā)控制的基本概念和實現(xiàn)技術(shù)。包括封鎖技術(shù)、封鎖協(xié)議、活鎖和死鎖的概念、并發(fā)調(diào)度的可串行性、沖突可串行化調(diào)度、兩段鎖協(xié)議、封鎖的粒度、意向鎖。

      本章目標(biāo)

      了解的數(shù)據(jù)庫并發(fā)控制技術(shù)的必要性和重要性。牢固掌握并發(fā)控制的基本概念。

      重點和難點

      重點:掌握并發(fā)操作產(chǎn)生的數(shù)據(jù)不一致性(丟失修改、不可重復(fù)讀、讀“臟數(shù)據(jù)”)的確切含義。封鎖協(xié)議與數(shù)據(jù)一致性的關(guān)系;并發(fā)調(diào)度的可串行性概念。

      難點:兩段鎖協(xié)議與串行性的關(guān)系、與死鎖的關(guān)系。具有意向鎖的多粒度封鎖方法的封鎖過程。

      本章內(nèi)容有一定的深度和難度,可以通過對實例的學(xué)習(xí)和習(xí)題的練習(xí)來正確理解和掌握基本概念

      下載數(shù)據(jù)庫原理復(fù)習(xí)word格式文檔
      下載數(shù)據(jù)庫原理復(fù)習(xí).doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


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

      相關(guān)范文推薦

        數(shù)據(jù)庫原理實驗報告

        南 京 曉 莊 學(xué) 院 《數(shù)據(jù)庫原理與應(yīng)用》 課程實驗報告 實驗二 數(shù)據(jù)庫的創(chuàng)建、管理、備份及還原實驗 所在院(系): 數(shù)學(xué)與信息技術(shù)學(xué)院 班級: 學(xué)號: 姓名: 1.實驗?zāi)康?.....

        數(shù)據(jù)庫原理課程設(shè)計指導(dǎo)書

        數(shù)據(jù)庫課程設(shè)計 第一節(jié)序 言 數(shù)據(jù)庫是信息系統(tǒng)的核心和基礎(chǔ),它把信息系統(tǒng)中大量的數(shù)據(jù)按一定的模型組織起來,提供存儲、維護、檢索數(shù)據(jù)的功能,使信息系統(tǒng)可以方便、及時、準(zhǔn)確......

        數(shù)據(jù)庫原理_實驗教學(xué)講稿

        邯 鄲 學(xué) 院 實驗教學(xué)講稿 2013~2014學(xué)年 第一學(xué)期 分院(系、部): 教 研 室: 課 程 名 稱: 授 課 班 級: 主 講 教 師: 職稱: 使 用 教 材: 信息工程學(xué)院 網(wǎng)絡(luò)工程 數(shù)據(jù)庫原理 網(wǎng)絡(luò)......

        數(shù)據(jù)庫原理實驗指導(dǎo)書

        《數(shù)據(jù)庫原理實驗指導(dǎo)書》 河南科技大學(xué)電子信息工程學(xué)院目錄 實驗規(guī)則 ...................................................................................................

        數(shù)據(jù)庫原理實驗教案

        《數(shù)據(jù)庫原理》課程實驗 實驗1 創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表 一、實驗?zāi)康?熟悉SQL Server Management Studio界面;掌握通過圖形化向?qū)Ш蛨?zhí)行Transact-SQL語句創(chuàng)建數(shù)據(jù)庫的方法。 二、......

        數(shù)據(jù)庫原理選擇題總結(jié)

        數(shù)據(jù)庫系統(tǒng)工程師:數(shù)據(jù)庫原理選擇題總結(jié)(1) 第一章 1. 單個用戶使用的數(shù)據(jù)視圖的描述稱為()(2001年10月全國卷) a. 外模式 b. 概念模式 c. 內(nèi)模式 d. 存儲模式2. 子模式ddl用......

        數(shù)據(jù)庫原理實驗五

        數(shù)據(jù)庫原理及應(yīng)用實驗報告 實驗名稱:數(shù)據(jù)庫備份與恢復(fù)、數(shù)據(jù)庫的安全性 實驗類型:驗證型 實驗環(huán)境:oracle 11g 指導(dǎo)教師:陳 駿 專業(yè)班級:信安班 姓名: 學(xué)號: 聯(lián)系電話:***......

        數(shù)據(jù)庫原理實驗三

        數(shù)據(jù)庫原理及應(yīng)用實驗報告 實驗名稱:存儲過程 實驗類型:驗證型 實驗環(huán)境:oracle 11g 指導(dǎo)教師:陳 駿 專業(yè)班級:信安1505班 姓名: 學(xué)號:512015 聯(lián)系電話:電子郵件: 實驗地點:東6E501 實......