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

閱讀時間約 1 分鐘

※ 資料庫基本概念與操作

目標:

  1. 瞭解資料庫的概念和為什麼需要資料庫
  2. 瞭解SQL的概念與進行增刪改查操作
  3. 能夠自行安裝及搭建MySQL資料庫
  4. 能夠使用MySQL Workbench連線到MySQL資料庫並進行基本操作

※ 工程中的應用

目標:

  1. 能夠根據業務邏輯需求設計Schema
  2. 能夠從Express進行MySQL資料庫操作
  3. 能夠搭配TypeORM進行操作

※ 環境設置

  1. 安裝Node.JS–查看目前版本
node -v
  1. 文字編輯器:Visual Studio Code、Intelij IDEA、Webstrom、Vim

※ 基本概念

● 為什麼需要資料庫?

資料庫的主要目的是提供一個持久化且高效的方法來保存和管理資料。

● 沒有資料庫會如何?

沒有資料庫的情況下,資料管理會變得非常低效且容易出現問題。例如:資料散亂、資料不一致、查詢困難…等。

● 資料庫有什麼好處?

  1. 資料持久化:資料庫可以長期保存資料,避免資料丟失,還可以進行定期備份,確保資料的安全性。
  2. 資料一致性:資料庫使用事務(transactions)確保資料的一致性和完整性,避免資料重複或錯誤。
  3. 高效查詢:資料庫提供了高效的查詢和檢索功能,能夠快速找到所需的資料。
  4. 安全性:資料庫可以設置不同層級的權限和安全措施,確保只有授權用戶才能訪問和修改特定資料。
  5. 多用戶支持:資料庫的鎖機制(locking mechanisms)可以防止多用戶同時修改資料時出現衝突,適合團隊合作。


    全端網頁開發專業知識分享
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    ※ 整個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
    ※ 把record加到table有兩種方式: VALUES • SELECT ※ 語法 INSERT INTO VALUES 語法: Record 代表一組值的集合,每個值對應到表格中的一個欄位(column)。 INSERT INTO 語法用來指定要插入資料的表格。 需要提供一個
    ※ 整個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
    ※ 把record加到table有兩種方式: VALUES • SELECT ※ 語法 INSERT INTO VALUES 語法: Record 代表一組值的集合,每個值對應到表格中的一個欄位(column)。 INSERT INTO 語法用來指定要插入資料的表格。 需要提供一個
    你可能也想看
    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 的核心庫非