SQL結構化查詢語言
SQL是什麼?結構化查詢語言基礎介紹|天矽科技網頁設計
什麼是SQL
SQL 全名為 Structured Query Language,中文為「結構化查詢語言」,最早在1970年由 IBM 開發,而至今仍被廣泛使用,它是管理資料庫的一種程式語言,幫助我們在龐大的資料中快速找到想要的資訊。SQL的控制範圍包括資料插入、查詢、更新和刪除,資料庫模式建立和修改,以及資料存取控制,如...
- 數據定義語言,包含定義資料庫及其對向的語句,如表、圖、觸發器與儲存過程…等。
- 數據操作語言,包含允許更新和查詢數據的語句。
- 數據控制語言,允許授予用戶權限,如訪問數據庫中特定數據的權限。
當我們在操作APP、網頁或觸發器時,資料會被 DBMS資料庫管理系統 (如MySQL、MariaDB、MSSQL) 紀錄,並存放到資料庫中,接著透過SQL結構化查詢語言向使用者顯示、提取所需的資料與訊息,如圖。
延伸閱讀:MySQL是什麼?MySQL、SQL與MariaDB基礎介紹
參考資料:國境之男|SQL是什麼? 初學者必須知道的懶人包
資料庫與SQL
什麼是資料庫?
資料庫 Database 有些人也會稱它為數據庫,它是用來集中管理資料的地方,我們可以想像成它是一個專門放數據資料的倉庫,藉由建立許多的資料表,再將資料分類放入對應的資料表內,又在資料表之間建立關聯,組合排列構成一個完整的資料庫。
資料庫的類型很多,根據ORACLE 所提供的資訊顯示,資料庫有以下幾種類型…關係式資料庫、物件導向資料庫、分散式資料庫、資料倉庫、NoSQL資料庫、OLTP資料庫、開放原始碼資料庫、雲端資料庫、多模型資料庫、文件/JSON資料庫與自主驅動雲端資料庫。
而資料庫的資訊更新、刪除或修改等操作,就是透過SQL結構化查詢語言來進行管理與維護,讓一般使用者可以不用透過工程師,就可以自行提取或修改所需的資料。
比如網站管理者透過後台管理工具,將圖片、文字或產品資訊儲存並更新到前台顯示,這也是利用資料庫的方式處理,像下方的KILEWS產品介紹頁面,使用者可以利用點選列表的方式,將產品細項找出來並進行瀏覽,這也是跟資料庫、SQL與資料庫管理系統 (如MySQL、MariaDB、MSSQL) 有關。
SQL具備哪些功能
目前的SQL語言大多皆已遵循IBM SQL架構進行標準化,因此就算是資料庫的製造廠商不同,也都能讓工程師迅速上手、理解操作之方式。而SQL具有資料定義、資料處理、資料控制和交易控制之功能,如下。
- 資料定義語言 Data Definition Language, DDL
提供產生、變更、刪除資料庫或資料表之命令,如 Create、Alter、Drop、Truncate、Comment、以及 Rename等命令。 - 資料處理語言 Data Manipulation Language, DML
提供可以處理資料表之命令,如Select、Insert、Update、Delete等。 - 資料控制語言 Data Control Language, DCL
提供管理資料庫或資料表授權使用之命令,如Grant、Revoke 等。 - 交易控制語言 Transaction Control Language
多人使用環境的交易控制命令,如Commit、Savepoint、Rollback、以及 Settransaction 等。
資料來源:翻轉工作室|資料庫程式設計-PHP+MySQL:第六章SQL語言與PHP+MySQL
SQL受歡迎程度
最一開始有提到SQL語言,最早出現在1970年由IBM開發,時至今日已逾50年,即使現今社會同樣存在可提供使用的資料庫技術,但SQL語言仍是其中之霸主,且在未來SQL仍可維持它優秀的潛力再戰好幾十年!
根據「數據分析那些事」的文章報導表示,讓眾人在過了50多年後,仍依舊使用SQL的原因有8種,如以下。
- 優秀的資料處理能力:
SQL是特別為處理資料而設計,善於存取與組織資料。 - 實踐檢驗:
SQL有備份計畫、變化管理和操作嚴謹性。 - 知識和社群:
在過去時間裡,SQL的知識體系被建立、人數也隨著時間逐漸增長,並且SQL知識被寫成豐富得檔案,壯大了人才、知識也更加深入。 - 簡單:
對大多數只需要使用查詢功能的人來說,SQL是一個非常簡單的語言。 - 高度普及:
有超過半數的開發者都會使用SQL與RDBMS(關聯式資料庫管理系統),讓SQL語言知識幾乎變成常識般的存在。 - 開源性:
開源的MySQL與PostgreSQL資料庫管理系統,讓SQL技術成為主要的資料庫技術。 - 能用 SQL server 做好的事情就別寫程式碼:
據說是坊間流傳的一句至理名言…其原因在於,大多數的情況都能透過SQL來完成,並且還能做得比任何能寫程式的人,解決得更好。 - SQL語言與資料庫管理系統,各司其職:
對某些工作來說,SQL資料庫也許不是最好的選擇,但在大部分的情況下,SQL資料庫仍能打敗其他「非SQL資料庫」。
資料來源:
數據分析那些事|SQL 誕生 48年了!為什麼我們仍在使用它?