在MAC上透過Docker與VS Code使用SQL Server

Evan
evan.fang
Published in
4 min readSep 22, 2018

以下說明如何在MAC上執行SQL Server,並以VS Code的mssql擴充工具測試連接。

語法可在GitHub上取得。

關於mssql的資訊,可以參考這份文件

mssql-server-linux的詳細用法,請參考Docker Hub上的說明

Step 1. 拉最新的mssql-server-linux映像

docker pull microsoft/mssql-server-linux:latest

Step 2. Run container

docker run — name demosqlserver \
-p 1433:1433 \
-e “ACCEPT_EULA=Y” \
-e “SA_PASSWORD=SqlDevOps2017” \
-e “MSSQL_PID=Developer” \
-d microsoft/mssql-server-linux:latest

執行 docker ps ,看到sql server容器已啟動

Step 3. 開啟VS Code,並安裝 mssql 擴充工具

Step 4. 建立一個sql檔案後,按下 F1 ,選擇 連接

  • 主機:localhost
  • DB:可先不填。
  • Authentication Type:SQL Login
  • User Name:sa
  • Password:SqlDevOps2017(docker run時給定的參數)
  • Save Password:Yes
  • Profile Name:隨意填。

連接成功的話,可以看到VS Code下方狀態列顯示相關資訊:

Step 5. Create DB

在sql檔中撰寫指令,新增 TutorialDB

USE masterGOIF NOT EXISTS (SELECT nameFROM sys.databasesWHERE name = N'TutorialDB')CREATE DATABASE [TutorialDB]GO

按下 F1 ,選擇執行SQL。

成功的話會顯示訊息如下:

Step 6. 新增一些資料到資料庫。

先切換使用中的DB到剛剛建立的資料庫

建立資料表:

CREATE TABLE dbo.Employees(EmployeesId        INT    NOT NULL   PRIMARY KEY,Name      [NVARCHAR](50)  NOT NULL,Location   [NVARCHAR](50)  NOT NULL);GO

Insert一些資料:

INSERT INTO Employees([EmployeesId],[Name],[Location])VALUES( 1, N'Jared', N'Australia'),( 2, N'Nikita', N'India'),( 3, N'Tom', N'Germany'),( 4, N'Jake', N'United States')GO

確認insert成功後,把資料select出來看看:

--

--