數(shù)據(jù)庫專升本復(fù)習(xí)_第1頁
數(shù)據(jù)庫專升本復(fù)習(xí)_第2頁
數(shù)據(jù)庫專升本復(fù)習(xí)_第3頁
數(shù)據(jù)庫專升本復(fù)習(xí)_第4頁
數(shù)據(jù)庫專升本復(fù)習(xí)_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上數(shù)據(jù)庫專升本復(fù)習(xí)第一章 數(shù)據(jù)庫系統(tǒng)概述1.2 數(shù)據(jù)庫技術(shù)的產(chǎn)生、發(fā)展數(shù)據(jù)庫歷經(jīng)了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。1,人工管理階段:軟件只有匯編語言,處理的方式是批處理。特點:(1)數(shù)據(jù)不保存 (2)數(shù)據(jù)不共享 (3)數(shù)據(jù)不具有獨立性(4)系統(tǒng)沒有專用的軟件對數(shù)據(jù)進(jìn)行管理 2,文件系統(tǒng)階段:特點:(1)數(shù)據(jù)以文件形式長期保存 (2)由文件系統(tǒng)管理數(shù)據(jù)(3)程序與數(shù)據(jù)間有一定獨立性 3,數(shù)據(jù)庫系統(tǒng)階段:特點:(1)數(shù)據(jù)結(jié)構(gòu)化 (2)數(shù)據(jù)共享性高、冗余度低(3)數(shù)據(jù)獨立性高(4)有統(tǒng)一的數(shù)據(jù)控制功能整個數(shù)據(jù)庫的結(jié)構(gòu)可分成三級:用戶的邏輯結(jié)構(gòu)、整體邏輯結(jié)構(gòu)和物理結(jié)

2、構(gòu)。數(shù)據(jù)獨立性分兩級:物理獨立性和邏輯獨立性。數(shù)據(jù)庫管理系統(tǒng)(DBMS)提供四方面的數(shù)據(jù)控制功能:數(shù)據(jù)的安全性控制:例如,口令檢查用戶身份數(shù)據(jù)的完整性控制:系統(tǒng)通過設(shè)置一些完整性規(guī)則,確保數(shù)據(jù)的正確性、有效性和相容性。并發(fā)控制 數(shù)據(jù)恢復(fù)1.3數(shù)據(jù)庫系統(tǒng)的組成1,數(shù)據(jù)庫系統(tǒng)(DBS):主要由數(shù)據(jù)庫、數(shù)據(jù)庫用戶、計算機硬件系統(tǒng)、計算機軟件系統(tǒng)等幾部分組成。2,數(shù)據(jù)庫(DB):是存儲在計算機內(nèi)、有組織的、可共享的數(shù)據(jù)集合。具有較小的冗余度、較高的數(shù)據(jù)獨立性和易擴展性,并為各種用戶共享。數(shù)據(jù)庫有如下兩個特點:集成性和共享性。3,用戶:可以對數(shù)據(jù)庫進(jìn)行存儲、維護(hù)和檢索等操作。4,軟件系統(tǒng):主要包括數(shù)據(jù)庫

3、管理系統(tǒng)(DBMS)及其開發(fā)工具、操作系統(tǒng)和應(yīng)用系統(tǒng)等。數(shù)據(jù)庫管理系統(tǒng)(DBMS)是數(shù)據(jù)庫系統(tǒng)的核心。數(shù)據(jù)庫系統(tǒng)(DBS)包含DB、DBMS和DBA(數(shù)據(jù)庫管理員)1.4數(shù)據(jù)庫系統(tǒng)的模式結(jié)構(gòu)1, 數(shù)據(jù)庫系統(tǒng)的三級模式:從邏輯上分為三級:外模式、模式、內(nèi)模式模式:模式也稱為邏輯模式、概念模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。 一個數(shù)據(jù)庫只有一個模式。外模式:外模式又稱為子模式或用戶模式。是數(shù)據(jù)庫用戶能看到并允許使用的那部分?jǐn)?shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示,也是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,即用戶視圖。 外模式是模式的子集,一個數(shù)據(jù)庫可以有多個外模式。內(nèi)模式:內(nèi)模式又

