數據庫系統是以數據庫技術爲核心的計算機應用系統,其主要目的是處理生產和實踐過程當中產生的數據和信息,實現生產過程管理的自動化和信息化,提升信息管理效率。數據庫
數據、數據庫、數據庫管理系統與操做數據庫的應用程序,加上支撐它們的硬件平臺、軟件平臺和與數據庫有關的人員一塊兒構成了一個完整的數據庫系統。圖1.1描述了數據庫系統的構成。編程
圖1.1 數據庫系統的構成安全
數據庫系統通常包含四個部分網絡
定義:是數據庫系統存放結構化數據的地方,是長期存儲的、有組織的、可共享的數據的集合。數據結構
Ø 數據最終是以文件的形式存儲在磁盤上,只有數據庫管理系統才能對這些文件進行存取操做。併發
Ø 每個數據庫都至少有一個這樣文件,稱爲數據文件。框架
Ø SQL Server數據庫的數據文件以.mdf或.ndf爲擴展名。工具
數據庫(DB)是存放數據的倉庫,只不過這些數據存在必定的關聯,並按必定的格式存放在計算機內。廣義上講,數據不只包含數字,還包括文本、圖像、音頻、視頻等。
例如,把一個學校的學生、課程、學生成績等數據有序地組織並存放在計算機內,就能夠構成一個數據庫。性能
所以,數據庫由一些持久的相互關聯的數據的集合組成,並以必定的組織形式存放在計算機的存儲介質中。開發工具
定義: DBMS是數據庫的管理軟件,是應用程序和數據庫之間橋樑,即應用程序必須經過DBMS才能存取數據庫中的數據。
Ø DBMS對數據的存取操做最終體現爲對數據文件的更新和修改,但應用程序不能直接執行這種更新和修改操做。
Ø SQL Server 2014就是SQL Server數據庫系統的一種DBMS。
數據庫管理系統(DBMS)是管理數據庫的系統,它按必定的數據模型組織數據。DBMS應提供以下功能:
(1)數據定義功能:可定義數據庫中的數據對象。
(2)數據操縱功能:可對數據庫表進行基本操做,如插入、刪除、修改、查詢等。
(3)數據的完整性檢查功能:保證用戶輸入的數據知足相應的約束條件。實體、參照、域(用戶定義)完整性
(4)數據庫的安全保護功能:保證只有具備權限的用戶才能訪問數據庫中的數據。
(5)數據庫的併發控制功能:使多個應用程序可在同一時刻併發地訪問數據庫的數據。
(6)數據庫系統的故障恢復功能:使數據庫在運行出現故障時進行數據庫恢復,以保證數據庫可靠運行。
(7)在網絡環境下訪問數據庫的功能。
(8)方便、有效地存取數據庫信息的接口和工具。編程人員經過程序開發工具與數據庫的接口編寫數據庫應用程序。數據庫系統管理員(DBA,DataBase Adminitrator)經過提供的工具對數據庫進行管理。
DBMS的功能主要包括如下幾個方面:
1.數據庫定義功能
DBMS通常都提供數據定義語言(DDL, Data Definition Language),能夠分別用於定義外模式、概念模式和內模式。用DDL編寫的外模式、概念模式和內模式分別稱爲源外模式、源概念模式和源內模式。它們通過模式翻譯程序翻譯後將造成相應的內部表示,分別稱爲目標外模式、目標概念模式和目標內模式。
這些目標模式被保存在數據字典中(又稱系統目錄),它們是用於刻畫數據庫的框架結構,是對數據庫(而不是數據)的一種描述,也是DBMS存取和管理數據的基本依據。
2.數據操縱功能
DBMS還提供數據操做語言(DML, Data Manipulation Language)用於實現對數據庫的查詢、添加、修改和刪除等基本操做。
DML分爲宿主型的和自主型的(或自含型的)的DML。
Ø 宿主型的DML用於嵌入到其餘語言(稱爲主語言)當中,例如把它嵌入到PASCAL、FORTRAN,C等高級語言中。這類DML語言自己不能獨立使用,這也就是它之因此稱爲宿主型DML的緣由。
Ø 自主型的(或自含型)DML則是交互式命令語言,其語法簡單,每條語句均可以獨立執行。
Ø 現在,DBMS通常既提供宿主型的DML也提供自主型的DML,或者提供集宿主型和自主型於一體的DML,其典型的表明就是著名的SQL(Structured Query Language)語言。SQL語句既能夠嵌入到其餘的高級語言,也能夠單獨交互執行。
用戶或者應用程序對數據庫的操做其實是經過DBMS控制並執行DML語句來實現的。
自主型的DML是交互式命令語言,DBMS一般以解釋執行的方式運行它們。
對於宿主型的DML,DBMS提供兩種執行方法:
Ø 預編譯方法。這種方法的原理是,由DBMS提供的預編譯程序對包含DML的主語言進行掃描,識別出DML,而後把這些DML轉換成合法的主語言代碼,以便主語言的編譯程序可以接受和執行它們。
Ø 修改、擴充主語言編譯程序的方法。這種方法又稱爲加強編譯方法,加強後的編譯程序既能夠編譯主語言代碼,也能夠編譯和執行嵌入的DML語句。
3.數據庫運行管理功能
數據庫運行管理是DBMS提供的重要功能之一,它是數據系統可以正確、有效運行的基本保證。這種管理功能主要包括存取控制、安全性檢測、併發控制、完整性約束條件的檢查和執行、數據庫內部的維護和管理等。
4.數據庫的創建和維護功能
這包括數據庫初試數據的裝載和轉換、數據庫的轉儲和恢復、數據庫的重組織功能和性能監視、分析功能等。這些功能主要是由DBMS提供的實用程序來完成。
定義: 是指經過訪問數據庫來完成用戶操做的程序。
Ø 它介於系統用戶和DBMS之間,用戶經過操做應用程序來獲取他們的需求,而應用程序則經過DBMS訪問數據庫來實現用戶提出的需求。
Ø 應用程序能夠用Java、JSP、.NET等技術開發。
定義:是大體分爲兩類——系統用戶和系統管理員。
Ø 系統用戶是指應用程序的用戶,他們是整個數據庫系統的最終使用者;
Ø 系統管理員能夠分爲不一樣級別類型的管理人員,他們主要負責數據庫的管理和維護工做。
如今數據庫系統軟件產品很是多,它們可能基於不一樣的操做系統,支持不一樣的數據庫語言,採用不一樣的數據結構,等等。可是,它們的體系結構卻基本相同,那就是三級模式結構。
三級模式結構是由美國國家標準學會(ANSI, American National Standards Institute)所屬的標準計劃和要求委員會(SPARC, Standards Planning And Requirements Committee)於1975年提出的,稱爲SPARC分級結構。
三級模式結構將數據庫系統抽象爲三個層次,分別爲內模式、概念模式和外模式。
定義:又稱存儲模式,它是數據在數據庫系統中最底層的表示,描述了數據的物理結構和存儲方式,即定義了存儲記錄的類型、存貯域的表示、存儲記錄的物理順序、索引等。
一個數據庫僅有一個內模式。
定義:又稱邏輯模式,簡稱模式,它用於對整個數據庫中數據的邏輯結構和特徵、實體及其性質與聯繫進行描述。但這種描述並不涉及具體的物理存儲方式和硬件環境,也不涉及任何特定的應用程序及其開發工具。
一個數據庫也只有一個概念模式。
定義:外模式是概念模式的一個子集,這個子集是爲某一個特定用戶所使用的。從這個角度看,外模式是面向用戶的,因此外模式又稱子模式或用戶模式。本質上,外模式是應用程序所使用的局部數據的邏輯結構和特徵的描述,是使用該應用程序的用戶所看到的數據視圖。
以上三個模式分別從三個不一樣層次的級別對數據庫進行抽象,即分別抽象爲用戶級、概念級、物理級數據庫。
Ø 用戶級數據庫對應於外模式,是從用戶的角度對數據庫進行抽象,是用戶看到和使用的用戶視圖的集合。
Ø 概念級數據庫對應於概念模式,介於用戶級和物理級之間,是程序開發人員看到和使用的數據庫。。
Ø 物理級數據庫對應於內模式,是從數據的物理存儲結構的角度對數據庫進行抽象。
總之,外模式是概念模式的子集,概念模式是內模式的邏輯表示,而內模式則是概念模式的物理表示。
三級模式結構將數據庫系統抽象爲三個層次,分別爲內模式、概念模式和外模式。各模式的關係如圖1.7所示。