SQL Server 快速上手 (3) - 建立你的第一個關聯式資料庫

本篇以 SQL Server 2019 Express Edition 及 SQL Server Management Studio 18.9 為教學範例,透過SQL Server 匯入和匯出精靈 快速入門

概要

(圖源自ITpedia)

資料庫的應用落實在我們生活的任何角落,包含大家常用的社交軟體(IG,FB…)、每天聊天的通訊軟體(Line,Wechat…)、電商軟體(蝦皮、PChome、Momo)、醫療軟體等系統都有龐大的資料庫系統在運作中,本篇文章將帶著大家來建立出自己的第一個資料庫。

資料庫與資料表概述


在關聯式資料庫的架構中,一個資料庫(Database)內可以有許多張資料表(Table),可以用Excel或GoogleSheet來想,一個檔案就是一個資料庫,而裡面的工作表(Sheet)就是資料表。 而我們可以從中以許多不同的方式進行增查改刪(CRUD)或重建數據。

利用Excel建立你的資料庫思維


我們可以用Excel來簡略的認識資料庫,這邊來舉個情境: 因為COVID-19疫情蔓延,醫療院所紛紛設立了遠距門診提供病人視訊看診,我們來用Excel檔製作一個遠距門診的資料集合。

首先我們會需要新增一個Excel檔案,並且定義工作表(Sheet)要存放的資料,那我們簡單列出幾個項目,看診日期、掛號科別、時段、醫師、病人、身分證、手機

再來我們需要填入一些資料

在填入時可以發現,在都不調整直接輸入的情況下,輸入完手機後0會不見,原因是因為Excel把手機號碼當成是數字型態所以去除了0

我們需要從格式中把此欄位調整成文字,再輸入一次才會看到有0喔!

欄位的格式,也就是資料表中的資料型態,在設計資料庫時一定要注意。

透過匯入精靈匯入Excel


我們可以把一個Excel檔案視為一個資料庫(Database) 接下來一步一步教大家使用工具快速建立一個資料庫

Step1. 開啟SSMS連線資料庫

開啟後會需要輸入伺服器名稱與驗證,用上一篇工具與環境教學中的LocalDB路徑,並選擇Windows驗證(無須輸入帳密)按下連線即可登入

看到左邊的物件總管中有資料庫清單就是成功連線了。

Step2. 建立空白資料庫

對資料庫的圖示按右鍵,選擇[新增資料庫]

輸入資料庫名稱,既然我們的EXCEL檔是做遠距看診,名稱就訂為TeleClinic

按下確定後就新增完成啦! 可以按下資料庫左邊的 + 符號展開資料庫清單,可以看到我們的TeleClinic資料庫就是成功囉!

Step3. 匯入Excel建立資料表與資料

對資料庫按右鍵 > 工作 > 匯入資料

開啟後執行下一步

接下來很重要
資料來源請選擇 [Microsoft Excel] Excel檔案路徑 請尋找你儲存的Excel位置 並且確認Excel版本是否與你電腦上安裝的相同 (因新版Excel需要安裝ACE.OLED驅動程式,故範例為可直接使用的Excel 97-2003) 並確認 [第一個資料列有資料行名稱] 已勾選,再按Next

若大家有出現下面錯誤訊息就代表你的Excel版本選擇不對

可以把你的Excel檔案另存為 Excel 97-2003格式或是依據訊息安裝ACE.OLED程式

選擇目的地為 SQL Server Native Client 11.0 (即SQL Server) 選擇後畫面會出現伺服器名稱與驗證

理論上預設會帶出你登入的伺服器與資料庫,若沒有的話再自行輸入。 資料庫請選擇剛剛建立的空白資料庫 TeleClinic ,進行下一步

選擇 從一個多個資料表或檢視表複製資料(預設),進行下一步

可以看到我們剛剛的工作表遠距門診出現了

按下編輯對應,可以看到我們剛剛輸入的欄位

有趣的是可以看到看診日期的類型自動轉換為 datetime,其餘的為nvarchar (可以先粗淺的把它視為是文字),確認欄位無誤後按下確定,進行下一步

直接按下 [Finish]

按下 [Finish]

執行完成,可以看到訊息中顯示有4個資料列,就是我們Excel表中寫入的資料

開啟資料表


執行完成後,點擊TeleClinc資料庫旁邊的 + 符號 展開細項,在點擊資料表 旁邊的+符號 展開資料表,可以看到剛剛匯入的 遠距門診資料表 右鍵選擇 [選取前1000個資料列]

大功告成,可以看到我們順利的把Excel建立的工作表與資料匯入資料庫囉!

結語


本篇僅是讓初學者快速入門學習建立資料庫,對於資料表與欄位的命名方式(如不要使用中文)、主索引的建立以及欄位型態等會在後續文章中陸續說明,有興趣深入研究者也可用本文章中的關鍵字在Google搜尋其他作者的文章。

參考資料

https://en.itpedia.nl/2020/01/20/de-relationele-database-het-hart-van-saas/ https://blog.techbridge.cc/2020/02/09/sql-basic-tutorial/


留言板
歷史留言

標籤