JS:資料庫設計與應用(二)

閱讀時間約 1 分鐘

※ SQL基本介紹

SQL(結構化查詢語言)是一種查詢語言(Query Language),用於對資料庫中的資料進行操作。透過SQL,我們可以執行以下操作:

  • 查詢資料
  • 更新資料
  • 刪除資料

※ SQL四個基本概念

  1. Table(表格):資料庫中的資料是以表格的形式儲存的。每個表格包含多個欄位和多筆資料。相同的資料會保存在一份類似表格的結構中。
  2. Column(欄位):表格中的每一列代表一個欄位。每個欄位都有一個名稱和資料類型,用來描述該欄位中的資料。相同類型的資料會放在相同的欄位中,例如一堆待辦事項。
  3. Row(列):表格中的每一行代表一筆資料。每一行包含了該表格所有欄位的資料。每一個待辦事項就稱作一個Row,也就是資料表裡面的一行。
  4. Constraint(約束)對欄位的一種限制,用於定義該欄位中的值所需遵守的規則。常用的約束包括:
  • Primary Key(主鍵):唯一標識表格中的每一行,不能有重複值,也不能為空。
  • Not Null(非空):確保欄位中的值不能為空。
  • Unique(唯一):確保欄位中的值是唯一的,不能有重複值。
  • Default(預設值):為欄位設定一個預設值,如果插入資料時沒有提供該欄位的值,則使用預設值。

※ 例子:一個有會員機制的TodoList系統

User Table

  • Table(表格)User–儲存會員。
  • Column(欄位):Id–每個user所對應的值(Primary Key)、name、email。
  • Row(列):每個Row代表一個使用者資料。

Todo Table

  • Table(表格)Todo–記錄所有待辦事項。
  • Column(欄位):user_id–每個待辦事項屬於哪個會員、title–每個待辦事項名稱、deadline–每個待辦事項完成時間。
  • Row(列):每個Row代表一個待辦事項。

※ 基本SQL指令

  • Create Database(創建資料庫)
CREATE DATABASE TodoList;
  • Create Table(創建資料表)
CREATE TABLE User (
id INT PRIMARY KEY,
name VARCHAR(255)
);
  • Insert(插入)
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);


  • Delete(刪除)
DELETE FROM table_name WHERE condition;
  • Update(更新)
UPDATE table_name 
SET column1 = value1, column2 = value2
WHERE condition;
  • Select(查詢)
SELECT column1, column2, ...
FROM table_name;
  • Select All(查詢所有)