4、稱為存儲模式,靠近物理存儲,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式。 一個數(shù)據(jù)庫只有一個內(nèi)模式。2, 數(shù)據(jù)庫系統(tǒng)的二級映像與數(shù)據(jù)獨立性:(1) 外模式/模式映像。模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu),外模式描述的是數(shù)據(jù)的局部邏輯結(jié)構(gòu)。數(shù)據(jù)庫中的同一模式可以有任意多個外模式。保證了數(shù)據(jù)與程序間的邏輯獨立性。(2) 模式/內(nèi)模式映像。模式和內(nèi)模式都只有一個, 所以模式/內(nèi)模式映像是唯一的。確保了數(shù)據(jù)的物理獨立性。3,數(shù)據(jù)庫系統(tǒng)的三級模式與二級映像的優(yōu)點:(1)保證數(shù)據(jù)的獨立性 (2)簡化了用戶接口(3)有利于數(shù)據(jù)共享 (4)有利于數(shù)據(jù)的安全保密1.5數(shù)據(jù)庫系統(tǒng)的外部體系結(jié)構(gòu)從最終用戶的角度看,數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)分為

5、單用戶結(jié)構(gòu)主從式結(jié)構(gòu)分布式結(jié)構(gòu)、客服/服務(wù)器結(jié)構(gòu)和瀏覽器/服務(wù)器結(jié)構(gòu)1.6數(shù)據(jù)庫管理系統(tǒng)用戶在數(shù)據(jù)庫系統(tǒng)中的一切操作,包括數(shù)據(jù)定義、查詢、更新及各種控制,都是通過DBMS進(jìn)行的。1, DBMS的主要功能:(1) 提供數(shù)據(jù)定義語言(DDL),定義數(shù)據(jù)的模式、外模式和內(nèi)模式三級模式結(jié)構(gòu),定義模式/內(nèi)模式和外模式/模式二級映像,定義有關(guān)約束條件。DD(數(shù)據(jù)字典)是DBMS存取數(shù)據(jù)的基本依據(jù)。數(shù)據(jù)字典用來描述數(shù)據(jù)庫中有關(guān)信息的數(shù)據(jù)目錄,包括數(shù)據(jù)庫的三級模式、數(shù)據(jù)類型、用戶名和用戶權(quán)限等有關(guān)數(shù)據(jù)庫系統(tǒng)的信息,起著系統(tǒng)狀態(tài)的目錄表作用。(2) 提供數(shù)據(jù)操縱語言(DML),實現(xiàn)對數(shù)據(jù)庫的基本操作,包括檢索s

6、elect、更新(插入insert、修改update、刪除delete)等。(3) 數(shù)據(jù)庫運行管理功能:對數(shù)據(jù)庫的運行進(jìn)行管理師DBMS運行的核心部分。1.7數(shù)據(jù)模型(1)信息世界(概念模型)的有關(guān)基本概念: 鍵key:在實體型中,能唯一標(biāo)識一個實體的屬性或?qū)傩约Q為實體的鍵,也稱為關(guān)鍵字。 域:屬性的取值范圍稱為該屬性的域。(2)數(shù)據(jù)模型的分類: 1,第一類模型是概念模型,也稱為信息模型,他是按用戶的觀點對數(shù)據(jù)和信息建模,是對現(xiàn)實世界的事物及其聯(lián)系的第一級抽象。概念模型屬于信息世界中的模型。主要用于數(shù)據(jù)庫設(shè)計時用戶和數(shù)據(jù)庫設(shè)計人員之間交流的工具。在概念模型中,比較著名的是實體聯(lián)系模型,簡稱E

7、-R模型。2,第二類模型是邏輯模型(或稱數(shù)據(jù)模型)和物理模型。是按計算機的觀點對數(shù)據(jù)建模,是對現(xiàn)實世界的第二級抽象。數(shù)據(jù)庫是按DBMS規(guī)定的數(shù)據(jù)模型組織和建立起來的。邏輯模型主要包括:層次模型、網(wǎng)狀模型、關(guān)系模型面向?qū)ο竽P偷?。?)實體聯(lián)系模型及E-R圖: E-R圖的基本成分包含實體型、屬性和聯(lián)系。 實體型:用矩形框表示。 屬性:用橢圓形框表示。聯(lián)系:用菱形框表示。 實體之間的聯(lián)系有:一對一(1:1)一對多(1:n)多對多(m:n)(4) 數(shù)據(jù)模型的組成要素:數(shù)據(jù)模型由:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)的完整性約束組成。1.8四種數(shù)據(jù)模型數(shù)據(jù)模型主要有層次模型、網(wǎng)狀模型和關(guān)系模型三種。層次模型和網(wǎng)狀

