Tutorial: como criar um banco de dados relacional no Banco de Dados SQL do Azure
Aplica-se a: Banco de Dados SQL do Azure
O Banco de Dados SQL do Azure é um DBaaS (banco de dados como serviço) no Microsoft Azure. Neste tutorial, você aprenderá a:
- Conectar-se ao banco de dados
- Criar tabelas com comandos T-SQL
- Carregar dados em massa com o BCP
- Consultar dados com comandos T-SQL
Observação
Para os fins deste tutorial, estamos usando o Banco de Dados SQL do Azure. Você também pode usar um banco de dados em pool em um pool elástico ou em uma Instância Gerenciada de SQL. Para conectividade com uma Instância Gerenciada de SQL, confirme esses inícios rápidos da Instância Gerenciada do SQL: Início Rápido: Configurar a VM do Azure para conectar-se a uma Instância Gerenciada de SQL do Azure e Início Rápido: Configurar uma conexão ponto a site a uma Instância Gerenciada de SQL do Azure do local.
Pré-requisitos
- Use o SQL Server Management Studio (versão mais recente) ou o Editor de consultas do portal do Azure para Banco de Dados SQL do Azure.
- Você também pode seguir este mesmo tutorial usando o Azure Data Studio (ADS).
- BCP e SQLCMD (versão mais recente).
- Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
- Se você ainda não tem um Banco de Dados SQL do Azure criado, visite o Início Rápido: criar um único banco de dados. Procure a opção de usar sua oferta para experimentar o Banco de Dados SQL do Azure gratuitamente (Preview).
Entre no Portal do Azure
Entre no portal do Azure.
Criar uma regra de firewall de IP no nível do servidor
O Banco de Dados SQL do Azure cria um firewall de IP no nível do servidor. Esse firewall impede que os aplicativos e ferramentas externos se conectem ao servidor e aos bancos de dados no servidor, a menos que uma regra de firewall permita seu IP por meio do firewall. Para habilitar a conectividade externa com seu banco de dados, primeiro adicione uma regra de firewall de IP ao seu endereço IP (ou intervalo de endereços IP). Siga estas etapas para criar uma regra de firewall de IP no nível do servidor.
Importante
O Banco de Dados SQL do Azure se comunica pela porta 1433. Se você estiver tentando se conectar a esse serviço de dentro de uma rede corporativa, o tráfego de saída pela porta 1433 poderá não ser permitido pelo firewall da sua rede. Se isso acontecer, você não poderá conectar-se ao banco de dados, a menos que o administrador abra a porta 1433.
Após a conclusão da implantação, selecione bancos de dados SQL no menu do portal do Azure ou pesquise e selecione bancos de dados SQL em qualquer página.
Selecione yourDatabase na página bancos de dados SQL. A página de visão geral do seu banco de dados é aberta, mostrando o nome do servidor totalmente qualificado (tal como
contosodatabaseserver01.database.windows.net
) e fornece opções para configurações adicionais.Copie esse nome totalmente qualificado do servidor para usá-lo para se conectar ao seu servidor e bancos de dados do SQL Server Management Studio.
Selecione Rede em Configurações. Escolha a guia Acesso Público e selecione Redes selecionadas em Acesso à rede pública para exibir a seção Regras de firewall.
Selecione Adicionar IPv4 do cliente na barra de ferramentas para adicionar seu endereço IP atual a uma nova regra de firewall de IP. Uma regra de firewall de IP pode abrir a porta 1433 para um único endereço IP ou um intervalo de endereços IP.
Clique em Salvar. Uma regra de firewall de IP no nível do servidor é criada para o endereço IP atual que abre a porta 1433 no servidor.
Selecione OK e, em seguida, feche a página Configurações do Firewall.
Agora seu endereço IP pode passar pelo firewall de IP. Agora, é possível se conectar ao seu banco de dados usando o SQL Server Management Studio ou outra ferramenta de sua escolha. Use a conta do administrador do servidor criada anteriormente.
Importante
Por padrão, o acesso por meio do firewall de IP do Banco de Dados SQL é habilitado para todos os serviços do Azure. Selecione DESLIGAR nessa página para desabilitar todos os serviços do Azure.
Conectar-se ao banco de dados
Os bancos de dados SQL do Azure existem em servidores SQL lógicos. Pode se conectar ao master
do SQL Server lógico usando um logon e, em seguida, conectar ao seu banco de dados. Ou, usando um usuário contido, você pode se conectar diretamente ao seu banco de dados SQL do Azure.
Use o SQL Server Management Studio para se conectar ao seu banco de dados SQL do Azure.
Abra o SQL Server Management Studio.
Na caixa de diálogo Conectar ao Servidor, insira as informações a seguir. Deixe outras opções como o padrão.
Configuração Valor sugerido Descrição Tipo de servidor Mecanismo de banco de dados Esse valor é necessário. Nome do servidor O nome totalmente qualificado do servidor lógico do Banco de Dados SQL do Azure Por exemplo, your_logical_azure_sql_server.database.windows.net
.Autenticação Autenticação do SQL Server Use a autenticação do servidor SQL para inserir um nome de usuário e uma senha. autenticação do Microsoft Entra Para se conectar usando o Microsoft Entra ID, se você for o administrador do servidor Microsoft Entra, escolha Microsoft Entra MFA. Para obter mais informações, consulte Configurar e gerenciar a autenticação do Microsoft Entra com o SQL do Azure. Logon A conta do administrador do servidor Se estiver usando a Autenticação do SQL Server, a conta que você especificou ao criar o servidor. Senha A senha para sua conta do administrador do servidor Se estiver usando a Autenticação do SQL Server, a senha que você especificou ao criar o servidor. Selecione Opções na caixa de diálogo Conectar ao servidor. Na seção Conectar ao banco de dados, digite yourDatabase para conectar-se a este banco de dados.
Selecione Conectar. A janela Pesquisador de Objetos abre no SSMS.
No Pesquisador de Objetos, expanda Bancos de Dados e expanda yourDatabase para exibir os objetos no banco de dados de exemplo.
No Pesquisador de Objetos, clique com o botão direito do mouse em yourDatabase e selecione Nova Consulta. Uma janela de consulta em branco conectada ao seu banco de dados é aberta.
Criar tabelas no banco de dados
Crie quatro tabelas que modelam um sistema de gerenciamento de alunos para universidades, usando Transact-SQL:
Person
Course
Student
Credit
O diagrama a seguir mostra como essas tabelas estão relacionadas. Algumas dessas tabelas fazem referência a colunas em outras tabelas. Por exemplo, a tabela Student
faz referência à coluna PersonId
da tabela Person
. Estude o diagrama para entender como as tabelas neste tutorial estão relacionadas umas com as outras. Para obter uma visão detalhada de como criar tabelas de banco de dados normalizadas efetivas, consulte Criando um banco de dados normalizado. Para obter informações sobre como escolher tipos de dados, consulte Tipos de dados. Por padrão, as tabelas são criadas no esquema dbo
padrão, o que significa que o nome de duas partes de uma tabela será dbo.Person
, por exemplo.
Observação
Você também pode usar o designer de tabela no SQL Server Management Studio para criar e projetar suas tabelas.
Na janela de consultas, execute a consulta T-SQLa seguir para criar quatro tabelas em seu banco de dados:
-- Create Person table CREATE TABLE Person ( PersonId INT IDENTITY PRIMARY KEY, FirstName NVARCHAR(128) NOT NULL, MiddelInitial NVARCHAR(10), LastName NVARCHAR(128) NOT NULL, DateOfBirth DATE NOT NULL ) -- Create Student table CREATE TABLE Student ( StudentId INT IDENTITY PRIMARY KEY, PersonId INT REFERENCES Person (PersonId), Email NVARCHAR(256) ) -- Create Course table CREATE TABLE Course ( CourseId INT IDENTITY PRIMARY KEY, Name NVARCHAR(50) NOT NULL, Teacher NVARCHAR(256) NOT NULL ) -- Create Credit table CREATE TABLE Credit ( StudentId INT REFERENCES Student (StudentId), CourseId INT REFERENCES Course (CourseId), Grade DECIMAL(5,2) CHECK (Grade <= 100.00), Attempt TINYINT, CONSTRAINT [UQ_studentgrades] UNIQUE CLUSTERED ( StudentId, CourseId, Grade, Attempt ) )
Expanda o nó Tabelas em yourDatabase no Pesquisador de Objetos para ver as quatro novas tabelas que você criou.
Carregar dados nas tabelas
Crie uma pasta chamada sampleData na pasta Downloads da estação de trabalho local para armazenar os dados de exemplo de seu banco de dados. Por exemplo,
c:\Users\<your user name>\Downloads
.Clique com o botão direito do mouse nos seguintes links e salve-os na pasta sampleData.
Abra uma nova janela de prompt de comando do Windows e navegue até a pasta sampleData. Por exemplo,
cd c:\Users\<your user name>\Downloads
.Execute os comandos
bcp
a seguir para inserir dados de exemplo nas tabelas, substituindo os valores de server, database, user e password pelos valores do seu ambiente.bcp Course in SampleCourseData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t "," bcp Person in SamplePersonData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t "," bcp Student in SampleStudentData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t "," bcp Credit in SampleCreditData -S <server>.database.windows.net -d <database> -U <user> -P <password> -q -c -t ","
Agora, você carregou dados de exemplo nas tabelas que criou anteriormente.
Consultar dados
Execute as seguintes consultas T-SQL para recuperar as informações das tabelas do banco de dados.
Essa primeira consulta une todas as quatro tabelas para localizar os alunos ensinados por "Dominick Pope" com nota superior a 75%. Em uma janela de consulta, execute a seguinte consulta T-SQL:
-- Find the students taught by Dominick Pope who have a grade higher than 75%
SELECT person.FirstName, person.LastName, course.Name, credit.Grade
FROM Person AS person
INNER JOIN Student AS student ON person.PersonId = student.PersonId
INNER JOIN Credit AS credit ON student.StudentId = credit.StudentId
INNER JOIN Course AS course ON credit.CourseId = course.courseId
WHERE course.Teacher = 'Dominick Pope'
AND Grade > 75;
Essa consulta une todas as quatro tabelas e localiza os cursos em que "Noe Coleman" já se registrou. Em uma janela de consulta, execute a seguinte consulta T-SQL:
-- Find all the courses in which Noe Coleman has ever enrolled
SELECT course.Name, course.Teacher, credit.Grade
FROM Course AS course
INNER JOIN Credit AS credit ON credit.CourseId = course.CourseId
INNER JOIN Student AS student ON student.StudentId = credit.StudentId
INNER JOIN Person AS person ON person.PersonId = student.PersonId
WHERE person.FirstName = 'Noe'
AND person.LastName = 'Coleman';
Dica
Para saber mais sobre como escrever consultas SQL, visite o Tutorial: Escrever instruções Transact-SQL.
Conteúdo relacionado
- Tutorial: Criar um banco de dados relacional no Banco de Dados SQL do Azure usando o Azure Data Studio(ADS)
- Experimente o Banco de Dados SQL do Azure gratuitamente (versão prévia)
- Quais são as Novidades no Banco de Dados SQL do Azure?
- Configurar e gerenciar a referência de conteúdo — Banco de Dados SQL do Azure
- Planejar e gerenciar custos do Banco de Dados SQL do Azure
Dica
Tudo pronto para começar a desenvolver um aplicativo .NET? Este módulo gratuito do Learn mostra como Desenvolver e configurar um aplicativo ASP.NET que consulta um Banco de Dados SQL do Azure, incluindo a criação de um banco de dados simples.
Próxima etapa
Avance para o próximo tutorial para saber mais sobre como criar um banco de dados usando Visual Studio e C#.