Tutorial: 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 banco de dados relacional como serviço (DBaaS) no Microsoft Azure. Neste tutorial, irá aprender a:

  • Ligue-se à base de dados
  • Criar tabelas com comandos T-SQL
  • Carregar dados em massa com o BCP
  • Consultar dados com comandos T-SQL

Nota

Para este 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 uma Instância Gerenciada SQL. Para conectividade com uma Instância Gerenciada SQL, consulte estes Inícios rápidos da Instância Gerenciada SQL: Guia de início rápido: Configurar a VM do Azure para se conectar a uma Instância Gerenciada SQL do Azure e Guia de início rápido: configurar uma conexão ponto a site com uma Instância Gerenciada SQL do Azure local.

Pré-requisitos

Inicie sessão no portal do Azure

Inicie sessão no portal do Azure.

Criar uma regra de firewall IP no nível do servidor

O Banco de Dados SQL do Azure cria um firewall IP no nível do servidor. Esse firewall impede que aplicativos e ferramentas externos se conectem ao servidor e a quaisquer bancos de dados no servidor, a menos que uma regra de firewall permita seu IP através do firewall. Para habilitar a conectividade externa ao seu banco de dados, você deve primeiro adicionar uma regra de firewall IP para seu endereço IP (ou intervalo de endereços IP). Siga estas etapas para criar uma regra de firewall IP no nível do servidor.

Importante

A Base de Dados SQL do Azure comunica através da porta 1433. Se estiver a tentar ligar-se a este serviço a partir de uma rede empresarial, o tráfego de saída através da porta 1433 poderá não ser permitido pela firewall da rede. Em caso afirmativo, você não poderá se conectar ao banco de dados, a menos que o administrador abra a porta 1433.

  1. Após a conclusão da implantação, selecione bancos de dados SQL no menu do portal do Azure ou procure e selecione bancos de dados SQL em qualquer página.

  2. 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 (como contosodatabaseserver01.database.windows.net) e fornece opções para configuração adicional.

    Screenshot of the Azure portal, database overview page with the server name highlighted.

  3. Copie esse nome de servidor totalmente qualificado para uso para se conectar ao servidor e aos bancos de dados do SQL Server Management Studio.

  4. Selecione Rede em Configurações. Escolha a guia Acesso público e, em seguida, selecione Redes selecionadas em Acesso à rede pública para exibir a seção Regras de firewall.

    Screenshot of the Azure portal, networking page, showing where to set the server-level IP firewall rule.

  5. Selecione Adicionar seu cliente IPv4 na barra de ferramentas para adicionar seu endereço IP atual a uma nova regra de firewall IP. Uma regra de firewall IP pode abrir a porta 1433 para um único endereço IP ou um intervalo de endereços IP.

  6. Selecione Guardar. Uma regra de firewall IP no nível do servidor é criada para o seu endereço IP atual abrindo a porta 1433 no servidor.

  7. Selecione OK e feche a página Configurações do firewall .

O seu endereço IP pode agora passar através da firewall IP. Agora você pode se conectar ao seu banco de dados usando o SQL Server Management Studio ou outra ferramenta de sua escolha. Certifique-se de usar a conta de administrador do servidor que você criou anteriormente.

Importante

Por padrão, o acesso por meio do firewall IP do Banco de Dados SQL está habilitado para todos os serviços do Azure. Selecione DESATIVADO nesta página para desabilitar todos os serviços do Azure.

Ligue-se à base de dados