8、模型統(tǒng)稱為非關(guān)系模型。(1)層次模型用樹形數(shù)據(jù)結(jié)構(gòu)(有向樹)來表示各類實體間的聯(lián)系。(2)網(wǎng)狀模型是采用有向圖結(jié)構(gòu)表示記錄型與記錄型之間聯(lián)系。(3)關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)是一張規(guī)范化的二維表,由表名、表頭和表體三部分組成。一個關(guān)系對應(yīng)一張二維表。第二章 關(guān)系數(shù)據(jù)庫2.1關(guān)系的形式化定義及其有關(guān)概念1,笛卡爾積:笛卡爾積實際是一個二維表,表的框架由域構(gòu)成,表的行稱為元組,列稱為域。列的個數(shù)稱為目或度。2,關(guān)系。在數(shù)學(xué)上,關(guān)系是笛卡爾積的任意子集。3,關(guān)系的性質(zhì):關(guān)系是一種規(guī)范化了的二維表中行的集合。 具有如下性質(zhì):(1)列是同質(zhì)的。每一列的分量來自同一個域,是同一類型的數(shù)據(jù)。(2)不同的列可來自同一

9、個域,列稱為屬性,屬性必須有不同的名字。 (3)列的順序可以任意交換 (4)關(guān)系中元組(行)的順序可任意 (5)不允許出現(xiàn)相同的元組 (6)分量必須是不可分的數(shù)據(jù)項4,關(guān)系模式:一個關(guān)系模式應(yīng)當(dāng)是一個五元組。在關(guān)系模型中,實體以及實體間的聯(lián)系都是用關(guān)系來表示的。2.2關(guān)系的鍵與關(guān)系的完整性1,候選鍵:能唯一標(biāo)識關(guān)系中元組的一個屬性或?qū)傩约?,稱為候選鍵,或稱為候選關(guān)鍵字或候選碼。(1)唯一性(2)最小性2,主關(guān)系鍵(primary key):被選用的候選鍵稱為主關(guān)系鍵,或主鍵、主碼、關(guān)鍵字等。3,關(guān)系的完整性:實體完整性 參照完整性 用戶自定義完整性 實體完整性:是指主關(guān)系鍵的值不能為空或部分為

10、空。參照完整性:是對外部關(guān)系鍵的說明。用戶自定義完整性:如,取值范圍的約束;數(shù)據(jù)輸入格式的限制等。2.3關(guān)系代數(shù)(1)集合運算符4個:(并)、(差)、(交)、×(笛卡爾積)。(2)專門的關(guān)系運算符5個:(選取)、(投影)、(連接)、*(自然連接)、÷(除)(3)邏輯運算符3個:(或)、(與)、(非)(4)基本運算5個:并、差、積、選取和投影。 (并):合并兩個關(guān)系,列數(shù)不變,刪去重復(fù)的元組(行)。 (交):用關(guān)系R和關(guān)系S表示:RS=R-R-S具體實例請看課本。第三章 關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQLSQL是結(jié)構(gòu)化查詢語言的縮寫。3.1 SQL的基本概念(1)基本表base tab

11、le:一個關(guān)系對應(yīng)一個基本表。一個或多個基本表對應(yīng)一個存儲文件。(2)視圖view:視圖是從一個或幾個基本表導(dǎo)出的表,是一個虛擬的表。數(shù)據(jù)庫中只存放視圖的定義而不存放視圖的對應(yīng)數(shù)據(jù)。SQL支持?jǐn)?shù)據(jù)庫的三級模式結(jié)構(gòu)。其中外模式對應(yīng)于視圖,模式基本表,內(nèi)模式存儲文件。SQL具有數(shù)據(jù)查詢(DQL)、數(shù)據(jù)定義(DDL)、數(shù)據(jù)操縱(DML)和數(shù)據(jù)控制(DCL)4種功能。SQL的動詞:數(shù)據(jù)定義3個:創(chuàng)建create、修改alter、刪除drop。 數(shù)據(jù)查詢1個:查詢或檢索select。 數(shù)據(jù)操縱3個:添加或插入insert、修改update、刪除delete。 數(shù)據(jù)控制2個:授予grant、收回revok

