Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como fazer o curso num Mac?

Sou iniciante em programação. Como faço esse curso num Mac? Porque não tem o SQL Server Express para Mac.

2 respostas

Olá Mubarak, tudo bem?

Realmente, no momento ainda não existe uma versão de SQL Server (talvez por ter um propósito mais voltado para servidores). O que posso indicar como solução são:

  • Utilizar Docker com uma imagem do Ubuntu (por exemplo) e SQL Server for Linux
  • Utilizar o Sqlite ou MySql.

Utilizar o Docker pode ser um problema caso não tenha experiência com ele (eu não me arrisco muito).

Como a ideia é utilizar o Sqlite ou MySql para aprendizado, precisamos adiantar alguns tópicos. Vou mostrar os passos com o MySql:

  • Primeiro de tudo, é necessário ter o ambiente configurado do MySql. Recomendo entender como funciona neste curso tem todas as informações necessárias sobre o ambiente
  • Quando pedir para inserir uma connection string no arquivo appSettings.json, pode seguir este modelo: Server=<myServerAddress>;Database=<myDataBase>;Uid=<myUsername>;Pwd=<myPassword>;
  • Instalar um pacote compatível do MySql. Via console do Packet Menager: Install-Package Pomelo.EntityFrameworkCore.MySql -Version 1.1.2 ou CLI do dotnet (terminal comum): dotnet add package Pomelo.EntityFrameworkCore.MySql --version 1.1.2
  • Por último, quando pedir para utilizar o método .UseSqlServer(), subtituir por .UseMySql()

Agora vamos a algumas explicações:

  • Na connection string tem alguns argumentos entre os sinais de maior e menor (<>) estes valores devem ser substituídos pelos valores correspondentes ao servidor, banco de dados, usuário e senha
  • Escolhi o MySql da Pomelo por ser um driver da comunidade, mas tem um que é mantido pela Oracle
  • Este link é onde pode encontrar outros padrões das connection strings para vários bancos de dados, caso queira escolher algum outro
  • Este link é a página do projeto do driver de MySql, caso queira consultar algumas informações (ou contribuir, porque não?)
  • E este outro link é a documentação do Entity onde fala sobre os outros provedores de bancos de dados, caso queira testar algum outro.

Ufa, ficou grande, mas é bom detalhar os passos. No fim das contas é mais fácil que parece.

Espero ter ajudado e bons estudos!

solução!

Oi Fabiano. Muito obrigado pela ajuda. Resolvi testar de tudo um pouco e achei a opção do Docker bem bacana de usar. Como o Mac não tem suporte ao Console do Package-Manager, estou usando a CLI do DotNet mesmo. O único problema é que, com as versões que baixei pelo modelo da aula, sempre tava dando problema pra encontrar os metadados do projeto. Então, refiz o projeto do zero e baixzei todos os pacotes na última versão estável. Deu certo. Agora tá funcionando redondo. Muito obrigado pelas informações que me apontaram um caminho até chegar na solução.