Utilizando o SQL Server e o SQL Operations Studio no macOS
No seguinte artigo, o autor mostra como utilizar o SQL Server e o SQL Operations Studio no sistema operacional da Apple, macOS.
Introdução
Recentemente a Microsoft anunciou o SQL↳SQL64 conteúdosSQL Server – Como evitar SQL Injection?Data · mai 2019Azure SQL DB Managed InstanceData · abr 2019SQL Server – Como evitar SQL Injection? Pare de utilizar Query Dinâmica como EXEC(@Query)Data · abr 2019Ver tudo em Data → Server para Linux↳Linux34 conteúdosKali Linux em um Servidor VPS: como, quando e por que usar?DevSecOps · dez 2024Construindo um Windows Service ou Linux Daemon com Worker Service & .NET Core – Parte 2Dev (Back & Front) · jul 2020Criando uma WebApi utilizando .NET, Linux e VSCodeDev (Back & Front) · ago 2019Ver tudo em DevSecOps →, entretanto, para o macOS ainda não foi lançada nenhuma versão nativa.
Neste artigo, vamos aprender a solucionar esse problema de maneira bem simples, e de quebra, ainda vamos utilizar o SQL Operations Studio para gerenciar o nosso banco de dados.
Docker
Conforme mencionado na introdução, não existe versão nativa do SQL Server para macOS, então para que seja possível utilizarmos, precisaremos da ajuda de um container Docker. Falando rapidamente para quem ainda não conhece o Docker, ele é um sistema que permite “empacotar” uma aplicação ou até mesmo um ambiente todo dentro de um container, e a partir disso ele se torna portável para qualquer local que tenha o Docker instalado, e é aí que a mágica começa a acontecer.
Então primeiramente vamos fazer o download e instalar o Docker no macOS, acessando o link: https://docs.docker.com/docker-for-mac/install/. Após terminar todo o processo de instalação, ele deverá estar em execução, conforme figura abaixo:

Agora finalizamos o nosso primeiro passo.
Container Docker com o SQL Server
Nosso próximo passo será baixar o container Docker com a imagem do SQL Server, e para fazer isso vamos abrir o terminal do macOS e digitar o seguinte comando:
docker pull microsoft/mssql-server-linux:2017-latest
Feito isso, ele vai começar a baixar a imagem mais recente do SQL Server para Linux automaticamente (você também pode baixar uma versão especifica caso queira, para isso acesse o link: https://hub.docker.com/r/microsoft/mssql-server-linux/tags/ e veja as versões que se encontram disponíveis).
Assim que a imagem for completamente baixada, precisaremos configurar o SQL Server dentro do container Docker, e para isso, digitaremos o seguinte comando:
docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=SUA_SENHA_DE_SA' -p 1401:1433 --name sqlserver01 -d microsoft/mssql-server-linux:2017-latest
O comando acima determina que você aceite os termos de licença, defina sua senha de SA do banco, mapeie uma porta TCP do ambiente para uma porta TCP do container Docker, especifique um nome de fácil entendimento (se você não definir, ele vai gerar um aleatório) e por fim, a versão do SQL Server que se encontra dentro do container Docker.
Se tudo correu conforme o esperado, digitando o comando: docker ps –a, você deverá ver seu container da mesma maneira que na imagem abaixo:

SQL Operations Studio
O SQL Operations Studio, é uma ferramenta multi-plataforma que permite que você gerencie seu banco de dados de maneira simples e rápida. É uma excelente alternativa ao SQL Managenent Studio, também da Microsoft.
Então, primeiramente vamos fazer o download dele através do link: https://go.microsoft.com/fwlink/?linkid=872719, e instalá-lo.
Assim que terminar a instalação, nós vamos executá-lo e você verá uma tela igual a figura abaixo:

Agora vamos preencher os dados de acesso (os mesmos que configuramos anteriormente), e clicar em Connect para logarmos no nosso servidor, conforme a figura 4, a seguir:

Feito isso, vamos agora criar uma base de dados, algumas tabelas e inserir alguns registros conforme figura abaixo:

E para finalizar o artigo, vamos criar uma aplicação Console Application bem simples, conectando com o nosso servidor SQL Server para exibir alguns dados que acabamos de cadastrar utilizando o SQL Operations Studio. Vamos abrir o Visual Studio 2017, ou qualquer outra IDE que você utilize e vamos criar uma Console Application (File > New > Project > Console App (.NET↳.NET113 conteúdosNovidades do .NET 9 – o tipo genérico OrderedDictionaryDev (Back & Front) · dez 2024Novidades .NET 10: novas formas de uso do .NET CLIDev (Back & Front) · dez 2025Novidades do .NET 5: implementando um proxy reverso com YARP + ASP.NET 5Dev (Back & Front) · nov 2020Ver tudo em Dev (Back & Front) → Core) conforme a figura abaixo:

Dentro do nosso Método Main, vamos fazer uma conexão e exibir os dados cadastrados anteriormente, utilizando o código abaixo (comentários no próprio código para melhor entendimento):
using System;
using System.Data.SqlClient;
namespace RockDbConsole
{
class Program
{
private static void Main(string[] args)
{
//String de Conexão
const string connectionString = "Server=localhost,1401;Initial Catalog=RockDb;Persist Security Info=False;User ID=seu_usuario;Password=sua_senha; MultipleActiveResultSets=True";
using (var conn= new SqlConnection(connectionString))
{
//Instrução SQL
var command = new SqlCommand("SELECT Nome FROM Artista", conn);
//Abrindo a conexão
conn.Open();
//Executando a instrução SQL
var reader = command.ExecuteReader();
//Verificação pra ver se existem registros
if (!reader.HasRows) return;
//Exibe todos os registros
while (reader.Read())
{
Console.WriteLine(reader[0]);
}
}
}
}
}
Espero que tenham gostado do artigo e até a próxima, pessoal!
Obrigado.






