SQL Server - 使用Visual Studio Code创建和运行Transact-SQL脚本

本文展示了如何使用Visual Studio Code(VS Code)的mssql扩展来开发SQL Server数据库。

Visual Studio Code是一个用于Linux、macOS和Windows的图形化代码编辑器,支持扩展。VS Code的mssql扩展允许您连接到SQL服务器,使用Transact-SQL (T-SQL)查询,并查看结果。

安装 VS Code

  1. 如果您还没有安装VS Code,请下载并安装VS Code

  2. 启动VS Code

安装mssql扩展

以下步骤说明如何安装mssql扩展:

  1. CTRL+SHIFT+P (或 F1)打开VS Code中的命令面板。

  2. 选择Install Extension并输入mssql。

    提示
    对于macOS, CMD键相当于Linux和Windows上的CTRL键。

  3. 点击安装mssql

    vscode-extension

  4. mssql扩展 最多需要一分钟的安装时间。等待提示告诉您它已成功安装。

    vscode-install-success-notification

    请注意
    对于macOS,您必须安装OpenSSL。这是mssql扩展所使用的.Net Core的先决条件。按照.Net Core说明中的安装必备步骤。或者,您可以在macOS终端运行以下命令。

    1
    2
    3
    4
    brew update
    brew install openssl
    ln -s /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/
    ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib /usr/local/lib/

    请注意
    对于Windows 8.1、Windows Server 2012或更低版本,您必须下载并安装Windows 10 Universal C Runtime。下载并打开zip文件。然后运行安装程序(. msu文件)针对您当前的操作系统配置。

创建或打开SQL文件

当语言模式设置为SQL时,mssql扩展支持编辑器中的mssql命令和T-SQL智能感知。

  1. CTRL + N。Visual Studio Code默认打开一个新的纯文本文件。
  2. CTRL+K,M,将语言模式改为SQL
    vscode-language-mode
  3. 或者,使用.sql文件扩展名打开现有文件。语言模式为具有sql扩展名的文件自动SQL。

连接到SQL Server

下面的步骤展示了如何使用VS Code连接到SQL Server。

  1. 在VS Code中,按CTRL+SHIFT+P(或F1)打开命令面板。
  2. 输入sql以显示mssql命令。

    vscode-commands

  3. 选择MS SQL: Connect命令。您可以简单地键入sqlcon并按ENTER键。

  4. 选择Create Connection Profile。这将为SQL服务器实例创建一个连接概要文件。

  5. 按照提示指定新连接概要文件的连接属性。指定每个值之后,按ENTER键继续。

    下表描述连接概要属性。

设置 描述
服务器名称 SQL服务器实例名。对于本教程,使用localhost连接到机器上的本地SQL服务器实例。如果连接到远程SQL服务器,请输入目标SQL服务器机器的名称或其IP地址。如果需要为SQL Server实例指定端口,请使用逗号将其与名称分离。例如,对于运行在端口1401上的本地服务器,您将输入localhost,1401
(可选的)数据库名称 您想要使用的数据库。对于本教程,不要指定数据库并按ENTER键继续。
用户名 输入访问服务器上数据库的用户名。对于本教程,使用在SQL Server设置期间创建的默认SA帐户。
密码(SQL登录) 输入指定用户的密码
保存密码? 输入Yes以保存密码。否则,每次使用连接配置文件时都会提示输入No以输入密码
[可选的]为这个概要文件输入一个名称 连接概要名称。例如,您可以将概要文件命名为localhost profile

提示
您可以在用户设置文件(settings.json)中创建和编辑连接配置文件。通过在VS Code菜单中选择首选项和用户设置来打开设置文件。有关更多信息,请参见manage connection配置文件

  1. 按ESC键关闭通知创建和连接概要文件的info消息

    提示
    如果连接失败,首先尝试从VS Code的输出面板中的错误消息诊断问题(在视图菜单中选择Output)。然后检查连接故障排除建议。

  2. 验证您在状态栏中的连接

    vscode-connection-status

