作者:admin 日期:2023-10-15 瀏覽: 次
從零開始學(xué)習(xí)Oracle之?dāng)?shù)據(jù)庫基礎(chǔ)知識
Oracle是以關(guān)系數(shù)據(jù)庫為數(shù)據(jù)存儲和管理作為構(gòu)架基礎(chǔ),構(gòu)建出的數(shù)據(jù)庫管理系統(tǒng)。
數(shù)據(jù)庫由一批數(shù)據(jù)構(gòu)成有序的集合,這些數(shù)據(jù)被存放在結(jié)構(gòu)化的數(shù)據(jù)表里。數(shù)據(jù)表之間相互關(guān)聯(lián),反映了客觀事物間的本質(zhì)聯(lián)系。數(shù)據(jù)庫系統(tǒng)提供對數(shù)據(jù)的安全控制和完整性控制。鹽城數(shù)據(jù)恢復(fù)
數(shù)據(jù)庫(DataBase,DB) 是一個長期存儲在計算機內(nèi)的、有組織的、有共享的、統(tǒng)一管理的數(shù)據(jù)集合。它是一個按數(shù)據(jù)結(jié)構(gòu)來存儲和管理數(shù)據(jù)的計算機軟件系統(tǒng)。即數(shù)據(jù)庫包含兩層含義:保管數(shù)據(jù)的“倉庫”,以及數(shù)據(jù)管理的方法和技術(shù)。
數(shù)據(jù)庫的種類大概有3種: 層次式數(shù)據(jù)庫、網(wǎng)絡(luò)式數(shù)據(jù)庫和關(guān)系式數(shù)據(jù)庫。不同種類的數(shù)據(jù)庫按不同的數(shù)據(jù)結(jié)構(gòu)來聯(lián)系和組織。
數(shù)據(jù)庫的特點包括: 實現(xiàn)數(shù)據(jù)共享,減少數(shù)據(jù)冗余;采用特定的數(shù)據(jù)類型:具有較高的數(shù) 據(jù)獨立性;具有統(tǒng)一的數(shù)據(jù)控制功能。
在關(guān)系數(shù)據(jù)庫中,數(shù)據(jù)表是一系列二維數(shù)組的集合,用來存儲數(shù)據(jù)和操作數(shù)據(jù)的邏輯結(jié)構(gòu)。它由縱向的列和橫向的行組成,行被稱為記錄,是組織數(shù)據(jù)的單位;列被稱為字段,每一列表示記錄的一個屬性,都有相應(yīng)的描述信息,如數(shù)據(jù)類型、數(shù)據(jù)寬度等。
數(shù)據(jù)類型決定了數(shù)據(jù)在計算機中的存儲格式,代表不同的信息類型。常用的數(shù)據(jù)類型有: 整數(shù)數(shù)據(jù)類型、浮點數(shù)數(shù)據(jù)類型、精確小數(shù)類型、二進制數(shù)據(jù)類型、日期/時間數(shù)據(jù)類型、字 符串?dāng)?shù)據(jù)類型。
主鍵(PRIMARY KEY)又稱主碼,用于唯一地標(biāo)識表中的每一條記錄??梢远x表中的一列或多列為主鍵,主鍵列上不能有兩行相同的值,也不能為空值。
數(shù)據(jù)庫系統(tǒng)由硬件部分和軟件部分共同構(gòu)成,硬件部分主要用于存儲數(shù)據(jù)庫中的數(shù)據(jù),包括計算機、存儲設(shè)備等;軟件部分則主要包括DBMS、支持DBMS運行的操作系統(tǒng),以及支持多種語言進行應(yīng)用開發(fā)的訪問技術(shù)等。
數(shù)據(jù)庫系統(tǒng)有3個主要的組成部分:數(shù)據(jù)庫:用于存儲數(shù)據(jù)的地方。數(shù)據(jù)庫管理系統(tǒng):用于管理數(shù)據(jù)庫的軟件。數(shù)據(jù)庫應(yīng)用程序:為了提高數(shù)據(jù)庫系統(tǒng)的處理能力所使用的管理數(shù)據(jù)庫的軟件補充。
數(shù)據(jù)庫(DataBase) 提供了一個存儲空間用以存儲各種數(shù)據(jù),可以將數(shù)據(jù)庫視為一個存儲數(shù)據(jù)的容器。一個數(shù)據(jù)庫可能包含許多文件,一個數(shù)據(jù)庫系統(tǒng)中通常包含許多數(shù)據(jù)庫。
數(shù)據(jù)庫管理系統(tǒng)(DataBase Management System,DBMS) 是用戶創(chuàng)建、管理和維護數(shù)據(jù)庫時所使用的軟件,位于用戶與操作系統(tǒng)之間,對數(shù)據(jù)庫進行統(tǒng)一管理。DBMS能定義數(shù)據(jù)存儲結(jié)構(gòu),提供數(shù)據(jù)的操作機制,維護數(shù)據(jù)庫的安全性、完整性和可靠性。
數(shù)據(jù)庫應(yīng)用程序(DataBase Application) ,雖然已經(jīng)有了DBMS,但是在很多情況下,DBMS無法滿足對數(shù)據(jù)管理的要求。數(shù)據(jù)庫應(yīng)用程序的使用可以滿足對數(shù)據(jù)管理的更高要求,還可以使數(shù)據(jù)管理過程更加直觀和友好。數(shù)據(jù)庫應(yīng)用程序負責(zé)與DBMS進行通信,訪問和管理DBMS 中存儲的數(shù)據(jù),允許用戶插入、修改、刪除DB中的數(shù)據(jù)。

