Extensão do SQL Server para Visual Studio Code

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics

Este artigo mostra como usar a extensão mssql do Visual Studio Code para trabalhar com bancos de dados no SQL Server no Windows, macOS e Linux, bem como no Banco de Dados SQL do Azure, na Instância Gerenciada de SQL do Azure e no Azure Synapse Analytics. A extensão mssql para Visual Studio Code permite que você se conecte a um SQL Server, consulte com o Transact-SQL (T-SQL) e exiba os resultados.

Criar ou abrir um arquivo SQL

A extensão mssql habilita comandos MSSQL e o T-SQL IntelliSense no editor de códigos quando o modo de linguagem é definido como SQL.

  1. Selecione Arquivo>Novo Arquivo ou pressione Ctrl+N. O Visual Studio Code abre um novo arquivo de texto sem formatação por padrão.

  2. Selecione Texto Sem Formatação na barra de status inferior ou pressione Ctrl+K>M selecione SQL na lista suspensa idiomas.

    Captura de tela da seleção de linguagem do Visual Studio Code, modo de linguagem SQL.

    Observação

    Se esta for a primeira vez que você usou a extensão, ela instalará o serviço de ferramentas SQL em segundo plano.

Se você abrir um arquivo existente que tenha uma extensão de arquivo .sql, o modo de linguagem será definido automaticamente como SQL.

Conecte-se ao SQL Server

Siga estas etapas para criar um perfil de conexão e conectar-se a um SQL Server.

  1. Pressione Ctrl+Shift+P ou F1 para abrir a Paleta de comandos.

  2. Digite sql para exibir os comandos mssql ou digite sqlcon e, em seguida, selecione MS SQL: Conectar na lista suspensa.

    Captura de tela da paleta de comandos do Visual Studio Code, filtrada por comandos 'MS SQL'.

    Observação

    Um arquivo SQL, como o arquivo SQL vazio que você criou, deve ter o foco no editor de código antes que você possa executar os comandos mssql.

  3. Selecione o comando MS SQL: Gerenciar Perfis de Conexão.

  4. Em seguida, selecione Criar para criar um novo perfil de conexão para seu SQL Server.

  5. Siga os prompts para especificar as propriedades para o novo perfil de conexão. Depois de especificar cada valor, pressione Enter para continuar.

    Propriedade Connection Descrição
    Nome do servidor ou cadeia de conexão ADO Especifique o nome da instância do SQL Server. Use localhost para conectar-se a uma instância do SQL Server em seu computador local. Para conectar-se a um SQL Server remoto, insira o nome do SQL Server de destino ou seu endereço IP. Para conectar-se a um contêiner do SQL Server, especifique o endereço IP do computador host do contêiner. Se você precisar especificar uma porta, use uma vírgula para separá-la do nome. Por exemplo, para um servidor que escuta na porta 1401, insira <servername or IP>,1401.

    Por padrão, a cadeia de conexão usa a porta 1433. Uma instância padrão do SQL Server usa a 1433, a menos que essa opção seja modificada. Se a instância estiver escutando na 1433, você não precisará especificar a porta.
    Como alternativa, você pode inserir a cadeia de conexão ADO para seu banco de dados aqui.
    Nome do banco de dados (opcional) O banco de dados que você deseja usar. Para conectar-se ao banco de dados padrão, não especifique um nome de banco de dados aqui.
    Tipo de Autenticação Escolha Integrado ou Logon do SQL.
    Nome de usuário Se você tiver selecionado o Logon do SQL, insira o nome de um usuário com acesso a um banco de dados no servidor.
    Senha Digite a senha para o usuário especificado.
    Salvar Senha Pressione Enter para selecionar Sim e salvar a senha. Selecione Não para que a senha seja solicitada sempre que o perfil de conexão for usado.
    Nome do Perfil (opcional) Digite um nome para o perfil de conexão, como perfil do localhost.

    Depois de inserir todos os valores e selecionar Enter, o Visual Studio Code cria o perfil de conexão e conecta-se ao SQL Server.

    Dica

    Se a conexão falhar, tente diagnosticar o problema usando a mensagem de erro no painel Saída no Visual Studio Code. Para abrir o painel Saída, selecione Exibir>Saída. Também examine as recomendações de solução de problemas de conexão.

  6. Verifique sua conexão na barra de status inferior.

    Captura de tela do Visual Studio Code, Status da conexão.

Como alternativa às etapas anteriores, também é possível criar e editar perfis de conexão no arquivo Configurações do Usuário (settings.json). Para abrir o arquivo de configurações, selecione Arquivo>Preferências>Configurações. Para obter mais informações, confira Gerenciar perfis de conexão.

Criptografar o certificado do servidor e confiar nele

Começando com a extensão mssql para VS Code v1.17.0:

  • A propriedade Encrypt é habilitada (definida como True) por padrão para conexões do provedor MSSQL
  • O SQL Server deve ser configurado com um certificado TLS, assinado por uma autoridade de certificação raiz confiável

Além disso, se uma tentativa de conexão inicial falhar com a criptografia habilitada (padrão), a extensão mssql fornecerá um prompt de notificação com uma opção para tentar a conexão com o Certificado do Servidor de Confiança habilitado.