创建一个数据库

  1. 在编辑器中,键入sql以打开可编辑代码片段列表。

    vscode-sql-snippets

  2. 选择sqlCreateDatabase

  3. 在代码片段中,输入TutorialDB作为数据库名

    1
    2
    3
    4
    5
    6
    7
    8
    9
    USE master
    GO
    IF NOT EXISTS (
    SELECT name
    FROM sys.databases
    WHERE name = N'TutorialDB'
    )
    CREATE DATABASE [TutorialDB]
    GO
  4. CTRL+SHIFT+E执行Transact-SQL命令。在查询窗口中查看结果。

    vscode-create-database-messages

    提示
    您可以为mssql扩展命令定制快捷键绑定。看到自定义快捷键

创建表

  1. 删除编辑器窗口的内容。
  2. 按F1以显示命令面板。
  3. 在命令面板中键入sql命令来显示sql命令或键入sqluse(用于MS sql:Use Database命令)。
  4. 单击MS SQL:Use Database,并选择TutorialDB数据库。这将更改上一节中创建的新数据库的上下文。

    vscode-use-database

  5. 在编辑器中,键入sql以显示片段,然后选择sqlCreateTable并按enter键。

  6. 在代码片段中,为表名输入Employees
  7. Tab键,然后为模式名输入dbo

    请注意
    添加代码片段之后,您必须键入表和模式名称,而不需要将焦点从VS Code编辑器移开。

  8. Column1的列名更改为Name,而Column2更改为Location

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    -- 在模式`dbo`中创建一个名为`Employees`的新表
    -- 如果表已经存在,则删除它
    IF OBJECT_ID('dbo.Employees', 'U') IS NOT NULL
    DROP TABLE dbo.Employees
    GO
    -- 在指定的模式中创建表
    CREATE TABLE dbo.Employees
    (
    EmployeesId INT NOT NULL PRIMARY KEY, -- 主键列
    Name [NVARCHAR](50) NOT NULL,
    Location [NVARCHAR](50) NOT NULL
    );
    GO
  9. CTRL+SHIFT+E创建表

插入和查询

  1. 添加以下语句以向Employees表插入4行。然后选择所有的行。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    -- 在`Employees`表中插入行
    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
    -- 查询员工总数
    SELECT COUNT(*) as EmployeeCount FROM dbo.Employees;
    -- 查询所有员工信息
    SELECT e.EmployeesId, e.Name, e.Location
    FROM dbo.Employees as e
    GO

    提示
    在键入时,使用T-SQL智能感知的帮助
    vscode-intellisense

  2. CTRL+SHIFT+E执行命令。这两个结果集显示在结果窗口中。

    vscode-result-grid.png

查看并保存结果

  1. 视图菜单上,选择切换编辑器组布局切换到垂直或水平分割布局

    vscode-toggle-split

  2. 单击结果和消息面板标题折叠并展开面板

    vscode-toggle-messages-pannel

    提示
    您可以定制mssql扩展的默认行为。请参阅自定义扩展选项。

  3. 单击第二个结果网格上的maximize grid图标来放大

    vscode-maximize-grid.png

    请注意
    当T-SQL脚本具有两个或多个结果网格时,将显示最大化图标。

  4. 在网格上用鼠标右键打开网格上下文菜单

  5. 选择Select All

  6. 打开grid上下文菜单并选择Save as JSON将结果保存到.json文件中
  7. 为JSON文件指定文件名。对于本教程,输入employees.json
  8. 验证JSON文件是否保存并以VS Code打开

    vscode-save-as-json

下一个步骤

在真实的场景中,您可能会创建一个脚本,您需要保存并在以后运行它(用于管理或作为更大的开发项目的一部分)。在本例中,您可以使用.sql扩展名保存脚本。

如果您对T-SQL不熟悉,请参阅教程:编写Transact-SQL语句Transact-SQL引用(数据库引擎)

有关使用或贡献mssql扩展的更多信息,请参阅mssql扩展项目wiki

有关使用VS Code的更多信息,请参阅Visual Studio Code文档

Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2021 朝着牛逼的道路一路狂奔 All Rights Reserved.

访客数 : | 访问量 :