數(shù)據(jù)庫系統(tǒng)如下圖所示:
對數(shù)據(jù)庫進行查詢和修改操作的語言叫做SQL。SQL的含義是結(jié)構(gòu)化查詢語言(Structured Query Language)。
SQL語言包含以下4個部分:
①數(shù)據(jù)定義語言(DDL):DROP、CREATE、ALTER等語句。
②數(shù)據(jù)操作語言(DML):INSERT(插入)、UPDATE(修改)、DELETE(刪除)語 句。
③數(shù)據(jù)查詢語言(DQL):SELECT語句。
④數(shù)據(jù)控制語言(DCL):GRANT、REVOKE、COMMIT、ROLLBACK等語句。
不同的程序設(shè)計語言會有各自不同的數(shù)據(jù)庫訪問技術(shù),程序語言通過這些技術(shù),執(zhí)行SQL語句,進行數(shù)據(jù)庫管理。主要的數(shù)據(jù)庫訪問技術(shù)有:ODBC、JDBC、ADO.NET和PDO。
①ODBC
Open DataBase Connectivity(開放數(shù)據(jù)庫互連)技術(shù)為訪問不同的 SQL數(shù)據(jù)庫提供了一 個共同的接口。ODBC使用SQL作為訪問數(shù)據(jù)的標(biāo)準(zhǔn)。這一接口提供了最大限度的互操作性:一個應(yīng)用程序可以通過共同的一組代碼訪問不同的SQL數(shù)據(jù)庫管理系統(tǒng)(DBMS)。
②JDBC
Java DataBase Connectivity(Java數(shù)據(jù)庫連接)用于Java 應(yīng)用程序連接數(shù)據(jù)庫的標(biāo)準(zhǔn)方法,是一種用于執(zhí)行SQL語句的Java API,可以為多種關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用Java語言編寫的類和接口組成。
③ADO.NET
ADO.NET是微軟在.NET框架下開發(fā)設(shè)計的一組用于和數(shù)據(jù)源進行交互的面向?qū)ο箢悗?。ADO.NET提供了對關(guān)系數(shù)據(jù)、XML和應(yīng)用程序數(shù)據(jù)的訪問,允許和不同類型的數(shù)據(jù)源以及數(shù)據(jù)庫進行交互。無錫數(shù)據(jù)恢復(fù)
④PDO