SELECT * FROM Customers;


    全端網頁開發專業知識分享
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    ※ 資料庫基本概念與操作 目標: 瞭解資料庫的概念和為什麼需要資料庫 瞭解SQL的概念與進行增刪改查操作 能夠自行安裝及搭建MySQL資料庫 能夠使用MySQL Workbench連線到MySQL資料庫並進行基本操作 ※ 工程中的應用 目標: 能夠根據業務邏輯需求設計Schema
    ※ 整個SQL課程過程 *如何從資料庫拿資料開始: • SELECT :從資料庫拿資料。 • ORDER BY :排序SELECT的結果。 • JOIN :連結各個TABLE的 資訊,發揮關聯式資料庫的優勢。 • GROUP BY :對資料庫的資料做加總的AGGREGATE FUNCTIO
    ALTER TABLE: 這個命令是用來修改資料表的結構,例如新增、修改或刪除欄位。它針對的是資料表(table)本身的結構,而不是具體的記錄(record)。 INSERT 和 UPDATE: 這兩個命令是用來操作具體的記錄(record)。INSERT 用於新增記錄,而 UPDATE 用於修改
    ※ 功能: 刪除表格中的資料。 ※ 語法: DELETE ON DELETE CASCADE DELETE JOIN ※ DELETE • 語法 : DELETE FROM table_name WHERE condition FROM 後面接上表格的名字:這是想要刪除資料的表
    ※ 為什麼我們需要 Transaction? 當我們談到 Transaction(交易)時,指的是一組不可分割的 SQL 操作。這些操作結果只能成功或失敗,以確保資料庫的一致性和完整性。Transaction 是資料庫操作中的一個「邏輯單位」,包含多個操作步驟。如果其中任何一個步驟失敗,整個 Tr
    已經存在在table裡面的那些record做更新。 ※ 語法 UPDATE [LOW_PRIORITY] [IGNORE] table_name SET column_name1 = expr1, column_name2 = expr2, … [WHERE
    ※ 資料庫基本概念與操作 目標: 瞭解資料庫的概念和為什麼需要資料庫 瞭解SQL的概念與進行增刪改查操作 能夠自行安裝及搭建MySQL資料庫 能夠使用MySQL Workbench連線到MySQL資料庫並進行基本操作 ※ 工程中的應用 目標: 能夠根據業務邏輯需求設計Schema
    ※ 整個SQL課程過程 *如何從資料庫拿資料開始: • SELECT :從資料庫拿資料。 • ORDER BY :排序SELECT的結果。 • JOIN :連結各個TABLE的 資訊,發揮關聯式資料庫的優勢。 • GROUP BY :對資料庫的資料做加總的AGGREGATE FUNCTIO
    ALTER TABLE: 這個命令是用來修改資料表的結構,例如新增、修改或刪除欄位。它針對的是資料表(table)本身的結構,而不是具體的記錄(record)。 INSERT 和 UPDATE: 這兩個命令是用來操作具體的記錄(record)。INSERT 用於新增記錄,而 UPDATE 用於修改
    ※ 功能: 刪除表格中的資料。 ※ 語法: DELETE ON DELETE CASCADE DELETE JOIN ※ DELETE • 語法 : DELETE FROM table_name WHERE condition FROM 後面接上表格的名字:這是想要刪除資料的表
    ※ 為什麼我們需要 Transaction? 當我們談到 Transaction(交易)時,指的是一組不可分割的 SQL 操作。這些操作結果只能成功或失敗,以確保資料庫的一致性和完整性。Transaction 是資料庫操作中的一個「邏輯單位」,包含多個操作步驟。如果其中任何一個步驟失敗,整個 Tr
    已經存在在table裡面的那些record做更新。 ※ 語法 UPDATE [LOW_PRIORITY] [IGNORE] table_name SET column_name1 = expr1, column_name2 = expr2, … [WHERE
    你可能也想看
    Google News 追蹤
    Thumbnail
    這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
    Thumbnail
    11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
    Thumbnail
    Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
    誠然,財務數據能夠直觀反映一個企業過去的經營成效,但有時候單純的財務數字也可能產生完全相反的結論,誤導受眾。市場投資而言,還是應該通過分析和理解其背後的原因和趨勢來進行價值判斷。   比如說,JS環球生活可能就面臨這樣的“反差”。   從核心數據上看,2023年上半年,JS環球生活持續經營業
    Thumbnail
    提升(Hoisting) 指的是在創造環境階段時就把變數準備好,這時值還沒被賦予到變數上。此類型的概念可以使用執行環境的「創造階段」與「執行階段」來理解。
    Thumbnail
    Vue.js 基本介紹 Vue.js 是個漸進式 JavaScript 框架 (Progressive JavaScript Framework),用於建立用戶界面。被設計成逐步增強的框架,可輕鬆整合到現有項目中,或從頭構建新的應用程序。 Vue.js 的特點 1. 輕量級:Vue.js 的核心庫非
    Thumbnail
    這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
    Thumbnail
    11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
    Thumbnail
    Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
    誠然,財務數據能夠直觀反映一個企業過去的經營成效,但有時候單純的財務數字也可能產生完全相反的結論,誤導受眾。市場投資而言,還是應該通過分析和理解其背後的原因和趨勢來進行價值判斷。   比如說,JS環球生活可能就面臨這樣的“反差”。   從核心數據上看,2023年上半年,JS環球生活持續經營業
    Thumbnail
    提升(Hoisting) 指的是在創造環境階段時就把變數準備好,這時值還沒被賦予到變數上。此類型的概念可以使用執行環境的「創造階段」與「執行階段」來理解。
    Thumbnail
    Vue.js 基本介紹 Vue.js 是個漸進式 JavaScript 框架 (Progressive JavaScript Framework),用於建立用戶界面。被設計成逐步增強的框架,可輕鬆整合到現有項目中,或從頭構建新的應用程序。 Vue.js 的特點 1. 輕量級:Vue.js 的核心庫非