(ORACLE)PL/SQL 資料庫概念
(ORACLE)PL/SQL 資料庫的概念
資料庫的概念
資料庫就是存放資料的倉庫,是按照資料的結構來組織,管理,儲存的倉庫,是對資料持久化的工具,資料庫(本質就是一個軟體),它能有效的管理資料,資料庫是衡量一個程式設計師水平的重要指標。
資料庫與應用程式的關係
1、客戶端向服務遞交請求。
2、伺服器訪問資料庫
3、在資料庫獲取查詢資料的結果。
4、由伺服器將資料庫獲取的結果返回給客戶端。
資料庫的發展歷史
1、萌芽階段—檔案系統記載資料庫
使用磁碟做為記錄載體
特點:資料冗餘一致性差,安全性差,檔案資料不支援併發,檔案資料獨立,檔案資料無法實現資料的完整性操作和原子性。
2、初級階段—網狀,層次型資料庫
DBMS的誕生,IBM的IDS,IMS資料庫
特點: 程式設計複雜,基本單位是記錄,面向過程,實現比較低效,而且有點麻煩,關於樹和圖的理論基礎不完善,部分型別問題描述相當困難。
3、現階段—關係物件型資料庫
SQL的誕生、加強了資料儲存的依賴
特點:處理速度快,安全級別高,支援快閃以及完美的回覆,即使硬體壞了,也可以恢復到故障發生前1秒。幾臺資料庫做負載資料庫,可以做到30s以內故障轉移。網格控制,以及資料倉庫方面也非常強大
常用的資料庫
1、Oracle
2、SQL Server
3、DB2
4、MySQL
5、Accese
6、。。。。。。
資料庫的分類
小型資料庫
Access foxbase
負載量在百人以內
成本在千元以內
對安全性要求不高
中型資料庫
MySQL SQL server
負載量以日訪問在5000-15000人次
成本在萬元以上的專案
如電子商務網站、企事業單位網站
大型資料庫
SyBase Oracle DB2
負載可以處理海量資料,
以三個資料庫在海量資料處理能力上
SyBase<Oracle<DB2
什麼是SQL
SQL(Structured Query Language)
(Structured Query Language)結構化查詢語句,是一種資料庫查詢和程式設計語言,用於存取資料以及查詢、更新和管理的關係型資料庫
SQL語言包括4個部分
DDL(Data Definition Language) 資料定義語言 如資料表的建立修改刪除等
DML(Data Manipulation Language) 資料操作語言 如對資料的增刪改
DQL(Data Query Language)資料查詢語言 對資料的查詢
DCL(Data Control Language)資料控制語言 如事物的提交回滾,許可權控制
什麼是PL/SQL
PL/SQL(Procedural/Structured Query Language) 過程化SQL語言
PL/SQL是Oracle對SQL語言的擴充套件,在普通SQL中加入了程式語言的特點,列如:變數的使用和流程控制語句等
PL/SQL是Oracle對標準資料庫語言的擴充套件,oracle公司已經將PL/SQL整合到Oracle伺服器和其他工具中,利用PL/SQL語言可以建表、查詢、新增、刪除資料以及處理事務
PL/SQL是一種高效能的機遇事務處理的語言,能運用在任何Oracle環境中,支援所有資料處理命令。通過使用PL/SQL程式單元處理SQL的資料定義和資料控制元素
DBMS(Data Management System)資料庫管理系統
DBMS資料庫管理系統,負責對資料庫進行統一的管理和操作,確保資料操作的安全性和完整性
使用者通過DBMS訪問資料庫中的資料,資料庫管理員也通過DBMS進行資料庫的維護,它可以使多個應用程式和使用者用不同的方法在同時或不同時刻去建立、修改和詢問資料庫。
大部分DBMS提供資料定義語言DDL和資料操作語言DML,供使用者定義資料庫的模式結構與許可權約束,實現對資料的追加刪除等操作。
資料庫中資料的儲存
關係型資料使用資料表來儲存資料,通過對錶與表的完整性實施,實現表關係的維護
使用者名稱|年齡|性別|郵箱
每行資料就是寫入表中的實體
資料庫是以2維表的方式記錄資料的
Oracle資料庫包含的結構
1、客戶端應用程式
2、伺服器端
3、資料庫例項
4、資料庫服務
5、資料庫監聽
Oracle的執行及執行原理
監聽器:listener是一個重要的資料庫服務元件,在整個Oracle體系結構中,扮演著重要的作用
1、監聽客戶端請求。
2、為客戶請求分配Server Process。
3、註冊實列服務。
4、錯誤轉移faiilover。
5、負載均衡衡量。
##資料庫服務:在資料庫伺服器上啟動Oracle實列。
1、Oracle伺服器是由oracle資料庫和oracle實列組成的。
2、Oracle資料庫是一個數據的集合,存放在資料檔案裡,該集合被視為一個邏輯單元、
3、Oracle 實列由管理資料庫的後臺程序和記憶體結構所構成
資料庫實列
1、Oracle實列是記憶體結構和後臺程序的集合
2、啟動Oracle實列的過程,即:分配記憶體、啟動後臺程序
3、Oracle實列的記憶體包括SGA和PGA
當啟動實列的時候分配SGA;
當伺服器程序建立時分配PGA;
一般情況下SGA:PGA = 8:1;
4、Oracle實列的後臺程序包括SMON、PMON、DBWR、LGWR、ARC、CKPT等。
表空間
表空間即存放資料表的空間,是Oracle儲存關係資料的物理空間,DBMS提供對錶空間中資料的邏輯對映。表空間由統一磁碟的一個或多個數據檔案構成,這些檔案稱為DATA FILE,一個數據檔案只能屬於一個表空間
每個資料庫例項中必須有一個表空間(預設是SYSTEM)
表空間的相關操作
新建表空間
create tablespace 表空間名 datafile 存放路徑 size 檔案大小 autoextend on;
存放路徑 ‘E:\MYSPACE.dbf’
Oracle建立表時如何指定將表建立到哪個表空間
create table tableName() tablespace tabsName;
刪除表空間
drop tablespace 表空間
drop tablespace 表空間名 including contents