iT邦幫忙

3

[30天SQL筆記] Day 1: SQL的簡介

  • 分享至 

  • xImage
  •  

大家好,我是Josh。想必大家在點進來以前,或多或少聽過SQL是跟資料庫有關。在這30天中,我會介紹常見的SQL陳述式,也是作為Programmer需要知道的。此系列會將較瑣碎的資訊,以提供連結的方式,讓讀者可以自行查找(安裝、建置環境等),只留下日常需要熟悉的部分。

Outline:

  1. SQL是什麼
  2. SQL的特點
  3. SQL的三種陳述句
  4. SQL與DBMS的關係

一、SQL是什麼

SQL是一種標準的程式設計語言,用於建立、更新和擷取儲存在資料庫(Database)中的資訊。可將像「我們的客戶住在哪?」轉換成Database可以理解的陳述句(Statement)
例如:SELECT DISTINCT city, state FROM customer;
現代的DBMS(資料庫管理系統)都支援SQL語法,但不同產品的支援情況有別。這也是為什麼,一樣是使用SQL卻可以有多種DBMS選擇。

二、SQL的特點

  1. 是程式設計語言(非Turing Complete)
  2. 容易學習,語法本身類似日常用語,貼近自然語言
  3. 是宣告式語言(Declarative Programming),最常被拿來跟命令式語言比較(Imperative),這點聽過就好
  4. 不看大小寫(Case Insensitive)
  5. 是互動式或嵌入式語言

三、SQL的三種陳述句

  1. 資料操作語言(DML)
    陳述式用於在Database中擷取、計算、插入、編輯和刪除。如SELECT, INSERT, UPDATE, DELETE, START, ALTER, DROP等。
  2. 資料定義語言(DDL)
    陳述式用於建立、修改和銷毀資料表等資料庫物件。
  3. 資料控制語言(DCL)
    陳述式用於授權某些使用者檢視、修改、刪除資料或資料庫物件。如GRANT陳述式分配權限和角色。

四、SQL、Database、DBMS的關係

DBMS(如MySQL)是用來管理Database(裝真正資料的容器)的。Datebase只是DBMS的一環,除此之外還包括其他任務,如實體儲存、安全、備份、錯誤處理等。SQL則是在DBMS下,方便用以管理Database中每個資料的語言。
https://ithelp.ithome.com.tw/upload/images/20250504/2017292847C49O9scT.png

References

Book: 學習SQL的15堂課/Chris Fehily
圖靈完備是什麼:https://en.wikipedia.org/wiki/Turing_completeness
MySQL介紹:https://en.wikipedia.org/wiki/MySQL
DBMS補充教材:https://www.bmc.com/blogs/dbms-database-management-systems/


圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言