iT邦幫忙

2022 iThome 鐵人賽

DAY 2
2
自我挑戰組

資料庫新手入門--以PostgreSQL為例系列 第 2

Day 02 使用PostgreSQL的原因

  • 分享至 

  • xImage
  •  

當我們到圖書館找尋資料庫書籍時,你會發現多數書籍是關於 MySQL,
PostgreSQL 往往不是你第一個認識資料庫,那麼為什麼要選擇 PostgreSQL?

01 經得起考驗

PostgreSQL 1990年代推出第一版,時至今日,程式設計領域最知名的問答網站
Stack Overflow 在2022年對全球的開發人員進行調查,結果顯示在資料庫項目中,
由專業開發人員所票選出的第一名,可見十分經得起考驗與受到喜愛。

  1. 發展歷史悠久
  2. 專業人員認證第一

https://survey.stackoverflow.co/2022/#databases

https://ithelp.ithome.com.tw/upload/images/20220902/20129430gxMWShez21.png

02 完全開源

Stack Overflow 專業人士所使用的前五名,扣掉 SQLite 是專門用於手機上的資料庫,
MongoDB 則是以鍵值對應的文檔型資料庫,剩下的PostgreSQL、MySQL、SQL Server
有各自的優缺點,本文所採用的資料庫為完全開源,免費且擁有高級複雜查詢功能。

PostgreSQL MySQL SQL Server
開源/非開源 Open Source Open Source Not Open Source
版本 免費 免費/付費 免費(限制多)/付費
運行系統 Microsoft, Mac, Linux Microsoft, Mac, Linux Microsoft, Linux
SQL Standard SQL Standard SQL T-SQL
優勢 高級功能 輕便、速度快 微軟

03 學習資源

PostgreSQL 官網手冊豐富,並且有台灣使用者社群維護繁體中文版本,
可以更輕鬆的閱讀資源,另外也有許多網站提供更淺顯易懂的Tutorial教學,
以下列出官網、繁體版跟參考網站 :
https://www.postgresql.org/
https://docs.postgresql.tw/tutorial
https://www.geeksforgeeks.org/postgresql-tutorial/
https://www.postgresqltutorial.com/
https://www.tutorialspoint.com/postgresql/index.htm

04 VSCode支援完善

操作資料庫有許多種方法,對於資料庫陌生的工程師來說,VSCode是個好選擇。
因為VSCode現今已經是開發界家喻戶曉的輕量級編輯器,只要安裝擴充功能之後,
便可以完善的操作PostgreSQL,因此本系列將會以VSCode作為使用工具。

備註 : VSCode在筆者撰寫文章時MySQL的擴充功能有不少顯示性的BUG存在。

05 學會之後可以輕鬆使用其他資料庫

一開始可能會覺得資料庫這麼多,學完PostgreSQL之後,如果運氣不好,
面試上的工作卻使用其他資料庫,那麼不就要再從學一次了?
你可能會想像天下武功門派,一開始就要選對,要轉換門派是一件困難的事情!
不用擔心吶,情況會更像是你是一個軍隊的軍人,不管在哪個部隊都是一樣的,
甚至跨國支援都不是問題,因為資料庫所使用的查詢語言SQL是標準化的,
也就是說學完PostgreSQL之後,之後工作需求轉換到 MySQL等資料庫是容易的,
雖然每個資料庫會有各自獨特不同的語法與設定,但在多數標準的語法相同
因此你可以很快速就上手另一款資料庫囉!

06 為什麼不是其他資料庫?

對於資料庫初學者最常聽到的資料庫可能是MySQL,甚至Google搜尋資料庫,
出現的資源也很有可能是以MySQL為範例,例如知名的學習網站W3schools。
本系列選擇PostgreSQL有幾項原因 :

  1. 有人認為MySQL的甲骨文公司(Oracle)可能會有某一天將其變更為
    非開源的軟體,甚至因此有人建立了MariaDB來預防這個隱患,PostgreSQL
    則是以完全開源的方式在運作且功能強大。

  2. PostgreSQL 中文資源相對少也是撰寫這篇文章的動力之一,希望藉由參加鐵人賽
    對整個社群貢獻一點點個人小小的心力。

  3. 筆者的舒適圈有許多 PostgreSQL 使用者,撰寫文章之餘也可以促進工程師之間
    的交流,希望藉由軟體業的前輩們經驗,對於這個系列進行指教。


上一篇
Day 01 使用資料庫的原因
下一篇
Day 03 什麼是SQL
系列文
資料庫新手入門--以PostgreSQL為例30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言