Banco de Dados - SQL Server

Criando primeiro DB com SAD (SQL Azure Database) – SQL Server 2008

Depois de nos cadastrarmos nos serviços da Azure e fazer nossas conexões no SAD, chegou a hora de criarmos o primeiro banco de dados e ver a interação entre a nuvem e uma aplicação cliente.

por Diego Nogare



Depois de nos cadastrarmos nos serviços da Azure (http://www.linhadecodigo.com.br/Artigo.aspx?id=2493) e fazer nossas conexões no SAD (http://www.linhadecodigo.com.br/Artigo.aspx?id=2518), chegou a hora de criarmos o primeiro banco de dados e ver a interação entre a nuvem e uma aplicação cliente.

Quando nos conectamos através do SSMS (SQL Server Management Studio) ao SAD, precisamos nos atentar à alguns detalhes por se tratar de uma versão CTP. Por exemplo, a forma de se conectar e em qual banco de dados será. Por padrão, quando nos conectamos ao SAD através do SSMS, fazemos a conexão à base Master, para exemplificar alguns detalhes, vou abrir uma instância do SSMS 2008 Express e me conectar ao banco de dados default do meu SAD, e após a conexão vou verificar todos os Databases criados lá no meu servidor na nuvem. Esta consulta pode ser acompanhada na Figura 1.

select master 1.png

Figura 1: Verificando os databases que temos na nuvem

Já que estou conectado na base de dados Master  (que é a única base de dados que tenho no momento), vou criar um novo Database pra exemplificar o restante do artigo. Vou utilizar uma sintaxe básica (create database dbLinhaDeCodigo) pra criar o banco (1) e vou conferir no serviço on-line do Azure (2), para assegurar que realmente está lá.  Confira a Figura 2, estes itens.

create table.png

Figura 2: Criação do banco de dados e verificação no serviço on-line do Azure.

Agora que já criamos uma nova base de dados no Azure, vamos ver os segredos para nos conectar à ela. Como já dito algumas vezes, estamos em uma versão CTP do Azure então pra realizar tarefas corriqueiras que fazemos de uma forma quando trabalhamos com um SQL Server qualquer, no Azure é um pouco diferente! Por exemplo, pra conectar a algum database, é necessário informar na tela de login e não utilizando a sintaxe “USE XXXXX” ou alterando o combobox na IDE do SSMS, e é esta conexão que faremos agora.

Vamos para a tela de login de uma “New Query” (1), informamos o “Server Name”, “Login” e “Password”(2) e precisamos clicar em “Options >>”(3). Veja a Figura 3, estas opções.

login.png

Figura 3: Opções de conexão do SSMS.

Após clicar em “Options >>” está nosso segredinho, será necessário informar qual é o banco de dados que a instância se conectará, informe o nome dbLinhaDeCodigo no campo “Connect to Database”(1) e em seguida clique em “Connect”(2). Veja estes itens na Figura 4.

login 2.png

Figura 4: Escolha do database nas opções de conexão.

Após se conectar à esta “New Query” do SAD, na base que criamos, vamos criar uma tabela e popular alguns registros lá dentro. Veja o código da criação da tabela na Listagem 1, e inserção dos dados na Listagem 2.

CREATE TABLE tblArtigo

(codigo INT IDENTITY NOT NULL

,titulo NVARCHAR(50) NOT NULL

,autor NVARCHAR(30) NOT NULL

,resumo NVARCHAR(100))

CREATE CLUSTERED INDEX idxTitulo ON tblArtigo(titulo)

Listagem 1: Criação da tabela de artigos na nuvem.

Vejam que é necessário criar um index clustered pra poder inserir dados na tabela, caso não tenham criado, uma mensagem de erro será disparada e não persistirá os dados.

INSERT INTO tblArtigo(titulo, autor, resumo)

VALUES ("SAD - Criando Banco"

         ,"Diego Nogare"

         ,"Neste artigo será criado o primeiro banco em SAD...")

INSERT INTO tblArtigo(titulo, autor, resumo)

VALUES ("LINQ com VS2010"

         ,"Andrey Sanches"

         ,"Por ser amante de Orientação à Objetos, o LINQ me fez...")

INSERT INTO tblArtigo(titulo, autor, resumo)

VALUES ("Novidades do VB 2010"

         ,"Alexandre Tarifa"

         ,"Analisando o Roadmap do Visual Basic, podemos...")

Listagem 2: Inserção de dados na tabela criada.

Após fazer algumas inserções, vou disparar um Select simples na tabela (SELECT * FROM tblArtigo ), pra constatar se os dados foram realmente inseridos e persistidos na nuvem. Pra visualizar os dados inseridos, veja a Figura 5.

select.png

Figura 5: Realizando um Select na nuvem

Voltando ao início do texto, a primeira verificação que foi feita neste artigo foi consultar as bases que tínhamos no servidor. Vamos realizar a mesma validação de antes, mas agora sendo em algum momento após a criação da nova database. Veja o resultado na Figura 6.

select master 2.png

Figura 6: Verificação das bases de dados existentes.

Visto que agora já temos um database, uma tabela e alguns dados na nuvem, vamos remover este database criado. Através do gerenciador on-line do Azure, para mostrar que realmente existe uma integração entre a nuvem e sua aplicação cliente. Após a remoção da base, vamos novamente fazer uma busca, pra ver o que retorna.

Acessando o gerenciador do Azure, selecionamos o radiobutton em frente ao nome da base de dados que desejamos remover e clicamos em “Drop Database”. Um pop-up de confirmação será apresentado, aguardando sua autorização para remover o referido banco de dados. Após a confirmação, não existirá mais a base que foi apagada. Veja o pop-up de confirmação na Figura 7.

drop database.png

Figura 7: Pop-up de confirmação de exclusão de base de dados.

Se fizer novamente a primeira verificação que foi realizada, será constatado exatamente o mesmo retorno, visto que não temos mais a base que foi criada, somente a MASTER.

Após realizar todos os exemplos deste artigo, pudemos ver como se conectar ao SAD e criar um database, uma tabela e alguns dados na nuvem. Após isso, vimos como dropar um banco de dados da nuvem e provar essa interação entre as partes.

Diego Nogare

Diego Nogare - Graduado em Ciência da Computação e Pós-Graduado em Engenharia de Computação com ênfase em Desenvolvimento Web com .NET, Colaborador do Portal Linha de Código, co-Líder do grupo de usuários Codificando .NET, co-Líder dos Microsoft Student Partners [MSP] de São Paulo e Microsoft Most Valuable Professional [MVP] em SQL Server, possui certificações MCP e MCTS em SQL Server 2005, é palestrante em eventos da Microsoft, Codificando .NET e INETA BR, mantém o site: www.diegonogare.net.