计算机三级数据库知识点
考完三級(jí)瞬間輕松,做題時(shí)記的知識(shí)點(diǎn),(亂序版,懶得整理了,主要用于選擇和填空)
?
dbo:database owner(數(shù)據(jù)庫(kù)的創(chuàng)建者,創(chuàng)建該對(duì)象的用戶.)
guest:顧客(能夠訪問數(shù)據(jù)庫(kù)中對(duì)象的數(shù)據(jù),要求dbo分配權(quán)限給guest,一般給他查看的權(quán)限select,它沒有對(duì)應(yīng)的登錄賬戶名)
數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)每個(gè)步驟都按照數(shù)據(jù)組織與存儲(chǔ)、數(shù)據(jù)訪問與處理、應(yīng)用設(shè)計(jì)等幾個(gè)方面進(jìn)行。數(shù)據(jù)庫(kù)概念設(shè)計(jì)自下而上ER設(shè)計(jì)。
數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)日常維護(hù)工作一般包括數(shù)據(jù)庫(kù)的備份、鎖管理、日志的維護(hù)等。
數(shù)據(jù)庫(kù)維護(hù):1.數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)和恢復(fù)2.數(shù)據(jù)庫(kù)安全性、完整性控制;3.數(shù)據(jù)庫(kù)性能功能的檢測(cè)和改善;4.數(shù)據(jù)庫(kù)的重組和重構(gòu)
數(shù)據(jù)庫(kù)的重構(gòu)應(yīng)盡量避免應(yīng)用程序的改動(dòng),部分修改內(nèi)模式和外模式。
數(shù)據(jù)庫(kù)恢復(fù)順序:1.最近完全數(shù)據(jù)庫(kù)備份2.完全備份后的最近差異數(shù)據(jù)庫(kù)備份3.完全備份和差異之后的所有日志備份。
數(shù)據(jù)恢復(fù)三種模式:1)簡(jiǎn)單恢復(fù)模式(只用于測(cè)試和開發(fā)數(shù)據(jù)庫(kù),或用于主要包含只讀數(shù)據(jù)的數(shù)據(jù)庫(kù),如數(shù)據(jù)倉(cāng)庫(kù))。2)大容量日志恢復(fù)模式:一般只作為完整性恢復(fù)模式的附加模式,不支持點(diǎn)恢復(fù)。3)完整恢復(fù)模式
數(shù)據(jù)庫(kù)性能優(yōu)化:
1.數(shù)據(jù)庫(kù)運(yùn)行環(huán)境與參數(shù)調(diào)整:外部調(diào)整(CPU、網(wǎng)絡(luò)、調(diào)整內(nèi)存分配、調(diào)整磁盤I/O):增加CPU數(shù)量或終止需要許多資源的進(jìn)程。令I(lǐng)/0時(shí)間最小化,減少磁盤上文件競(jìng)爭(zhēng)帶來的瓶頸。
2.模式調(diào)整與優(yōu)化。
反規(guī)范化(增加派生冗余列,增加冗余列,重新組表、分割表和新增匯總表)破壞數(shù)據(jù)完整性。
3.存儲(chǔ)優(yōu)化:1)索引視圖。2)聚集。
4.查詢優(yōu)化。1)合理使用索引。2)避免和簡(jiǎn)化排序。3)消除大型表數(shù)據(jù)的順序存儲(chǔ)。4)避免復(fù)雜正則表達(dá)式。5)使用臨時(shí)表加速查詢。6)不隨意使用游標(biāo)。7)事務(wù)處理
數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)從功能角度分為四個(gè)層次:1,表現(xiàn)層2.業(yè)務(wù)邏輯層(將表現(xiàn)層獲取的數(shù)據(jù)進(jìn)行組織傳遞給數(shù)據(jù)訪問層)3.數(shù)據(jù)訪問層(負(fù)責(zé)與DBMS系統(tǒng)實(shí)現(xiàn)交互)4.數(shù)據(jù)持久層(負(fù)責(zé)保存和管理應(yīng)用系統(tǒng))
分布式數(shù)據(jù)庫(kù)中,導(dǎo)致數(shù)據(jù)傳輸量大的主要原因是數(shù)據(jù)間的連接操作和并操作。
數(shù)據(jù)庫(kù)模式定義語言DDL是用于描述數(shù)據(jù)庫(kù)中要存儲(chǔ)的現(xiàn)實(shí)世界實(shí)體的語言。
聚集索引:索引文件按其索引列列值指定的順序與數(shù)據(jù)文件中的數(shù)據(jù)記錄的排列順序相一致。
索引視圖只能引用同一數(shù)據(jù)庫(kù)中同一所有者的對(duì)象。
SOL Server 2008 支持三種用戶自定義函數(shù):標(biāo)量函數(shù)、內(nèi)嵌表值函數(shù)和多語句表值函數(shù)。標(biāo)量函數(shù)可以出現(xiàn)在SELECT語句目標(biāo)列中,其他兩個(gè)函數(shù)必須放在SELECT和FROM子句中。
INSTEAD OF創(chuàng)建前觸發(fā)器,FOR或AFTER創(chuàng)建后觸發(fā)器。
一個(gè)表上可以建立多個(gè)后觸發(fā)器,但只能建立一個(gè)前觸發(fā)器。
聲明游標(biāo)語句:DECLARE x CURSOR FOR ?SELECT.......
用戶數(shù)據(jù)庫(kù)文件擴(kuò)展名為MDF
分布式數(shù)據(jù)庫(kù)分片類型:水平分片、垂直分片、導(dǎo)出分片、混合分片。
分布式數(shù)據(jù)庫(kù)最基本特征是本地自治、非集中管理以及高可用性。
分布式數(shù)據(jù)庫(kù)系統(tǒng)中的分布透明性是位置獨(dú)立性、數(shù)據(jù)分片獨(dú)立性和數(shù)據(jù)復(fù)制獨(dú)立性。
分布透明性包括分片透明性、位置透明性、局部數(shù)據(jù)模型透明性。分布式數(shù)據(jù)庫(kù)的分片透明性是最高級(jí)別的透明性,位于全局概念與分片模式之間。位置透明性是下一層次,指用戶只需了解數(shù)據(jù)分片情況,不需要了解場(chǎng)地。局部數(shù)據(jù)模型透明性用戶需要了解場(chǎng)地。?
數(shù)據(jù)處理大致可分為兩類:OLTP(聯(lián)合事務(wù)處理)--是傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)的主要應(yīng)用,主要是基本的、日常的事務(wù)處理。OLAP(聯(lián)合分析處理)--數(shù)據(jù)倉(cāng)庫(kù)的主要應(yīng)用,支持復(fù)雜的分析操作,側(cè)重決策支持,并且提供直觀易懂的查找結(jié)果。
ROLAP以關(guān)系數(shù)據(jù)庫(kù)為核心,進(jìn)行多維數(shù)據(jù)的表示和存儲(chǔ)。
MOLAP基于多維數(shù)組的OLAP的實(shí)現(xiàn)。
HOLAP是基于混合數(shù)據(jù)組織的OLAP實(shí)現(xiàn)。
default表示如果缺省,默認(rèn)一個(gè)值。
視圖的特點(diǎn):1.簡(jiǎn)單性。2.安全性3.邏輯獨(dú)立性
視圖的作用:1.簡(jiǎn)化數(shù)據(jù)查詢語句2.使用戶從多角度看待同一數(shù)據(jù)3.提高數(shù)據(jù)的安全性4.提供了一定程度的邏輯獨(dú)立性。
對(duì)視圖創(chuàng)建唯一聚集索引后,視圖的結(jié)果集將存儲(chǔ)在數(shù)據(jù)庫(kù)中。
子查詢語句不可使用ORDER BY。
分割表分為水平分割表和垂直分割表。分割表增加了維護(hù)數(shù)據(jù)完整性的代價(jià)。水平分割后,查詢數(shù)據(jù)需要使用UNION操作,垂直分割后,查詢數(shù)據(jù)需要JOIN操作。
結(jié)構(gòu)圖包括用例圖、類圖、組件圖、對(duì)象圖和部署圖()。
基于C/S數(shù)據(jù)應(yīng)用系統(tǒng)體系結(jié)構(gòu):客戶端/服務(wù)器端架構(gòu),也叫胖客戶端架構(gòu),客戶端需要實(shí)現(xiàn)絕大多數(shù)的業(yè)務(wù)邏輯和界面展示,客戶端一般需要單獨(dú)開發(fā)。
基于B/S架構(gòu),瀏覽器/服務(wù)器架構(gòu),瘦客戶端。客戶端只需安裝WEB瀏覽器即可,且業(yè)務(wù)規(guī)則一般在WEB服務(wù)器端實(shí)現(xiàn)。
SOL SERVER中的數(shù)據(jù)庫(kù)分類:
1.系統(tǒng)數(shù)據(jù)庫(kù):master,model,msdb,tempdb(前三個(gè)修改較少,可進(jìn)行定期備份,tempdb是系統(tǒng)臨時(shí)文件的數(shù)據(jù)庫(kù),每次啟動(dòng)后會(huì)清空,沒必要備份)
2.用戶數(shù)據(jù)庫(kù)。
它的數(shù)據(jù)庫(kù)組成:1.數(shù)據(jù)文件:1).mdf 主數(shù)據(jù)文件,只有一個(gè),不能小于3MB 2).ndf 次數(shù)據(jù)文件,有0個(gè)或多個(gè)
2.日志文件:.ldf 至少有一個(gè)
數(shù)據(jù)庫(kù)存儲(chǔ)最小單位:數(shù)據(jù)頁,1頁是8kb的連續(xù)磁盤空間。行不能跨頁存儲(chǔ)。
選擇前三:TOP 3 WITH TIES 通常與order by相結(jié)合使用。
選擇前n%行:TOP n percent;
數(shù)據(jù)表對(duì)某一列數(shù)據(jù)的唯一性約束有UNIQUE約束和PRIMARY約束。UNIQUE允許出現(xiàn)空值但不允許出現(xiàn)重復(fù)值,PRIMARY KEY不允許出現(xiàn)空值和重復(fù)值。
SQL數(shù)據(jù)庫(kù)服務(wù)器角色權(quán)限:
bulkadmin:執(zhí)行BULK INSERT語句。
dbcreator:創(chuàng)建、修改、刪除和還原數(shù)據(jù)庫(kù)、
diskadmin:管理磁盤文件。
processadmin:管理在SQL SERVER實(shí)例中運(yùn)行的進(jìn)程。
severadmin:配置服務(wù)器范圍的設(shè)置。
sysadmin:在SQL SERVER中進(jìn)行任何活動(dòng),該角色的權(quán)限跨越所有其他固定服務(wù)角色。
setupadmin:添加和刪除鏈接服務(wù)器。
SQL SERVER固定數(shù)據(jù)庫(kù)角色:
db_owner:具有在數(shù)據(jù)庫(kù)中進(jìn)行全部操作的權(quán)限。
db_datawriter:具有插入刪除和更新權(quán)限。
db_datareader:具有查詢數(shù)據(jù)庫(kù)所有用戶數(shù)據(jù)權(quán)限。
db_denydatareader:不具有查詢數(shù)據(jù)庫(kù)權(quán)限。
db_backupoperator:具有備份數(shù)據(jù)庫(kù)、備份日志權(quán)限。
db_securityadmin:具有管理數(shù)據(jù)庫(kù)角色、角色成員以及數(shù)據(jù)庫(kù)中的語句和對(duì)象的權(quán)限。
db_accessadmin:具有添加或刪除數(shù)據(jù)庫(kù)用戶的權(quán)限。
數(shù)據(jù)庫(kù)管理系統(tǒng)一般通過周期性檢查事務(wù)等待圖來實(shí)現(xiàn)死鎖檢測(cè)。(出現(xiàn)回路則發(fā)生了死鎖)
并發(fā)操作帶來的數(shù)據(jù)不一致性包括丟失修改、不可重復(fù)讀和讀臟數(shù)據(jù)。產(chǎn)生上述三類數(shù)據(jù)的不一致性主要原因就是并發(fā)操作破壞了事務(wù)的隔離性,所以數(shù)據(jù)庫(kù)管理系統(tǒng)必須提供并發(fā)控制機(jī)制。
系統(tǒng)故障造成數(shù)據(jù)庫(kù)不一致狀態(tài),對(duì)于故障發(fā)生前已提交的事務(wù)(既有BEGIN Transaction,而沒有commit或rollback)做redo操作,對(duì)于故障發(fā)生時(shí)尚未完成的事務(wù)(只有BEGIN Transaction,而沒有commit或rollback)做undo操作。
CLUSTERED(clustered)表示聚簇索引。?
UNIQUE CLUSTERED:唯一非聚簇索引。
HAVING內(nèi)可以使用聚合函數(shù),如(sum,min,max,avg,count),WHERE中不可以。
順序圖:橫向矩形代表對(duì)象,水平消息線用于對(duì)象間的通信,虛線稱作“生命線”,表示一個(gè)對(duì)象在其時(shí)間周期內(nèi)的存在。
游標(biāo):
在DECLARE中cursor聲明游標(biāo),創(chuàng)建一個(gè)命名的查詢語句。
open:打開游標(biāo)。 ? ?fetch:取出游標(biāo)中的一條記錄裝入變量。 ? close:釋放游標(biāo)。
SCROLL關(guān)鍵字指明游標(biāo)可以在任意方向上滾動(dòng),所有fetch選項(xiàng)(first,last,prior,next【當(dāng)前位置的下一行】,relative n【從當(dāng)前位置數(shù),第n行】,absolute【從游標(biāo)的第一行開始數(shù),第n行】,Into)都可以在游標(biāo)中使用,若忽略該選項(xiàng),則游標(biāo)只能向前滾動(dòng)(next)。
安全性級(jí)別:A類:提供驗(yàn)證保護(hù)。B類:提供強(qiáng)制保護(hù)。C類:提供自主保護(hù)。D類:提供最小保護(hù)。
UML圖:
1)用例圖:描述系統(tǒng)與外部系統(tǒng)及用戶之間的交互。
2)類圖
3)對(duì)象圖
4)序列圖
5)協(xié)作圖:交互圖的一種,其中包含一組對(duì)象、對(duì)象之間的聯(lián)系以及對(duì)象間發(fā)送和接受的消息。
6)狀態(tài)圖:用來描述一個(gè)實(shí)體在發(fā)生一些事件時(shí)的狀態(tài)變化情況。
7)活動(dòng)圖:陳述活動(dòng)與活動(dòng)之間的流程控制的轉(zhuǎn)移。
8)構(gòu)建圖
9)部署圖:
用戶自定義函數(shù)包括標(biāo)量函數(shù)和表值函數(shù)。
在使用REVOKE命令回收用戶權(quán)限時(shí),如果要將用戶轉(zhuǎn)授給其他用戶的權(quán)限也一并回收,則命令中需要加上CASCADE選項(xiàng)。對(duì)應(yīng)于GRANT語句中的WITH GRANT OPTION。
定義索引語句:CREATE UNIQUE CLUSTERED INDEX 索引名 ON 視圖名。
數(shù)據(jù)庫(kù)故障:1.事務(wù)內(nèi)部故障2.系統(tǒng)故障3.介質(zhì)故障4.計(jì)算機(jī)病毒。
分布式數(shù)據(jù)庫(kù)有局部數(shù)據(jù)庫(kù)管理系統(tǒng)、全局?jǐn)?shù)據(jù)庫(kù)管理系統(tǒng)GDBMS、全局?jǐn)?shù)據(jù)字典、通信管理四部分組成。
ETL是實(shí)現(xiàn)數(shù)據(jù)集成的主要技術(shù)。即填充更新數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)抽取、轉(zhuǎn)換、裝載的數(shù)據(jù)采集過程。
DFD的主要組成包括外部實(shí)體(外部項(xiàng))、處理過程、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)流。
主文件組是系統(tǒng)定義好的一個(gè)文件組,它包含主要數(shù)據(jù)文件和任何沒有明確分配給其他文件組的其他數(shù)據(jù)文件。
日志文件不包含在文件組里。
三層瀏覽器/服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)是由瀏覽器、應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器三部分組成,觸發(fā)器是在數(shù)據(jù)庫(kù)服務(wù)器上執(zhí)行的。
用例之間的關(guān)系包括擴(kuò)展、使用和組合。
開窗函數(shù)公式:函數(shù)名 OVER(),OVER關(guān)鍵字表示把函數(shù)當(dāng)成開窗函數(shù)而不是聚合函數(shù)。聚合開窗函數(shù)只能使用PARTITION BY子句或不帶任何語句。ORDER BY不能與聚合函數(shù)一同使用。
并行數(shù)據(jù)庫(kù)結(jié)構(gòu):1)共享內(nèi)存結(jié)構(gòu)。2)共享磁盤結(jié)構(gòu)。3)無共享結(jié)構(gòu)
數(shù)據(jù)挖掘的三個(gè)階段:數(shù)據(jù)準(zhǔn)備、數(shù)據(jù)挖掘、結(jié)果的解釋和評(píng)估。
備份日志語法:BACKUP LOG 數(shù)據(jù)庫(kù)名 TO 備份的地方
數(shù)據(jù)倉(cāng)庫(kù)是一個(gè)面向主題的、集成的、非易失的,且隨時(shí)間變化的數(shù)據(jù)集合。
關(guān)聯(lián)規(guī)則的成立一般與支持度和置信度兩個(gè)指標(biāo)進(jìn)行描述。
SQL四個(gè)排名函數(shù):
1.rank():返回結(jié)果集的分區(qū)內(nèi)每行的排名。
2.dense_rank():返回結(jié)果集分區(qū)中行的排名。
3.row_number():返回結(jié)果集分區(qū)內(nèi)行的序列號(hào)。
4.ntile():將有序分區(qū)中的行分發(fā)到指定數(shù)組的組中。
SQL SERVER主要采用發(fā)布、分發(fā)、訂閱的方式來處理復(fù)制。復(fù)制技術(shù)包括快照復(fù)制、事務(wù)復(fù)制和合并復(fù)制。 ?
?
操作題:
創(chuàng)建存儲(chǔ)過程:
create procedure 存儲(chǔ)名
@參數(shù)名 參數(shù)類型,@參數(shù)名 參數(shù)類型 outpout//此為輸出函數(shù)
as
begin
/*SQL語句*/
end
如:
創(chuàng)建觸發(fā)器:
create trigger 觸發(fā)器名
on 操作的表名 for 操作類型/*主要有insert,update,drop*/
as
begin
end
?
創(chuàng)建分區(qū)表步驟:
1)創(chuàng)建分區(qū)函數(shù)
create partion function 函數(shù)名
as range left for(a1,a2,a3)//分區(qū)的范圍
2)創(chuàng)建分區(qū)方案
create partition scheme
as 分區(qū)函數(shù)名//表示依據(jù)分區(qū)函數(shù)
to(a1,a2,a3,a4)//分組
3)使用分區(qū)方案創(chuàng)建表
create table 表名(
各個(gè)屬性值及類型
)
on 分區(qū)方案
?
創(chuàng)建自定義函數(shù):
create function 函數(shù)名?
returns 返回值類型/*可以是一個(gè)表,類似于結(jié)構(gòu)體*/
/*例:
@表名 table(
各個(gè)屬性值及類型
)*/
as
begin
end
總結(jié)
以上是生活随笔為你收集整理的计算机三级数据库知识点的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(2037)vue之电商管理系统
- 下一篇: “约见”面试官系列之常见面试题之第一百零