12、e。3.3 創(chuàng)建和使用數(shù)據(jù)庫在SQL Server2000中,創(chuàng)建一個數(shù)據(jù)庫至少產(chǎn)生兩個文件,即數(shù)據(jù)文件和日志文件。一個數(shù)據(jù)庫至少應(yīng)包含一個數(shù)據(jù)文件和一個事務(wù)日志文件。一個數(shù)據(jù)庫可以有一個或多個數(shù)據(jù)文件,一個數(shù)據(jù)文件只屬于一個數(shù)據(jù)庫。(1) 用SQL命令創(chuàng)建數(shù)據(jù)庫的語法格式如下: Create database database_name (2) 用SQL命令修改數(shù)據(jù)庫的語法格式如下: alter database database_name(3)用SQL命令刪除數(shù)據(jù)庫的語法格式如下: drop database database_name3.4 創(chuàng)建和使用數(shù)據(jù)表(1)用SQL命令創(chuàng)建數(shù)據(jù)表。

13、例如:用SQL命令創(chuàng)建一個學(xué)生表S,對Sno字段進(jìn)行NOT NULL約束。 Create table S ( Sno char(6) not null, Sn varchar(8), Sex char(2)default=男, Age int, Dept varchar(20) )(注:default表示默認(rèn)值)在SQL Server中可以定義 NULL/NOT NULL unique(唯一約束) primary key(主鍵) foreign key(外鍵) check(范圍)五種類型的完整性約束。例如:創(chuàng)建S表,S#為主鍵,SN不能為空Create Table S( S#varchar(1

14、0)primary key, SNvarchar(8)not null, Ageint, Deptvarchar(50))(2)用SQL命令修改數(shù)據(jù)表。1,add(增加)方式:例如:在S表中增加一個班號列和住址列。Alter table SAddClass_no char(6),Address char (40)2,alter(修改)方式 例如:把S表中的Sn列加寬到10個字符。 Alter table S Alter column Sn char(10)3,drop(刪除)方式 例如:刪除S表中的主鍵。 Alter table S Drop constraint_prim(3)用SQL命令刪

15、除數(shù)據(jù)表。 例如:刪除表S。 Drop table S3.5 創(chuàng)建與使用索引1, 索引的作用:(1),加快查詢速度;(2),保證行的唯一性。2,索引的分類:(1)按照索引記錄的存放位置,可分為:聚集索引和非聚集索引。 在檢索記錄時,聚集索引速度比非聚集索引快 (2)唯一索引 (3)復(fù)合索引3,用SQL命令創(chuàng)建索引。語法格式如下:create unique / clustered index< 索引名 > on < 表名 >( < 列名 > 次序,< 列名 >次序 ) (注:其中unique表示建立唯一索引; clustered表示建立聚集索引)例

16、如:在“圖書”表中以“作者”建立一個索引Create Index i_auth on Book(BAuth)4,用drop index命令刪除索引。 例如:刪除表SC的索引SCI。 Drop index SC.SCI3.6 數(shù)據(jù)查詢(select)例如:(1) 在“高等教育出版社”出版、書名為“操作系統(tǒng)”的圖書的作者名Select BAuth From Book, Publish where Book.PNo=Publish.PNo and PName=高等教育出版社 and BName=操作系統(tǒng)(2) 查詢“電子工業(yè)出版社”出版的“計算機”類圖書的價格,同時輸出出版社名稱及圖書類別Selec