Os bancos de dados SQL do Azure existem dentro de servidores SQL lógicos. Pode se conectar ao servidor master SQL lógico usando um logon e, em seguida, conectar-se 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.

  1. Abra o SQL Server Management Studio.

  2. Na caixa de diálogo Conectar ao Servidor , insira as seguintes informações. Deixe outras opções como padrão.

    Cenário Valor sugerido Descrição
    Tipo de servidor Motor da Base de Dados Este valor é obrigatório.
    Nome do servidor O nome do servidor lógico do Banco de Dados SQL do Azure totalmente qualificado Por exemplo, your_logical_azure_sql_server.database.windows.net.
    Autenticação Autenticação do SQL Server Use a Autenticação do SQL Server 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, veja Configurar e gerir a autenticação do Microsoft Entra com o SQL do Azure.
    Início de sessão A conta de administrador do servidor Se estiver usando a Autenticação do SQL Server, a conta que você especificou quando criou o servidor.
    Palavra-passe A palavra-passe da sua conta de administrador do servidor Se estiver usando a Autenticação do SQL Server, a senha que você especificou quando criou o servidor.

    Screenshot of the connect to an Azure SQL Database logical server server dialog box in SQL Server Management Studio (SSMS).

  3. Selecione Opções na caixa de diálogo Conectar ao servidor. Na seção Conectar ao banco de dados, insira yourDatabase para se conectar a esse banco de dados.

    Screenshot of the options tab of the connect to server dialog box in SQL Server Management Studio (SSMS).

  4. Selecione Ligar. A janela do Pesquisador de Objetos é aberta no SSMS.

  5. No Pesquisador de Objetos, expanda Bancos de Dados e, em seguida, expanda yourDatabase para exibir os objetos no banco de dados de exemplo.

    Screenshot of SQL Server Management Studio (SSMS) showing database objects in object explorer.

  6. No Pesquisador de Objetos, clique com o botão direito do mouse em yourDatabase e selecione Nova Consulta. É aberta uma janela de consulta em branco que está ligada à sua base de dados.

Criar tabelas na sua base de dados

Crie quatro tabelas que modelam um sistema de gerenciamento de alunos para universidades usando o Transact-SQL:

  • Person
  • Course
  • Student
  • Credit

O diagrama seguinte mostra como estas tabelas estão relacionadas entre si. Algumas destas tabelas referenciam colunas noutras tabelas. Por exemplo, a Student tabela faz referência à PersonId coluna da Person tabela. Estude o diagrama para compreender a forma como as tabelas neste tutorial estão relacionadas entre si. Para obter uma visão detalhada de como criar tabelas de banco de dados normalizadas eficazes, consulte Projetando um banco de dados normalizado. Para obter informações sobre como selecionar tipos de dados, veja Tipos de dados. Por padrão, as tabelas são criadas no esquema padrão dbo , o que significa que o nome de duas partes de uma tabela será dbo.Person, por exemplo.

Nota

Também pode utilizar o estruturador de tabelas no SQL Server Management Studio para criar e estruturar as suas tabelas.

Screenshot of the table designer in SQL Server Management Studio (SSMS) showing the table relationships.

  1. Na janela de consulta, execute a seguinte consulta T-SQL 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
        )
    )
    

    Screenshot from SSMS showing the create tables script has been successfully executed.

  2. Expanda o nó Tabelas em yourDatabase no Pesquisador de Objetos para ver as quatro novas tabelas que você criou.

Carregar dados para as tabelas

  1. Crie uma pasta chamada sampleData na pasta Downloads da estação de trabalho local para armazenar dados de exemplo para o banco de dados. Por exemplo, c:\Users\<your user name>\Downloads.

  2. Clique com o botão direito do mouse nos links a seguir e salve-os na pasta sampleData .

  3. 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.

  4. Execute os comandos a seguir bcp para inserir dados de exemplo nas tabelas substituindo os valores para servidor, banco de dados, usuário e senha pelos valores para 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 ","
    

Carregou dados de exemplo para as tabelas que criou anteriormente.

Consultar os dados

Execute as seguintes consultas T-SQL para recuperar informações das tabelas de banco de dados.

Esta primeira consulta junta as quatro tabelas para encontrar os alunos ensinados por 'Dominick Pope' que têm uma 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;

Esta consulta junta as quatro tabelas e encontra os cursos em que 'Noe Coleman' já se inscreveu. 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';

Gorjeta

Para saber mais sobre como escrever consultas SQL, visite Tutorial: Escrever instruções Transact-SQL.

Gorjeta

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óximo passo

Avance para o tutorial seguinte para aprender a criar uma base de dados com o Visual Studio e C#.