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

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;


avatar-img
奧莉薇走在成為後端工程師之路上
17會員
137內容數
全端網頁開發專業知識分享
留言
avatar-img
留言分享你的想法!
※ 場景: 即時聊天應用: 設計一個支持多房間功能的即時聊天平台,像 WhatsApp、LINE或Facebook Messenger,提供文字、語音、視訊聊天功能,方便管理群組聊天。 功能亮點:加入特別功能,例如可加入多房間功能、使用者名單、表情符號支持、文件分享或訊息已讀未讀狀態。 展示
※ 先建立基本的express後端服務: 1.建立新資料夾:Socket mkdir socket 2.進入資料夾:Socket cd ​bsocket 3. 安裝 Experss 到專案中 npm init -y //初始化專案,建立 package.json 檔 npm insta
※ 什麼是 Socket.io:一個基於傳統 WebSocket API 之上的框架。 ※ Socket.io常用功能: Custom Events:在 Socket.io 中,開發者可以創建自己的事件來處理特定的功能或需求。 Rooms:分組的功能。每個連接的用戶(或稱為 socket)可
※ 場景: 即時聊天應用: 設計一個支持多房間功能的即時聊天平台,像 WhatsApp、LINE或Facebook Messenger,提供文字、語音、視訊聊天功能,方便管理群組聊天。 功能亮點:加入特別功能,例如可加入多房間功能、使用者名單、表情符號支持、文件分享或訊息已讀未讀狀態。 展示
※ 先建立基本的express後端服務: 1.建立新資料夾:Socket mkdir socket 2.進入資料夾:Socket cd ​bsocket 3. 安裝 Experss 到專案中 npm init -y //初始化專案,建立 package.json 檔 npm insta
※ 什麼是 Socket.io:一個基於傳統 WebSocket API 之上的框架。 ※ Socket.io常用功能: Custom Events:在 Socket.io 中,開發者可以創建自己的事件來處理特定的功能或需求。 Rooms:分組的功能。每個連接的用戶(或稱為 socket)可