17、t BPrice, PName, BType From Book, PublishWhere Book.PNo=Publish.PNo and BType=計算機 and PName=電子工業(yè)出版社(3) 查找書名中有“計算機”一詞的圖書的書名及作者Select BName, BAuth From Book Where BName like %計算機%字符串中可以含有的通配符:% 代表0個或多個字符; _ 下劃線代表一個字符; 表示在某一范圍的字符。(4)分組查詢:group by子句可以將查詢結(jié)果按屬性列或?qū)傩粤薪M合在行的方向上進(jìn)行分組。 若分組后還要按照一定的條件進(jìn)行篩選,則需要使用hav

18、ing子句。例如:查詢選修兩門以上(含兩門)課程的學(xué)生的學(xué)號和選課門數(shù)。 Select Sno, count(*)as SC_num From SC Group by Sno Having (count(*)>=2)當(dāng)一個SQL查詢中同時使用where子句,group by子句和having子句時,其順序是where, group by, having。Where與having子句的根本區(qū)別在于作用對象不同。Where子句作用于基本表或視圖;having子句作用于組,必須跟在group by子句后面,但group by子句后面可以沒有having子句。(5)查詢的排序:查詢結(jié)果要排序時,

19、應(yīng)該使用order by子句,order by子句必須出現(xiàn)在最后。DESC為降序 ASC為升序,缺省時為升序。 例如:求選課在三門以上(含三門)且各門課程均及格的學(xué)生的學(xué)號及其總成績,查詢結(jié)果按總成績降序排列。 Select Sno, sum(Score)as TotalScore From SC Where (Score>=60) Group by Sno Having (count(*)>=3) Order by sum(Score)desc3.7 數(shù)據(jù)操縱數(shù)據(jù)操縱語言(DML)主要包括添加數(shù)據(jù)(insert into)、修改數(shù)據(jù)(update)和刪除數(shù)據(jù)(delete)三種1

20、, 添加數(shù)據(jù):(或插入數(shù)據(jù))其語法格式是: insert into <表名> (列名,列名,) Values(,)例如:在S表中添加(或插入)一條學(xué)生記錄(學(xué)號:S7、姓名:鄭琳、性別:女) Insert into S(Sno,Sname,Sex) Values (S7,鄭琳,女)2, 修改數(shù)據(jù):其語法格式是: update<表名> Set列名=表達(dá)式, Where 條件例如:將所有學(xué)生的年齡增加1歲 Update S Set Age=Age+1例如:把教師表中工資小于或等于1000元的講師的工資提高20% Update T Set Sal=1.2*Sal Where

21、(Prof=講師)and(Sal<=1000)3, 刪除數(shù)據(jù):其語法格式是: delete From 表名 Where 條件例如:刪除劉三老師的記錄 Delete From T Where TN=劉三例如:刪除劉三老師的授課記錄 Delete From TC Where (TNo=(select TNo From T Where TN=劉三) 3.8 視圖 視圖是虛表,其數(shù)據(jù)不進(jìn)行存儲。1, 創(chuàng)建視圖:在創(chuàng)建或使用視圖時應(yīng)注意:只能在當(dāng)前數(shù)據(jù)庫中創(chuàng)建視圖,在視圖中最多只能引用1024列不能在視圖上創(chuàng)建索引;不能再規(guī)則、默認(rèn)和觸發(fā)器的定義中引用視圖如果視圖引用的表被刪除,則當(dāng)使用該視圖時返

22、回一條錯誤信息用SQL命令創(chuàng)建視圖: 其語法格式如下: Create view 視圖名(列名,列名,) As select 列名, From 表名 Where 例如:創(chuàng)建一學(xué)生平均成績視圖S_Avg Create view S_Avg(Sno, Avg) As select Sno, Avg(Score) From SC Group by Sno2,修改視圖: 其語法格式如下: alter view 視圖名(列名,列名,) As select 列名, From 表名 Where 3,刪除視圖: 其語法格式如下: drop view 視圖名4, 查詢視圖:例如:查詢視圖Sub_T中職稱為教授的教師號和姓名 select Tno,Tn From Sub_T Where Prof=教授5, 更新視圖:(1)添加insert 例如:向計算機系教師視圖Sub_T中添加一條記錄(教師號:T6、姓名:李丹、職業(yè):副教授) Insert into Sub_T(Tno,Tn,Prof) Values (S6,李丹,副教授) (2)修改update 例如:將計算機系教師視圖Sub_T

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論