前端工程師該懂的後端技能大解密

 

前端工程師該懂的後端技能大解密

 

前端工程師都該懂的後端基本功都在本篇,不藏私通通告訴你!!

各位想當前端工程師們,我們就直接切入基礎的 MySQL 教學!本篇先來簡介一下資料庫 4 大基要語句,他們分別是定義資料庫的 DDL (Data Definition Language)、操作資料庫的 DML (Data Manipulation Language)、控制資料庫的 DQL (Data Control Language) 與查詢資料用的 DCL (Data Query Language)。簡介如下:

推薦閱讀:前端工程師的學習路線圖整理

因為在人力銀行網站搜尋前端工程師的職缺,會發現有些公司會把 MySQL 列為前端工程師的必備技能。通常 (非全部) 擁有 MySQL 技能的前端工程師獲得高薪的機會較大。多一項能力,調薪的籌碼就越大。

對於前端工程師來說,MySQL 是屬於後端工程師的技能。但是若前端工程師也略懂 MySQL 的話,無論是求職上會有莫大幫助。

 

資料庫定義語言 - DDL (Data Definition Language)

定義資料庫的結構,常見語句有 CREATE、DROP、ALTER。

DROP

丟棄或刪除資料庫。寫法如下:

刪除一個「已經確定存在」的資料庫:

DROP DATABASE 資料庫名稱;

範例:

DROP DATABASE xz;

刪除一個「不確定是否存在」的資料庫:

DROP DATABASE 資料庫名稱; 

範例一. 在不確定名為「xz」的資料庫是否存在的狀況下,刪除 xz 資料庫:

DROP DATABASE IF EXISTS xz;

0819-1.jpg

▲ 在命令提示字元使用 MySQL 的 DROP DATABASE 語法

CREATE

創建資料庫或表格。寫法為:

CREATE DATABASE 資料庫/表格名稱;

範例一、創建名為 "xz" 的資料庫:

CREATE DATABASE xz;

範例二、創建名為「FrontEndElements (網頁元素)」的表格,表格有兩個欄目,分別為「element(元素)」、「usage(用途)」;又令「element」的內容限制為 10 個字元、「usage(用途)」則為 32 字元,代碼如下所示:

CREATE TABLE FrontEndElements(`element` VARCHAR(10),`usage` VARCHAR(32));

註:MySQL 本身內建一些具有特定功能的保留字,這些保留字中包含「usage」,與我們欲建的欄目名稱同名,會令 MySQL 混淆導致無法建表 (如下圖)。

0819-2.jpg

▲ 在命令提示字元使用 MySQL 創建的欄目名稱「usage」與保留字重複,而導致無法建表。

為了區分,因此加了反引號,為「`usage`」。

其實 MySQL 的保留字很多,前端工程師不可能每個都記熟。所以寧可在每次創建表格時,都在欄目名稱的左右側加上反引號。如下圖所示:

0819-3.jpg

▲ 在命令提示字元使用 MySQL 創建名為「FrontEndElements (網頁元素)」的表格,表格有兩個欄目,分別為「element(元素)」、「usage(用途)」;又令「element」的內容限制為 10 個字元、「usage(用途)」則為 32 字元

資料庫操作語言 - DML (Data Manipulation Language)

INSERT

新增資料到資料表中。寫法如下:

INSERT INTO 資料表名稱 VALUE('值一','值二');

範例、今天要新增 4 個內容到上述的 "FrontEndElements" 表中,對應的欄目分別為'element'、'usage':

INSERT INTO FrontEndElements VALUE('HTML','管理網頁的架構');
INSERT INTO FrontEndElements VALUE('CSS','管理網頁的外貌');
INSERT INTO FrontEndElements VALUE('JavaScript','管理網頁的內容以及使用者的操作行為、互動');
INSERT INTO FrontEndElements VALUE('MySQL','資料庫');

0819-4.jpg

▲ 在命令提示字元使用 MySQL 創建 4 個內容,內容的值對應到兩個表格欄目「element(元素)」、「usage(用途)」。

下圖為從 MySQL 叫出表格「FrontEndElements」的所有內容。指令稍後在本文 DQL 段落會講解。

0819-5.jpg

▲ 在命令提示字元使用 MySQL 觀看 FrontEndElements 表中所有內容

UPDATE

更改資料到資料表中。寫法如下:

UPDATE 資料表名稱 SET 欄位名稱='更新後的內容' WHERE 條件敘述;

範例、今天將上述的表格中,'JavaScript' 的 'usage' 修改為 '管理網頁的互動與動態內容'。如下所示:

UPDATE FrontEndElements SET `usage`='管理網頁的互動與動態內容' WHERE element='JavaScript';

0819-6.jpg

▲ 在命令提示字元使用 MySQL 將「JavaScript」的 `usage`欄目中,內容改為 '管理網頁的互動與動態內容'。

DELETE

刪除資料表中的資料。寫法如下:

DELETE FROM 資料表名稱 WHERE 條件敘述;

範例、今天將上述的表格的 'SQL' 刪掉,寫法如下所示:

DELETE FROM FrontEndElements WHERE element='SQL';

0819-7.jpg

▲ 在命令提示字元使用 MySQL 將名稱為「MySQL」的 整欄刪除。

資料庫查詢語言 - DQL (Data Query Language)

查詢資料使用,不會對資料產生任何更動的語句。指令只有一種:

SELECT

撈出表中的資料,例如我們要撈出上述表格的所有內容,寫法如下:

SELECT * FROM  FrontEndElements;

0819-8.jpg

▲ 在命令提示字元使用 MySQL 觀看 FrontEndElements 表中所有內容

資料庫控制語言 - DCL (Data Control Language)

控制用戶權限,例如把某個電商網站的管理權、上架權等不同層級的權限,分派給不同的員工。

GRANT

授予權限

REVOKE

收回權限

上述的 MySQL 語句種類,前端工程師只須看得懂 DDL、DML 與 DQL 就好。下一篇文章會講述 MySQL 中文亂碼的解決方式。請想提升技能的前端工程師多多關注我們的知識庫!


相關文章:

Facebook 開源 Python 語言的安全與隱私工具 Pysa

人工智慧又寫歌了!這次是跟重金屬天團 Metallica 致敬

暴躁老人唱情歌、憂鬱阿嬤笑了!4個翻轉家庭的人工智慧 讓家更溫暖

人工智慧貓砂盆 - 因愛貓腎病過世 工程師研發預防性貓用醫療品

人工智慧失誤記(上)微軟錯置配圖讓女歌手氣炸

前端工程師CSS基礎課:定位元素

超猛特效!迪士尼人工智慧換臉技術達百萬畫素(上)

全球首屆元宇宙時裝周,複刻20年前的失敗?

全球首屆元宇宙時裝周, 遇到瓶頸 複刻20年前的失敗? 目錄 元宇宙時裝周參與盛況 叫好不叫座?新興技術的行銷瓶頸 由虛擬實境平台 Decentraland 所舉辦的「元宇宙時裝週」(Metaverse Fashion Week...