這篇PostgreSQL教程提供SQL的基本和高級概念。此PostgreSQL系列教程是專為初學者和專業人士編寫提供的,需要讀者有一些基本的數據庫和編程基礎。
PostgreSQL是一個開源對象關系數據庫管理系統(ORDBMS)。
這篇PostgreSQL系列教程包括PostgreSQL語言的所有主題,如創建數據庫,創建表,刪除數據庫,刪除表,選擇數據庫,選擇表,插入記錄,更新記錄,刪除記錄,觸發器,功能,過程,游標等。幫助您更好地了解PostgreSQL語言和使用PostgreSQL數據庫。
PostgreSQL是什么?
PostgreSQL是一個功能強大的開源對象關系數據庫管理系統(ORDBMS)。 用于安全地存儲數據; 支持最佳做法,并允許在處理請求時檢索它們。
PostgreSQL(也稱為Post-gress-Q-L
)由PostgreSQL全球開發集團(全球志愿者團隊)開發。 它不受任何公司或其他私人實體控制。 它是開源的,其源代碼是免費提供的。
PostgreSQL是跨平臺的,可以在許多操作系統上運行,如Linux,FreeBSD,OS X,Solaris和Microsoft Windows等。
PostgreSQL的官方網站是:https://www.postgresql.org/ 打開如下所示 -
前提條件
在學習PostgreSQL之前,您必須具備SQL和編程語言(如C)的基本知識。
面向讀者
這篇PostgreSQL系列教程旨在幫助初學者和專業人士。
問題
我們不能保證您在此PostgreSQL數據庫教程中不會遇到任何問題。本教程中的講解,示例和代碼等只是根據作者的理解來概括寫出。由于作者水平和能力有限,因此不保正所有編寫的文章都準確無誤。但是如果有遇到任何錯誤或問題,請反饋給我們,我們會及時糾正以方便后續讀者閱讀。
教程目錄
1. 基礎部分
1.1. PostgreSQL是什么?- PostgreSQL是一個功能強大的開源對象關系數據庫管理系統(ORDBMS)。
1.2. PostgreSQL歷史 - PostgreSQL由計算機科學教授Michael Stonebraker在UCB創建。
1.3. PostgreSQL特點 - 介紹PostgreSQL的6個特點及一些工具。
1.4. PostgreSQL命令語法大全 - 介紹PostgreSQL中所有語句的語法。
1.5. PostgreSQL數據類型 - PostgreSQL中主要有三種類型的數據類型:數值數據類型,字符串數據類型和日期/時間數據類型。
1.6. PostgreSQL安裝(Windows)- 介紹如何在Windows系統上安裝PostgreSQL數據庫。
1.7. PostgreSQL創建數據庫 - 學習如何在PostgreSQL中,可以使用CREATE DATABASE
命令創建數據庫。
1.8. PostgreSQL刪除數據庫 - 學習如何在PostgreSQL中刪除數據庫的兩種方法。
1.9. PostgreSQL創建表 - 學習如何在PostgreSQL中,使用CREATE TABLE語句在任何給定的數據庫中創建一個新表。
2.0. PostgreSQL刪除表 - 學習如何刪除PostgreSQL中的區分表。
2.1. PostgreSQL模式(架構) - 學習模式的概念。模式(也叫架構)可以包含視圖,索引,序列,數據類型,運算符和函數。
2. 查詢語句
1.1. PostgreSQL插入數據(INSERT語句)- 在PostgreSQL中,INSERT查詢用于在表中插入新行。也可以一次插入單行或多行到表中。
1.2. PostgreSQL查詢數據(SELECT語句)- 在PostgreSQL中,SELECT語句用于從數據庫表中檢索數據。數據以結果表格的形式返回。
1.3. PostgreSQL更新數據(UPDATE語句)- 在PostgreSQL中,UPDATE語句用于修改表中現有的記錄。
1.4. PostgreSQL刪除數據(DELETE語句)- DELETE語句用于從表中刪除現有記錄。
1.5. PostgreSQL ORDER BY子句 - PostgreSQL ORDER BY子句用于按升序或降序對數據進行排序,數據在一列或多列的基礎上進行排序。
1.6. PostgreSQL分組(GROUP BY子句)- PostgreSQL GROUP BY子句用于將具有相同數據的表中的這些行分組在一起,GROUP BY子句與SELECT語句一起使用。
1.7. PostgreSQL Having子句 - 在PostgreSQL中,HAVING子句與GROUP BY子句組合使用,用于選擇函數結果滿足某些條件的特定行。
1.8. PostgreSQL條件查詢 - PostgreSQL條件用于從數據庫獲取更具體的結果。它們通常與WHERE子句一起使用。 具有子句的條件就像雙層過濾器。
1.9. PostgreSQL AND條件 - PostgreSQL AND條件與WHERE子句一起使用,以從表中的多個列中選擇同時滿足多個條件的數據。
2.0. PostgreSQL OR條件 - PostgreSQL OR條件與WHERE子句一起使用,以從表中的一列或多列列中選擇至少滿足一個條件的數據。
2.1. PostgreSQL AND & OR條件 - PostgreSQL AND&OR條件在僅一個查詢中提供了AND和OR條件的優點。
2.2. PostgreSQL NOT條件 - PostgreSQL NOT條件與WHERE子句一起使用以否定查詢中的條件。
2.3. PostgreSQL LIKE條件 - PostgreSQL LIKE條件與WHERE子句一起用于從指定條件滿足LIKE條件的表中獲取數據。
2.4. PostgreSQL IN條件 - PostgreSQL IN條件與WHERE子句一起使用,從表中獲取滿足指定IN條件的數據。
2.5. PostgreSQL NOT IN條件 - PostgreSQL NOT IN條件與WHERE子句一起使用,從指定條件否定IN條件獲取數據。
2.6. PostgreSQL NOT IN條件 - PostgreSQL NOT IN條件與WHERE子句一起使用,從指定條件否定IN條件的表中獲取數據。
2.7. PostgreSQL BETWEEN條件 - PostgreSQL BETWEEN條件與WHERE子句一起使用,從兩個指定條件之間獲取數據。
3. SQL連接
- PostgreSQL連接(內連接) - 連接類型有:內連接(INNER JOIN),左外連接(LEFT OUTER JOIN),右外連接(RIGHT OUTER JOIN),全連接(FULL OUTER JOIN),跨連接(CROSS JOIN)
- PostgreSQL左外連接 - 外連接是內聯的延伸,外連接有三種類型。
- PostgreSQL右外連接 - 外連接是內聯的延伸,外連接有三種類型。
- PostgreSQL全外連接 - 外連接是內聯的延伸,外連接有三種類型。
- PostgreSQL交叉連接(CROSS JOIN) - PostgreSQL跨連接(CROSS JOIN)將第一個表的每一行與第二個表的每一行相匹配。 它也被稱為笛卡爾積。
4. 高級部分
- PostgreSQL視圖 - 在PostgreSQL中,視圖(VIEW)是一個偽表。 它不是物理表,而是作為普通表選擇查詢。視圖也可以表示連接的表。 它可以包含表的所有行或來自一個或多個表的所選行。
- PostgreSQL函數(存儲過程) - PostgreSQL函數也稱為PostgreSQL存儲過程。PostgreSQL函數或存儲過程是存儲在數據庫服務器上并可以使用SQL界面調用的一組SQL和過程語句(聲明,分配,循環,控制流程等)。
- PostgreSQL觸發器 - PostgreSQL觸發器是一組動作或數據庫回調函數,它們在指定的表上執行指定的數據庫事件時自動運行。 觸發器用于驗證輸入數據,執行業務規則,保持審計跟蹤等。
- PostgreSQL別名 - PostgreSQL別名(Alias)用于為列或表提供臨時名稱??梢允褂肞ostgreSQL別名為列或表創建一個臨時名稱。
- PostgreSQL索引 - 索引是用于加速從數據庫檢索數據的特殊查找表。數據庫索引類似于書的索引(目錄)。 索引為出現在索引列中的每個值創建一個條目。
- PostgreSQL日期和時間函數 - 介紹常用的日期和時間函數函數功能。
- PostgreSQL UNIONS子句 - PostgreSQL UNION子句/運算符用于組合兩個或多個SELECT語句的結果,而不返回任何重復的行。
- PostgreSQL NULL值 - PostgreSQL NULL是用于表示缺少值的術語。NULL值是一個字段中的值,顯示為空白。
- PostgreSQL修改表(ALTER TABLE語句)- PostgreSQL ALTER TABLE命令用于添加,刪除或修改現有表中的列。還可以使用ALTER TABLE命令在現有表上添加和刪除各種約束。
- PostgreSQL截斷表(TRUNCATE TABLE語句)- PostgreSQL TRUNCATE TABLE命令用于從現有表中刪除完整的數據。您也可以使用DROP TABLE命令刪除完整的表,但會從數據庫中刪除完整的表結構,如果希望存儲某些數據,則需要重新創建此表。
- PostgreSQL事務 - 事務是對數據庫執行的工作單元。事務是以邏輯順序完成的工作的單位或順序,無論是用戶手動的方式還是通過某種數據庫程序自動執行。
- PostgreSQL鎖 - 鎖或獨占鎖或寫鎖阻止用戶修改行或整個表。 在UPDATE和DELETE修改的行在事務的持續時間內被自動獨占鎖定。 這將阻止其他用戶更改行,直到事務被提交或回退。
- PostgreSQL子查詢 - 子查詢或內部查詢或嵌套查詢是一個PostgreSQL查詢中的查詢,它可以嵌入到WHERE子句中。子查詢用于返回將在主查詢中使用的數據作為進一步限制要檢索的數據的條件。
- PostgreSQL子查詢 - 子查詢或內部查詢或嵌套查詢是一個PostgreSQL查詢中的查詢,它可以嵌入到WHERE子句中。
- PostgreSQL自動遞增 - PostgreSQL具有數據類型smallserial,serial和bigserial; 這些不是真正的類型,而只是在創建唯一標識符列的標志以方便使用。
- PostgreSQL權限 - 在數據庫中創建對象時,都會為其分配所有者。 所有者通常是執行創建語句的用戶。 對于大多數類型的對象,初始狀態是只有所有者(或超級用戶)可以修改或刪除對象。 要允許其他角色或用戶使用它,必須授予權限或權限。
5. PostgreSQL程序連接接口
- C/C++連接PostgreSQL數據庫 - 學習如何使用libpqxx庫連接PostgreSQL數據庫,它是PostgreSQL的官方C++客戶端API。
- Java連接PostgreSQL數據庫 - 學習如何設置PostgreSQL JDBC驅動,并使用Java連接到PostgreSQL數據庫執行相關數據庫操作。
- PHP連接PostgreSQL數據庫 - 學習如何設置PHP-PostgreSQL,并使用PHP連接到PostgreSQL數據庫執行相關數據庫操作。
- Perl連接PostgreSQL數據庫 - PostgreSQL可以使用Perl DBI模塊與Perl集成,Perl DBI模塊是Perl編程語言的數據庫訪問模塊。 它定義了一組提供標準數據庫接口的方法,變量和約定。
- Python連接PostgreSQL數據庫 - PostgreSQL可以使用psycopg2模塊與Python集成。sycopg2是用于Python編程語言的PostgreSQL數據庫適配器。 psycopg2是非常小,快速,穩定的。
易百教程移動端:請掃描本頁面底部(右側)二維碼并關注微信公眾號,回復:"教程" 選擇相關教程閱讀或直接訪問:http://m.yiibai.com 。
加QQ群啦,易百教程官方技術學習群
注意:建議每個人選自己的技術方向加群,同一個QQ最多限加 3 個群。