新聞中心
PostgreSQL 教程
PostgreSQL 是一個(gè)免費(fèi)的對(duì)象-關(guān)系數(shù)據(jù)庫(kù)服務(wù)器(ORDBMS),在靈活的BSD許可證下發(fā)行。

成都創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)資興,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):18982081108
PostgreSQL 開發(fā)者把它念作 post-gress-Q-L。
PostgreSQL 的 Slogan 是 "世界上最先進(jìn)的開源關(guān)系型數(shù)據(jù)庫(kù)"。
參考內(nèi)容:PostgreSQL 10.1 手冊(cè)
什么是數(shù)據(jù)庫(kù)?
數(shù)據(jù)庫(kù)(Database)是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù)。
每個(gè)數(shù)據(jù)庫(kù)都有一個(gè)或多個(gè)不同的 API 用于創(chuàng)建,訪問(wèn),管理,搜索和復(fù)制所保存的數(shù)據(jù)。
我們也可以將數(shù)據(jù)存儲(chǔ)在文件中,但是在文件中讀寫數(shù)據(jù)速度相對(duì)較慢。
所以,現(xiàn)在我們使用關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)來(lái)存儲(chǔ)和管理的大數(shù)據(jù)量。所謂的關(guān)系型數(shù)據(jù)庫(kù),是建立在關(guān)系模型基礎(chǔ)上的數(shù)據(jù)庫(kù),借助于集合代數(shù)等數(shù)學(xué)概念和方法來(lái)處理數(shù)據(jù)庫(kù)中的數(shù)據(jù)。
ORDBMS(對(duì)象關(guān)系數(shù)據(jù)庫(kù)系統(tǒng))是面向?qū)ο蠹夹g(shù)與傳統(tǒng)的關(guān)系數(shù)據(jù)庫(kù)相結(jié)合的產(chǎn)物,查詢處理是 ORDBMS 的重要組成部分,它的性能優(yōu)劣將直接影響到DBMS 的性能。
ORDBMS在原來(lái)關(guān)系數(shù)據(jù)庫(kù)的基礎(chǔ)上,增加了一些新的特性。
RDBMS 是關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),是建立實(shí)體之間的聯(lián)系,最后得到的是關(guān)系表。
OODBMS 面向?qū)ο髷?shù)據(jù)庫(kù)管理系統(tǒng),將所有實(shí)體都看成對(duì)象,并將這些對(duì)象類進(jìn)行封裝,對(duì)象之間的通信通過(guò)消息 OODBMS 對(duì)象關(guān)系數(shù)據(jù)庫(kù)在實(shí)質(zhì)上還是關(guān)系數(shù)據(jù)庫(kù) 。
ORDBMS 術(shù)語(yǔ)
在我們開始學(xué)習(xí) PostgreSQL 數(shù)據(jù)庫(kù)前,讓我們先了解下 ORDBMS 的一些術(shù)語(yǔ):
- 數(shù)據(jù)庫(kù): 數(shù)據(jù)庫(kù)是一些關(guān)聯(lián)表的集合。
- 數(shù)據(jù)表: 表是數(shù)據(jù)的矩陣。在一個(gè)數(shù)據(jù)庫(kù)中的表看起來(lái)像一個(gè)簡(jiǎn)單的電子表格。
- 列: 一列(數(shù)據(jù)元素) 包含了相同的數(shù)據(jù), 例如郵政編碼的數(shù)據(jù)。
- 行:一行(=元組,或記錄)是一組相關(guān)的數(shù)據(jù),例如一條用戶訂閱的數(shù)據(jù)。
- 冗余:存儲(chǔ)兩倍數(shù)據(jù),冗余降低了性能,但提高了數(shù)據(jù)的安全性。
- 主鍵:主鍵是唯一的。一個(gè)數(shù)據(jù)表中只能包含一個(gè)主鍵。你可以使用主鍵來(lái)查詢數(shù)據(jù)。
- 外鍵:外鍵用于關(guān)聯(lián)兩個(gè)表。
- 復(fù)合鍵:復(fù)合鍵(組合鍵)將多個(gè)列作為一個(gè)索引鍵,一般用于復(fù)合索引。
- 索引:使用索引可快速訪問(wèn)數(shù)據(jù)庫(kù)表中的特定信息。索引是對(duì)數(shù)據(jù)庫(kù)表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu)。類似于書籍的目錄。
- 參照完整性: 參照的完整性要求關(guān)系中不允許引用不存在的實(shí)體。與實(shí)體完整性是關(guān)系模型必須滿足的完整性約束條件,目的是保證數(shù)據(jù)的一致性。
PostgreSQL 特征
-
函數(shù):通過(guò)函數(shù),可以在數(shù)據(jù)庫(kù)服務(wù)器端執(zhí)行指令程序。
-
索引:用戶可以自定義索引方法,或使用內(nèi)置的 B 樹,哈希表與 GiST 索引。
-
觸發(fā)器:觸發(fā)器是由SQL語(yǔ)句查詢所觸發(fā)的事件。如:一個(gè)INSERT語(yǔ)句可能觸發(fā)一個(gè)檢查數(shù)據(jù)完整性的觸發(fā)器。觸發(fā)器通常由INSERT或UPDATE語(yǔ)句觸發(fā)。 多版本并發(fā)控制:PostgreSQL使用多版本并發(fā)控制(MVCC,Multiversion concurrency control)系統(tǒng)進(jìn)行并發(fā)控制,該系統(tǒng)向每個(gè)用戶提供了一個(gè)數(shù)據(jù)庫(kù)的"快照",用戶在事務(wù)內(nèi)所作的每個(gè)修改,對(duì)于其他的用戶都不可見,直到該事務(wù)成功提交。
-
規(guī)則:規(guī)則(RULE)允許一個(gè)查詢能被重寫,通常用來(lái)實(shí)現(xiàn)對(duì)視圖(VIEW)的操作,如插入(INSERT)、更新(UPDATE)、刪除(DELETE)。
-
數(shù)據(jù)類型:包括文本、任意精度的數(shù)值數(shù)組、JSON 數(shù)據(jù)、枚舉類型、XML 數(shù)據(jù)
等。
-
全文檢索:通過(guò) Tsearch2 或 OpenFTS,8.3版本中內(nèi)嵌 Tsearch2。
-
NoSQL:JSON,JSONB,XML,HStore 原生支持,至 NoSQL 數(shù)據(jù)庫(kù)的外部數(shù)據(jù)包裝器。
-
數(shù)據(jù)倉(cāng)庫(kù):能平滑遷移至同屬 PostgreSQL 生態(tài)的 GreenPlum,DeepGreen,HAWK 等,使用 FDW 進(jìn)行 ETL。
相關(guān)資源
PostgreSQL 10.1 手冊(cè) 在線手冊(cè):http://www.runoob.com/manual/PostgreSQL/
離線手冊(cè) - PDF 版本: https://pan.baidu.com/s/1h1J14i8tzJUY3p9yyeW0mA, 提取碼: xs7r。
離線手冊(cè) - CHM 版本: https://pan.baidu.com/s/1h1J14i8tzJUY3p9yyeW0mA, 提取碼: tq4z。
查看最新版:https://github.com/postgres-cn/pgdoc-cn/releases
當(dāng)前題目:創(chuàng)新互聯(lián)PostgreSQL教程PostgreSQL教程
本文路徑:http://fisionsoft.com.cn/article/ccicdcj.html


咨詢
建站咨詢
