Express | Connect MySQL Database

>> 發文日期 : 2023/8/15

> 說明

完成了前後端API的溝通後,接下來就要進到資料庫層面了,這篇就要來分享Express將資料存在MySQL的方法。


> 如何連接MySQL

最重要的當然是要先起一個MySQL的資料庫,我習慣是在本機端用Docker開一個MySQL的資料庫,給他一個專屬的port,這部份就等到之後的分享再來寫怎麼弄出來吧。

Express官方在MySQL的連接上也已經有給出範例,不過我針對自己在學習的過程中使用的情境進行了一些修改,以下範例我就先省略整個API的部份,專注在如何建立連線,就先來看一下:

  • 1. 建立連線

    首先我們要先建立一個連線,這邊我們使用了createConnection這個function,並且傳入一個物件,裡面包含了host、user、password、database、port等等,一般會把這些資訊放在.env裡,畢竟這些資訊都是敏感資料,不適合放在程式碼裡,我自己的習慣是把建立連結的資訊開另一個檔案做管理,這樣就不用每次都要去.env裡找資料。

  • 2. 連線MySQL

    建立好連線的資訊後,當然是要先讓我們連線到資料庫內,你可以在這邊加上一個callback,當連線成功後,就會執行這個callback,這邊我們就先印出一個Connected!。

  • 3. 查詢資料

    這邊我們就來看一下如何查詢資料,首先我們要先使用query這個function,並且傳入三個參數,第一個參數是SQL語法,第二個參數是要查詢的資料,第三個參數是callback,當查詢成功後,就會執行這個callback,在裡面就是處裡一些資料判斷雨回傳的動作。

  • 4. 結束連線

    最後就是要結束連線,這邊我們使用了end這個function,當然你也可以使用destroy這個function,這兩個function的差別在於,end會結束連線,而destroy會結束連線並且清除連線資訊。