Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:Banco de Dados SQL do Azure
Este artigo ajuda os desenvolvedores de C e C++ a se conectarem ao Banco de Dados SQL do Azure.
Pré-requisitos
Para concluir as etapas neste guia, você precisa do seguinte:
- Uma conta ativa do Azure. Se não tiver uma, pode inscrever-se numa Avaliação Gratuita do Azure.
- Visual Studio. Você deve instalar os componentes de linguagem C++ para criar e executar este exemplo.
- Desenvolvimento no Linux do Visual Studio. Se você estiver desenvolvendo no Linux, você também deve instalar a extensão Linux do Visual Studio.
Tecnologias de acesso a dados: ODBC e OLE DB
Atualmente, há duas maneiras de se conectar ao Banco de Dados SQL do Azure: ODBC (Open Database Connectivity) e OLE DB (banco de dados de Vinculação e Incorporação de Objetos). Nos últimos anos, a Microsoft alinhou-se com o ODBC para acesso a dados relacionais nativos. ODBC é muito mais rápido do que OLE DB. A única ressalva aqui é que o ODBC usa uma API antiga no estilo C.
Criar a sua Base de Dados SQL do Azure
Consulte a página de introdução para saber como criar um banco de dados de exemplo.
Obter a cadeia de ligação
Depois que o Banco de Dados SQL do Azure tiver sido provisionado, você precisará executar as etapas a seguir para determinar as informações de conexão e adicionar o IP do cliente para acesso ao firewall.
No portal do Azure, vá para suas cadeias de conexão do Banco de Dados SQL do Azure usando a seção Mostrar cadeias de conexão de banco de dados listadas como parte da seção Visão geral do seu banco de dados:
Selecione a guia ODBC.
Copie o conteúdo da cadeia de caracteres ODBC (Inclui Node.js) [autenticação SQL]. Usamos essa cadeia de caracteres posteriormente para nos conectarmos a partir de nosso interpretador de linha de comando ODBC C++. Essa cadeia de caracteres fornece detalhes como o driver, o servidor e outros parâmetros de conexão de banco de dados.
Adicione o seu IP à firewall
- Vá para o servidor lógico do Banco de Dados SQL do Azure. Selecione o link para Nome do servidor na página Visão geral do seu banco de dados SQL ou navegue até ele por meio da pesquisa do portal do Azure.
- Em Segurança, selecione Rede.
- Na guia Acesso público , selecione Redes selecionadas , se ainda não tiver sido selecionada.
- Adicione o IP do seu cliente ao firewall usando estas etapas para garantir que possamos estabelecer uma conexão bem-sucedida. Selecione Adicionar o endereço IPv4 do cliente ou adicionar uma regra de firewall.
Neste ponto, você configurou o Banco de Dados SQL do Azure e está pronto para se conectar a partir do código C++ da estação de trabalho.
Sugestão
Adicionar o IP da estação de trabalho do seu cliente ao firewall da rede pública é aceitável para um laboratório temporário ou configuração de aprendizagem, mas para uma solução empresarial ou projeto de longa duração, siga estas práticas recomendadas de segurança:
- Defina Permitir que os serviços e recursos do Azure acessem este servidor como DESATIVADO no nível do servidor.
- Use os pontos de extremidade do Serviço VNet e as Regras de Firewall da VNet.
- Use o Link Privado.
Conectar-se a partir de um aplicativo Windows C/C++
Você pode se conectar facilmente ao Banco de Dados SQL do Azure usando ODBC no Windows usando este exemplo que cria com o Visual Studio. O exemplo implementa um interpretador de linha de comando ODBC que pode ser usado para se conectar ao nosso Banco de Dados SQL do Azure. Este exemplo usa um arquivo DSN (Database source name file) como um argumento de linha de comando ou a cadeia de conexão detalhada que copiamos anteriormente do portal do Azure. Abra a página de propriedades deste projeto e cole a cadeia de conexão como um argumento de comando, conforme mostrado aqui:
Certifique-se de fornecer os detalhes de autenticação corretos para seu banco de dados como parte dessa cadeia de conexão de banco de dados.
Inicie o aplicativo para criá-lo. Você verá a janela a seguir validando uma conexão bem-sucedida. Você pode até mesmo executar alguns comandos SQL básicos, como CREATE TABLE validar a conectividade do banco de dados:
Como alternativa, você pode criar um arquivo DSN usando o assistente que é iniciado quando nenhum argumento de comando é fornecido. Recomendamos que você tente esta opção também. Você pode usar este arquivo DSN para automação e proteção de suas configurações de autenticação:
Parabéns! Agora você se conectou com êxito ao SQL do Azure usando C++ e ODBC no Windows. Você pode continuar lendo para fazer o mesmo para a plataforma Linux também.
Conectar-se a partir de um aplicativo Linux C/C++
Você pode desenvolver aplicativos Linux C++ no Visual Studio. Para saber mais, consulte o seguinte blog: Visual C++ for Linux Development.
Para construir para Linux, você precisa de uma máquina remota onde sua distro Linux está sendo executada. Se você não tiver um disponível, poderá configurá-lo rapidamente usando máquinas virtuais do Azure Linux e uma variedade de métodos de implantação.
Este guia assume que você tem uma distribuição Linux Ubuntu 16.04 configurada. As etapas também se aplicam ao Ubuntu 15.10, Red Hat 6 e Red Hat 7.
As etapas a seguir instalam as bibliotecas necessárias para SQL e ODBC para sua distro:
sudo su
sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/mssql-ubuntu-test/ xenial main" > /etc/apt/sources.list.d/mssqlpreview.list'
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
apt-get update
apt-get install msodbcsql
apt-get install unixodbc-dev-utf16 #this step is optional but recommended*
Inicie o Visual Studio. Em Ferramentas ->Opções ->Gestor de Conexões Multiplataforma, adicione uma conexão à sua máquina Linux:
Depois que a conexão sobre SSH for estabelecida, crie um modelo de projeto vazio (Linux):
Em seguida, você pode adicionar um novo arquivo de origem C e substituí-lo por esse conteúdo. Usando as APIs SQLAllocHandleODBC , SQLSetConnectAttre SQLDriverConnect, você deve ser capaz de inicializar e estabelecer uma conexão com seu banco de dados.
Como no exemplo de ODBC do Windows, precisas substituir a chamada SQLDriverConnect pelos detalhes dos parâmetros da cadeia de conexão do banco de dados copiados do portal do Azure anteriormente.
retcode = SQLDriverConnect(
hdbc, NULL, "Driver=ODBC Driver 13 for SQL"
"Server;Server=<yourserver>;Uid=<yourusername>;Pwd="
"<password>;database=<yourdatabase>",
SQL_NTS, outstr, sizeof(outstr), &outstrlen, SQL_DRIVER_NOPROMPT);
A última coisa a fazer antes de compilar é adicionar odbc como uma dependência de biblioteca:
Para iniciar seu aplicativo, abra o console Linux no menu Depurar :
Se sua conexão foi bem-sucedida, você deve ver o nome do banco de dados atual impresso no console do Linux:
Parabéns! Você concluiu o guia com êxito e agora pode se conectar ao seu Banco de Dados SQL do Azure a partir de C++ em plataformas Windows e Linux.
Obtenha a solução completa do tutorial C/C++
Você pode encontrar a GetStarted solução que contém todos os exemplos neste artigo no GitHub:
- Exemplo de ODBC C++ do Windows, Baixe o exemplo de ODBC do Windows C++ para se conectar ao Azure SQL
- Exemplo de ODBC C++ Linux, Baixe o exemplo de ODBC do Linux C++ para se conectar ao Azure SQL