官术网_书友最值得收藏!

1.2 數據庫技術構成

數據庫系統由硬件部分和軟件部分共同構成,硬件主要用于存儲數據庫中的數據,包括計算機、存儲設備等;軟件部分則主要包括DBMS、支持DBMS運行的操作系統以及支持多種語言進行應用開發的訪問技術等。本節將介紹數據庫的技術構成。

1.2.1 數據庫系統

數據庫系統有3個主要的組成部分。

·數據庫:用于存儲數據的地方。

·數據庫管理系統:用于管理數據庫的軟件。

·數據庫應用程序:為了提高數據庫系統的處理能力所使用的管理數據庫的軟件補充。

數據庫系統(Database System)提供了一個存儲空間用以存儲各種數據,可以將數據庫視為一個存儲數據的容器。一個數據庫可能包含許多文件,一個數據庫系統中通常包含許多數據庫。

數據庫管理系統(Database Management System, DBMS)是用戶創建、管理和維護數據庫時所使用的軟件,位于用戶與操作系統之間,對數據庫進行統一管理。DBMS能定義數據存儲結構,提供數據的操作機制,維護數據庫的安全性、完整性和可靠性。

數據庫應用程序(Database Application)雖然已經有了DBMS,但是在很多情況下,DBMS無法滿足對數據管理的要求。數據庫應用程序的使用可以滿足對數據管理的更高要求,還可以使數據管理過程更加直觀和友好。數據庫應用程序負責與DBMS進行通信,訪問和管理DBMS中存儲的數據,允許用戶插入、修改、刪除DB中的數據。

數據庫系統如圖1.2所示。

圖1.2 數據庫系統

1.2.2 SQL語言

對數據庫進行查詢和修改操作的語言叫作SQL。SQL的含義是結構化查詢語言(Structured Query Language)。SQL有許多不同的類型,有3個主要的標準:ANSI(美國國家標準機構)SQL;對ANSI SQL修改后在1992年采納的標準,稱為SQL-92或SQL2;最近的SQL-99標準,從SQL2擴充而來并增加了對象關系特征和許多其他新功能。其次,各大數據庫廠商提供不同版本的SQL,這些版本的SQL不但能包括原始的ANSI標準,而且在很大程度上支持SQL-92標準。

SQL語言包含以下4個部分。

(1)數據定義語言(DDL):DROP、CREATE、ALTER等語句。

(2)數據操作語言(DML):INSERT(插入)、UPDATE(修改)、DELETE(刪除)語句。

(3)數據查詢語言(DQL):SELECT語句。

(4)數據控制語言(DCL):GRANT、REVOKE、COMMIT、ROLLBACK等語句。

下面是一條SQL語句的例子,該語句聲明創建一個名叫students的表:

該表包含4個字段,分別為student_id、name、sex、birth,其中student_id定義為表的主鍵。

現在只是定義了一張表,但并沒有任何數據,接下來這條SQL聲明語句將在students表中插入一條數據記錄:

執行完該SQL語句之后,students表中就會增加一行新記錄,該記錄中字段student_id的值為41048101, name字段的值為Lucy Green, sex字段的值為1,birth字段的值為1990-02-14。

再使用SELECT查詢語句獲取剛才插入的數據,語句如下:

上面簡單列舉了常用的數據庫操作語句,在這里給讀者一個直觀的印象,讀者可能還不能理解,接下來會在學習MySQL的過程中詳細介紹這些知識。

1.2.3 數據庫訪問接口

不同的程序設計語言會有各自不同的數據庫訪問接口,程序語言通過這些接口執行SQL語句,進行數據庫管理。下面介紹主要的數據庫訪問接口。

1.ODBC

ODBC(Open Database Connectivity,開放數據庫互連)技術為訪問不同的SQL數據庫提供了一個共同的接口。ODBC使用SQL作為訪問數據的標準。這一接口提供了最大限度的互操作性:一個應用程序可以通過共同的一組代碼訪問不同的SQL數據庫管理系統(DBMS)。

一個基于ODBC的應用程序對數據庫的操作不依賴任何DBMS,不直接與DBMS打交道,所有的數據庫操作由對應的DBMS的ODBC驅動程序完成。也就是說,不論是Access、MySQL還是Oracle數據庫,均可用ODBC API進行訪問。由此可見,ODBC的最大優點是能以統一的方式處理所有的數據庫。

2.JDBC

JDBC(Java Data Base Connectivity, Java數據庫連接)是用于Java應用程序連接數據庫的標準方法,是一種用于執行SQL語句的Java API,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。

3.ADO.NET

ADO.NET是微軟在.NET框架下開發設計的一組用于和數據源進行交互的面向對象類庫。ADO.NET提供了對關系數據、XML和應用程序數據的訪問,允許和不同類型的數據源以及數據庫進行交互。

4.PDO

PDO(PHP Data Object)為PHP訪問數據庫定義了一個輕量級的、一致性的接口,它提供了一個數據訪問抽象層。這樣,無論使用什么數據庫,都可以通過一致的函數執行查詢和獲取數據。

針對不同的程序語言,MySQL提供了不同的數據庫訪問連接驅動,讀者可以在下載頁面(http://dev.mysql.com/downloads/)下載相關驅動。

主站蜘蛛池模板: 区。| 敖汉旗| 武乡县| 阿巴嘎旗| 英吉沙县| 镇原县| 宜兰市| 宁都县| 从江县| 祁阳县| 南充市| 固始县| 古蔺县| 五家渠市| 桦川县| 高阳县| 山西省| 淳安县| 虞城县| 合山市| 青海省| 崇明县| 德安县| 葫芦岛市| 平湖市| 商洛市| 洛南县| 荃湾区| 泸西县| 桂东县| 木里| 虎林市| 温泉县| 万全县| 武宣县| 黄浦区| 葫芦岛市| 舞钢市| 屯留县| 建湖县| 长岛县|