Você pode editar as propriedades Criptografar e Confiar no certificado do servidor no arquivo de configurações do usuário (settings.json). A melhor prática é dar suporte a uma conexão criptografada confiável com o servidor.

Captura de tela da GUI do Visual Studio Code, Notificação com prompt para Confiar no certificado do servidor.

Para os usuários que se conectam ao Banco de Dados SQL do Azure, nenhuma alteração nas conexões existentes e salvas é necessária. O Banco de Dados SQL do Azure dá suporte a conexões criptografadas e é configurado com certificados confiáveis.

Para os usuários que se conectam ao SQL Server local ou ao SQL Server em uma Máquina Virtual, se a opção Criptografar estiver definida como True, verifique se você tem um certificado de uma autoridade de certificação confiável (por exemplo, não um certificado autoassinado). Como alternativa, você pode optar por se conectar sem a criptografia (Criptografar definido como False) ou por confiar no certificado do servidor (Criptografar definido como True e Confiar no certificado do servidor definido como True).

Criar um banco de dados

  1. No novo arquivo SQL que você iniciou anteriormente, digite sql para exibir uma lista de snippets editáveis.

    Captura de tela do editor no Visual Studio Code, trechos de SQL.

  2. Selecione sqlCreateDatabase.

  3. No snippet, digite TutorialDB para substituir 'DatabaseName':

    -- Create a new database called 'TutorialDB'
    -- Connect to the 'master' database to run this snippet
    USE master
    GO
    IF NOT EXISTS (
       SELECT name
       FROM sys.databases
       WHERE name = N'TutorialDB'
    )
    CREATE DATABASE [TutorialDB]
    GO
    
  4. Pressione Ctrl+Shift+E para executar os comandos Transact-SQL. Exiba os resultados na janela de consulta.

    Captura de tela do Visual Studio Code, crie mensagens de banco de dados.

    Dica

    Você pode personalizar as teclas de atalho para os comandos mssql. Confira Personalizar atalhos.

Criar uma tabela

  1. Exclua o conteúdo da janela do editor de código.

  2. Pressione Ctrl+Shift+P ou F1 para abrir a Paleta de comandos.

  3. Digite sql para exibir os comandos mssql ou digite sqluse e, em seguida, selecione o comando MS SQL: Usar Banco de Dados.

  4. Selecione o novo banco de dados TutorialDB.

    Captura de tela do Visual Studio Code, escolhendo um banco de dados.

  5. No editor de códigos, digite sql para exibir os snippets, selecione sqlCreateTable e pressione Enter.

  6. No snippet, digite Employees para o nome da tabela.

  7. Pressione Tab para ir para o próximo campo e digite dbo para o nome do esquema.

  8. Substitua as definições de coluna pelas seguintes colunas:

    EmployeesId INT NOT NULL PRIMARY KEY,
    Name [NVARCHAR](50)  NOT NULL,
    Location [NVARCHAR](50)  NOT NULL
    
  9. Pressione Ctrl+Shift+E para criar a tabela.

Inserir e consultar

  1. Adicione as instruções a seguir para inserir quatro linhas na tabela Employees.

    -- Insert rows into table '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
    -- Query the total count of employees
    SELECT COUNT(*) as EmployeeCount FROM dbo.Employees;
    -- Query all employee information
    SELECT e.EmployeesId, e.Name, e.Location
    FROM dbo.Employees as e
    GO
    

    Enquanto você digita, o T-SQL IntelliSense ajuda a concluir as instruções:

    Captura de tela do Visual Studio Code, T-SQL IntelliSense.

    Dica

    A extensão MSSQL também tem comandos para ajudar a criar instruções INSERT e SELECT. Isso não foi usado no exemplo anterior.

  2. Pressione Ctrl+Shift+E para executar os comandos. Os dois conjuntos de resultados são exibidos na janela Resultados.

    Captura de tela do Visual Studio Code, o painel Resultados.

Exiba e salve o resultado

  1. Selecione Exibir>Layout do Editor>Inverter Layout para alternar para um layout de divisão vertical ou horizontal.

  2. Selecione os cabeçalhos Resultados e Mensagens para recolher e expandir os painéis.

    Captura de tela do Visual Studio Code, Alternar cabeçalhos.

    Dica

    Você pode personalizar o comportamento padrão da extensão mssql. Confira Personalizar opções de extensão.

  3. Selecione o ícone de maximizar grade na segunda grade de resultados para ampliar esses resultados.

    Captura de tela do Visual Studio Code, Maximizar grade.

    Observação

    O ícone de maximizar é exibido quando seu script T-SQL produz duas ou mais grades de resultado.

  4. Abra o menu de contexto de grade clicando com o botão direito do mouse na grade.

    Captura de tela do Visual Studio Code, menu de contexto.

  5. Selecione Selecionar Tudo.

  6. Abra o menu de contexto da grade novamente e selecione Salvar como JSON para salvar o resultado em um arquivo .json.

  7. Especifique um nome de arquivo para o arquivo JSON.

  8. Verifique se o arquivo JSON é salvo e aberto em Visual Studio Code.

    Captura de tela do editor no Visual Studio Code, Salvar como JSON.

Se você precisar salvar e executar scripts SQL posteriormente, para administração ou um projeto de desenvolvimento maior, salve os scripts com uma extensão .sql.