Ⅰ 資料庫原理及應用
《資料庫原理及應用》是2012年清華大學出版社出版的圖書,作者是雷景生。
《資料庫原理及應用》較系統全面地闡述了資料庫系統的基礎理論、資料庫系統是在計算機系統中引入資料庫後的系統構成資料庫系統,基本技術和基本方法,共分11章和2個附錄。
既可以作為高等院校計算機、軟體工程、信息安全、信息管理與信息系統、信息與計算科學等相關專業本科生資料庫課程的教材,也可以作為電氣工程相關專業研究生資料庫課程及電力企業信息化教材。
Ⅱ 《資料庫應用》課程講什麼內容
《資料庫應用》課程以sql Server為例詳細介紹關系資料庫系統的體系架構和功能。內容包括:Sql Server基礎知識、T-SQL語言、資料庫的備份和還原、安全和許可權。本課程通過案例為引導,結合資料庫和管理信息系統的基本知識,使學生全面了解和熟練掌握Sql Server資料庫。通過學習這門課程,學生可以在應用層面上對資料庫系統原理有更深刻的認識,並能學會用關系資料庫系統開發應用系統。
Ⅲ 資料庫的基本原理是
是計算機科學與技術專業的專業基礎課,主要討論資料庫系統的基本概念,基本原理,基本方法以及有關的應用。主要內容包括:資料庫的結構與特點、資料庫系統的組成及各部分的功能、關系資料庫、面向對象資料庫、結構化查詢語言(SQL)、資料庫設計以及數據保護等,同時講解一種重要的資料庫系統的應用。學生通過本課程的學習能夠了解有關資料庫系統的基本概念,掌握對資料庫查詢、更新等相關的知識,初步掌握資料庫設計方法,並能用資料庫系統建立資料庫及簡單的應用。
Ⅳ 資料庫原理與應用教程第八章習題,創建資料庫
create database Student
on primary
(name='student2',filename='c:\data\student2.mdf',size=20,maxsize=100,filegrowth=1),
(name='student3',filename='c:\data\student3.mdf',size=20,maxsize=100,filegrowth=1)
log on
(name='studentlog1',filename='c:\data\studentlog1.ldf',size=10,maxsize=50,filegrowth=1),
(name='studentlog2',filename='c:\data\studentlog2.ldf',size=10,maxsize=50,filegrowth=1)
alter database Student add filegroup 分組
alter database Student add file(name='student1',filename='c:\data\student1.ndf',size=20,maxsize=unlimited,filegrowth=10%)
to filegroup 分組
Ⅳ 《資料庫原理與應用》課程設計
這種大作業,在這里提問估計沒人會給你發,你可以上課設寶這個網站去看看,可以下載一些資料庫課程設計,可能有你想要得
Ⅵ 資料庫原理及應用試題
1.B 2.C 3.B 4.C 5.D 6.C 7.C 8.D 9.C 10.A
11.A 12.A 13.A --不太確定 14.B 15.C 16.A 17.B 18.A 19.D 20.C
1.試述事務的概念及事務的四個特性。
答:
事務是用戶定義的一個資料庫操作序列,這些操作要麼全做要麼全不做,是一個不可分割的工作單位。
事務具有四個特性:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)和持續性(Durability)。這個四個特性也簡稱為ACID特性。
原子性:事務是資料庫的邏輯工作單位,事務中包括的諸操作要麼都做,要麼都不做。
一致性:事務執行的結果必須是使資料庫從一個一致性狀態變到另一個一致性狀態。
隔離性:一個事務的執行不能被其他事務干擾。即一個事務內部的操作及使用的數據對其他並發事務是隔離的,並發執行的各個事務之間不能互相干擾。
持續性:持續性也稱永久性(Permanence),指一個事務一旦提交,它對資料庫中數據的改變就應該是永久性的。接下來的其他操作或故障不應該對其執行結果有任何影響。
2.為什麼事務非正常結束時會影響資料庫數據的正確性,請列舉一例說明之。
答:
事務執行的結果必須是使資料庫從一個一致性狀態變到另一個一致性狀態。如果資料庫系統運行中發生故障,有些事務尚未完成就被迫中斷,這些未完成事務對資料庫所做的修改有一部分已寫入物理資料庫,這時資料庫就處於一種不正確的狀態,或者說是不一致的狀態。
例如某工廠的庫存管理系統中,要把數量為Q的某種零件從倉庫1移到倉庫2存放。
則可以定義一個事務T,T包括兩個操作;Q1=Q1-Q,Q2=Q2+Q。如果T非正常終止時只做了第一個操作,則資料庫就處於不一致性狀態,庫存量無緣無故少了Q。
3.資料庫中為什麼要有恢復子系統?它的功能是什麼?
答:
因為計算機系統中硬體的故障、軟體的錯誤、操作員的失誤以及惡意的破壞是不可避免的,這些故障輕則造成運行事務非正常中斷,影響資料庫中數據的正確性,重則破壞資料庫,使資料庫中全部或部分數據丟失,因此必須要有恢復子系統。
恢復子系統的功能是:把資料庫從錯誤狀態恢復到某一已知的正確狀態(亦稱為一致狀態或完整狀態)。
4.資料庫運行中可能產生的故障有哪幾類?哪些故障影響事務的正常執行?哪些故障破壞資料庫數據?
答:資料庫系統中可能發生各種各樣的故障,大致可以分以下幾類:
(1)事務內部的故障;
(2)系統故障;
(3)介質故障;
(4)計算機病毒。
事務故障、系統故障和介質故障影響事務的正常執行;介質故障和計算機病毒破壞數據
庫數據。
5.據庫恢復的基本技術有哪些?
答:
數據轉儲和登錄日誌文件是資料庫恢復的基本技術。
當系統運行過程中發生故障,利用轉儲的資料庫後備副本和日誌文件就可以將資料庫恢復到故障前的某個一致性狀態。
6. 資料庫轉儲的意義是什麼? 試比較各種數據轉儲方法。
答:
數據轉儲是資料庫恢復中採用的基本技術。所謂轉儲即DBA定期地將資料庫復制到磁帶或另一個磁碟上保存起來的過程。當資料庫遭到破壞後可以將後備副本重新裝入,將資料庫恢復到轉儲時的狀態。
靜態轉儲:在系統中無運行事務時進行的轉儲操作。靜態轉儲簡單,但必須等待正運行的用戶事務結束才能進行。同樣,新的事務必須等待轉儲結束才能執行。顯然,這會降低資料庫的可用性。
動態轉儲:指轉儲期間允許對資料庫進行存取或修改。動態轉儲可克服靜態轉儲的缺點,它不用等待正在運行的用戶事務結束,也不會影響新事務的運行。但是,轉儲結束時後援副本上的數據並不能保證正確有效。因為轉儲期間運行的事務可能修改了某些數據,使得後援副本上的數據不是資料庫的一致版本。
為此,必須把轉儲期間各事務對資料庫的修改活動登記下來,建立日誌文件(log file)。這樣,後援副本加上日誌文件就能得到資料庫某一時刻的正確狀態。
轉儲還可以分為海量轉儲和增量轉儲兩種方式。
海量轉儲是指每次轉儲全部資料庫。增量轉儲則指每次只轉儲上一次轉儲後更新過的數據。從恢復角度看,使用海量轉儲得到的後備副本進行恢復一般說來更簡單些。但如果資料庫很大,事務處理又十分頻繁,則增量轉儲方式更實用更有效。
7. 什麼是日誌文件?為什麼要設立日誌文件?
答:
(1)日誌文件是用來記錄事務對資料庫的更新操作的文件。
(2)設立日誌文件的目的是: 進行事務故障恢復;進行系統故障恢復;協助後備副本進行介質故障恢復。
8. 登記日誌文件時為什麼必須先寫日誌文件,後寫資料庫?
答:
把對數據的修改寫到資料庫中和把表示這個修改的日誌記錄寫到日誌文件中是兩個不同的操作。有可能在這兩個操作之間發生故障,即這兩個寫操作只完成了一個。
如果先寫了資料庫修改,而在運行記錄中沒有登記這個修改,則以後就無法恢復這個修改了。如果先寫日誌,但沒有修改資料庫,在恢復時只不過是多執行一次UNDO操作,並不會影響資料庫的正確性。所以一定要先寫日誌文件,即首先把日誌記錄寫到日誌文件中,然後寫資料庫的修改。
9. 針對不同的故障,試給出恢復的策略和方法。(即如何進行事務故障的恢復?系統故障的恢復?介質故障恢復?)
答:
事務故障的恢復:
事務故障的恢復是由DBMS自動完成的,對用戶是透明的。
DBMS執行恢復步驟是:
(1)反向掃描文件日誌(即從最後向前掃描日誌文件),查找該事務的更新操作。
(2)對該事務的更新操作執行逆操作。即將日誌記錄中「更新前的值」寫入資料庫。
(3)繼續反向掃描日誌文件,做同樣處理。
(4)如此處理下去,直至讀到此事務的開始標記,該事務故障的恢復就完成了。
答:
系統故障的恢復:
系統故障可能會造成資料庫處於不一致狀態:
一是未完成事務對資料庫的更新可能已寫入資料庫;
二是已提交事務對資料庫的更新可能還留在緩沖區,沒來得及寫入資料庫。
因此恢復操作就是要撤銷(UNDO)故障發生時未完成的事務,重做(REDO)已完成的事務。
系統的恢復步驟是:
(1)正向掃描日誌文件,找出在故障發生前已經提交的事務隊列(REDO隊列)和未完成的事務隊列(UNDO隊列)。
(2)對撤銷隊列中的各個事務進行UNDO處理。
進行UNDO處理的方法是,反向掃描日誌文件,對每個UNDO事務的更新操作執行逆操作,即將日誌記錄中「更新前的值」(Before Image)寫入資料庫。
(3)對重做隊列中的各個事務進行REDO處理。
進行REDO處理的方法是:正向掃描日誌文件,對每個REDO事務重新執行日誌文件登記的操作。即將日誌記錄中「更新後的值」(After Image)寫入資料庫。
*解析:
在第(1)步中如何找出REDO隊列和UNDO隊列?請大家思考一下。
下面給出一個演算法:
1) 建立兩個事務隊列:
· UNDO-LIST: 需要執行undo操作的事務集合;
· REDO-LIST: 需要執行redo操作的事務集合;
兩個事務隊列初始均為空。
2) 從日誌文件頭開始,正向掃描日誌文件
· 如有新開始(遇到Begin Transaction)的事務Ti,把Ti暫時放入UNDO-LIST隊列;
· 如有提交的事務(遇到End Transaction)Tj,把Tj從UNDO-LIST隊列移到REDO-LIST隊列;
直到日誌文件結束
答:
介質故障的恢復:
介質故障是最嚴重的一種故障。
恢復方法是重裝資料庫,然後重做已完成的事務。具體過程是:
(1)DBA裝入最新的資料庫後備副本(離故障發生時刻最近的轉儲副本),使資料庫恢復到轉儲時的一致性狀態。
(2)DBA裝入轉儲結束時刻的日誌文件副本
(3)DBA啟動系統恢復命令,由DBMS完成恢復功能,即重做已完成的事務。
*解析
1)我們假定採用的是靜態轉儲,因此第(1)步裝入資料庫後備副本便可以了。
2)如果採用的是靜動態轉儲,第(1)步裝入資料庫後備副本還不夠,還需同時裝入轉儲開始時刻的日誌文件副本,經過處理後才能得到正確的資料庫後備副本。
3)第(2)步重做已完成的事務的演算法是:
a. 正向掃描日誌文件,找出故障發生前已提交的事務的標識,將其記入重做隊列
b. 再一次正向掃描日誌文件,對重做隊列中的所有事務進行重做處理。即將日誌記錄中「更新後的值」寫入資料庫。
10. 具有檢查點的恢復技術有什麼優點?
答:
利用日誌技術進行資料庫恢復時,恢復子系統必須搜索日誌,確定哪些事務需要REDO,哪些事務需要UNDO。一般來說,需要檢查所有日誌記錄。這樣做有兩個問題:
一是搜索整個日誌將耗費大量的時間。
二是很多需要REDO處理的事務實際上已經將它們的更新操作結果寫到資料庫中了,恢復子系統又重新執行了這些操作,浪費了大量時間。
檢查點技術就是為了解決這些問題。
11. 試述使用檢查點方法進行恢復的步驟。
答:
① 從重新開始文件中找到最後一個檢查點記錄在日誌文件中的地址,由該地址在日誌文件中找到最後一個檢查點記錄。
② 由該檢查點記錄得到檢查點建立時刻所有正在執行的事務清單ACTIVE-LIST。
這里建立兩個事務隊列:
· UNDO-LIST: 需要執行undo操作的事務集合;
· REDO-LIST: 需要執行redo操作的事務集合;
把ACTIVE-LIST暫時放入UNDO-LIST隊列,REDO隊列暫為空。
③ 從檢查點開始正向掃描日誌文件
· 如有新開始的事務Ti,把Ti暫時放入UNDO-LIST隊列;
· 如有提交的事務Tj,把Tj從UNDO-LIST隊列移到REDO-LIST隊列,直到日誌文件結束;
④ 對UNDO-LIST中的每個事務執行UNDO操作, 對REDO-LIST中的每個事務執行REDO操作。
12. 什麼是資料庫鏡像?它有什麼用途?
答:
資料庫鏡像即根據DBA的要求,自動把整個資料庫或者其中的部分關鍵數據復制到另一個磁碟上。每當主資料庫更新時,DBMS自動把更新後的數據復制過去,即DBMS自動保證鏡像數據與主數據的一致性。
資料庫鏡像的用途有:
一是用於資料庫恢復。當出現介質故障時,可由鏡像磁碟繼續提供使用,同時DBMS自動利用鏡像磁碟數據進行資料庫的恢復,不需要關閉系統和重裝資料庫副本。
二是提高資料庫的可用性。在沒有出現故障時,當一個用戶對某個數據加排它鎖進行修改時,其他用戶可以讀鏡像資料庫上的數據,而不必等待該用戶釋放鎖。
Ⅶ 資料庫原理與應用教程 課後題答案 第三版 何玉潔
發給你了 希望敢的上 望採納 哈哈
資料庫原理與應用教程―SQL Server
習題解答
1.5 習題
1.資料庫的發展歷史分哪幾個階段?各有什麼特點?
答:資料庫技術經歷了人工管理階段、文件系統階段和資料庫系統三個階段。
1)人工管理階段
這個時期數據管理的特點是:
數據由計算或處理它的程序自行攜帶,數據和應用程序一一對應,應用程序依賴於數據的物理組織,因此數據的獨立性差,數據不能被長期保存,數據的冗餘度大等給數據的維護帶來許多問題。
2)文件系統階段
在此階段,數據以文件的形式進行組織,並能長期保留在外存儲器上,用戶能對數據文件進行查詢、修改、插入和刪除等操作。程序與數據有了一定的獨立性,程序和數據分開存儲,然而依舊存在數據的冗餘度大及數據的不一致性等缺點。
3)資料庫系統階段
資料庫系統的特點如下:
(1)數據結構化
(2)較高的數據共享性
(3)較高的數據獨立性
(4)數據由DBMS統一管理和控制
2.簡述數據、資料庫、資料庫管理系統、資料庫應用系統的概念。
答:數據是描述事物的符號記錄,是信息的載體,是信息的具體表現形式。
資料庫就是存放數據的倉庫,是將數據按一定的數據模型組織、描述和存儲,能夠自動進行查詢和修改的數據集合。
資料庫管理系統是資料庫系統的核心,是為資料庫的建立、使用和維護而配置的軟體。它建立在操作系統的基礎上,位於用戶與操作系統之間的一層數據管理軟體,它為用戶或應用程序提供訪問資料庫的方法,包括資料庫的創建、查詢、更新及各種數據控制等。
凡使用資料庫技術管理其數據的系統都稱為資料庫應用系統。
3.簡述資料庫管理系統的功能。
答:資料庫管理系統是資料庫系統的核心軟體,一般說來,其功能主要包括以下5個方面。
(1) 數據定義和操縱功能
(2) 資料庫運行控制功能
(3) 資料庫的組織、存儲和管理
(4) 建立和維護資料庫
(5) 數據通信介面
4.簡述資料庫的三級模式和兩級映像。
答:為了保障數據與程序之間的獨立性,使用戶能以簡單的邏輯結構操作數據而無需考慮數據的物理結構,簡化了應用程序的編制和程序員的負擔,增強系統的可靠性。通常DBMS將資料庫的體系結構分為三級模式:外模式、模式和內模式。
模式也稱概念模式或邏輯模式,是對資料庫中全............
Ⅷ 資料庫原理及應用說明視圖與基本表的區別和聯系
聯系:視圖(view)是在基本表之上建立的表,它的結構(即所定義的列)和內容(即所有數據行)都來自基本表,它依據基本表存在而存在。一個視圖可以對應一個基本表,也可以對應多個基本表。視圖是基本表的抽象和在邏輯意義上建立的新關系
區別:1、視圖是已經編譯好的sql語句。而表不是
2、視圖沒有實際的物理記錄。而表有。
3、表是內容,視圖是窗口
4、表只用物理空間而視圖不佔用物理空間,視圖只是邏輯概念的存在,表可以及時四對它進行修改,但視圖只能有創建的語句來修改
5、表是內模式,視圖是外模式
6、視圖是查看數據表的一種方法,可以查詢數據表中某些欄位構成的數據,只是一些SQL語句的集合。從安全的角度說,視圖可以不給用戶接觸數據表,從而不知道表結構。
7、表屬於全局模式中的表,是實表;視圖屬於局部模式的表,是虛表。
8、視圖的建立和刪除隻影響視圖本身,不影響對應的基本表。
Ⅸ 資料庫原理
《資料庫原理及應用》教學大綱
課程編號 1620127 總學時 46 理論 32 實驗/上機 14
學分 2.5 開課單位 信息學院 開課系 電子工程系 修訂時間 2006年1月1日
課 程 簡 介
教學內容
《資料庫原理及應用》主要討論資料庫系統的基本概念,基本原理,基本方法以及有關的應用。
主要內容包括:資料庫系統的組成、關系資料庫、資料庫設計以及數據保護等,同時講解一種重要的資料庫系統的應用。要求學生通過本課程的學習了解有關資料庫系統的基本概念,掌握相關的知識,初步掌握資料庫設計方法,並能用資料庫系統建立資料庫及簡單的應用。
修讀專業:本大綱適合本科電子信息工程專業使用
先修課程:《數據結構》
教材:資料庫系統及應用(第二版) 「北京市高等教育精品教材」立項項目。由崔巍編著,高等教育出版社
一、 課程的性質與任務
本課程是電子信息工程專業有關資料庫的一門統設必修課。主要任務是介紹資料庫組織、管理和使用的一般知識,包括數據模型、資料庫結構、資料庫系統、資料庫設計、關系運算、關系規范化、關系查詢(SQL語言)等方面的知識;介紹至少一種實際的資料庫管理系統的構成與使用。目的使學生通過該課程的學習,具有進行簡單資料庫應用系統設計與開發的能力。
二、 課程的基本要求
1.熟練掌握(代碼:A):資料庫中的概念、資料庫設計與編程方法。資料庫的結構與特點,資料庫系統的組成及各部分的功能,熟練使用結構化查詢語言(SQL)。
2.掌握(代碼:B):關系代數語言的使用;關系演算語言的使用;三級一致性的區別及其與可串列化調度的關系;關系資料庫以及面向對象資料庫的特點與區別;查詢表達式優化的方法。
3.了解(代碼:C):關系、關系模型、鍵碼、視圖、函數依賴等概念
三、 修讀專業
本大綱適合本科電子信息工程專業使用
四、 本課程與其它課程的聯系
由於資料庫理論及應用是各種計算機技術的綜合應用,為了能夠讓學生很好地理解資料庫技術,要求學生在學習本課程之前最好已經學習過以下課程:《程序設計》、《數據結構》、《操作系統》等課程。當然主要要求學生具有「數據結構」的基本知識,其他課程的知識要求是其次的。
對於現行資料庫的選擇,建議教師最好選擇「Microsoft SQL Server」,其它的資料庫如:Oracle,IBM DB2相對比較難理解和應用,Access又過於簡單。
五、 教學內容安排、要求、學時分配及作業
Chapter 1 緒論(2)
1.1 什麼是資料庫(C)
1.2 資料庫管理系統(C)
1.3 資料庫管理和資料庫管理員(B)
1.4 資料庫系統(B)
1.5 資料庫的過去、現在和未來(C)
作業:第2題
Chapter 2 數據模型和三層模式資料庫(4)
2.1 信息結構與E-R方法(C)
2.2 概念數據模型(B)
2.2.3 連接陷阱(C)
2.3 傳統的三大數據模型(C)��
2.4 數據獨立性與三層結構(B)��
2.5 資料庫管理系統的結構(B)��
Chapter 3 關系資料庫(4)
3.1 關系資料庫系統概述(C)��
3.2 關系數據模型(C)��
3.3 關系模型的完整性約束(B)��
3.4 關系代數(B)��
3.5 關系資料庫系統的三層模式結構(B)��
作業:第8題--1),2)
Chapter 4 Microsoft SQL Server資料庫基礎(1)
4.1 客戶/伺服器體系結構(C)��
4.2 Microsoft SQL Server基礎(C)��
4.3 Transact-SQL簡介(C)��
Chapter 5關系資料庫標准語言——SQL(8)
5.1 SQL語言概述(B)��
5.2 SQL的數據定義功能(B)��
5.3 SQL的數據查詢功能(C)��
5.4 視圖(View) (B)�
5.5 SQL的數據操作功能(A)��
5.6 SQL的數據控制功能(A)��
5.7 SQL的宿主使用(B)��
5.8 動態SQL(B)��
作業:第2題--7),9),11 )
Chapter 6 存儲過程、觸發器�和數據完整性(4)
6.1 存儲過程(B)��
6.2 觸發器及其用途(B)��
6.3 數據完整性(A)�
作業:第2題--3)�
Chapter 7 安全性(4)
7.1 安全性概述(C)��
7.2 用戶管理和角色管理(A)��
7.3 許可權管理(A)��
7.4 其他安全問題(C)��
Chapter 8 事務管理(2)
8.1 事務(B)��
8.2 並發控制(B)��
8.3 恢復(A)��
作業:第1題,第2題
Chapter 9 關系數據理論(2)
9.1 基本概念(C)��
9.2 函數依賴的公理系統(C)��
9.3 規范化(B)��
9.4 模式分解(B)��
Chapter 10 資料庫設計(1)
10.1 完善E-R模型中的概念(C)��
10.2 資料庫設計的過程(B)�
六、 實驗內容與要求
序號 實驗內容 學時
1 建立資料庫(B)�� 2
2 建立表和數據完整性(A)� 2
3 SQL數據操作(B)�� 2
4 SQL數據查詢(A)�� 2
5 視圖的定義和操作(B)�� 2
6 存儲過程、觸發器(B)�� 2
7 用戶管理和許可權管理(A) 2
七、 教材與參考書
本課程選用教材:崔巍,資料庫系統及應用(第二版),高等教育出版社
本課程推薦參考書:
1)薩師煊、王珊,資料庫系統概論(第一版),北京:高等教育出版社,1983
2)薩師煊、王珊,資料庫系統概論(第二版),北京:高等教育出版社,1991
3)薩師煊、王珊,實用資料庫系統匯編,北京:高等教育出版社,1990
4)王珊、陳紅、文繼榮,資料庫和資料庫管理系統,北京:電子工業出版社,1995
5)馮玉才,資料庫基礎(第二版),武漢:華中理工大學出版社,1993
6)施伯樂、何繼潮、崔靖,關系資料庫的理論及應用,鄭州:河南科技出版社,1990
7)《資料庫系統概論》第三版 普通高等教育「九五」國家教委重點教材,由薩師煊、王珊編著,高等教育出版社