Introdução ao SQL Server Primeiros passos na construção de um banco de dados com o SQL Server 2008 Express
No mundo atual, para as organizações obterem sucesso elas precisam de uma visão que enderece as tendências principais no gerenciamento de dados. A Microsoft se preocupa em satisfazer esta necessidade e nesse sentido possui uma excelente plataforma de dados chamada SQL Server. A versão mais atual deste produto é o SQL Server 2008 R2. Veremos nesse artigo como podemos criar uma base de dados utilizando uma versão especialmente criada para fins de aprendizado: o SQL Server 2008 Express. O próximo tópico mostrará como podemos obter uma versão gratuita do produto e quais os passos necessários para realizar a instalação do SQL Server 2008 Express. Instalando o SQL Server 2008 Express Para instalarmos o SQL Server 2008 Express devemos primeiramente acessar o site do Web Platform Installer (veja sessão Links), que funcionará como um gerenciador de instalações da família de produtos Express, além de prover diversos outros recursos e componentes de desenvolvimento. Conforme podemos conferir na Figura 1, o site possui uma área (destacada na Figura 1) que direciona para a instalação do SQL Server 2008 Express. O link direto para este site você também obtém no final deste artigo na sessão Links. A finalidade do Microsoft Web Platform Installer é concentrar a instalação de produtos e componentes de forma simples, como veremos nos passos a seguir.
Figura 1. Site Microsoft /Express com o ponto de partida para instalação do SQL Server 2008 Express
Como segundo passo aguarde que o site solicite a instalação do Microsoft Web Platform Installer. A Figura 2 mostra o progresso da instalação. Um detalhe importante é que este passo será necessário apenas uma única vez, pois em futuros acessos o site “Microsoft/Express” é capaz de apresentar o Microsoft Web Platform Installer diretamente.
Figura 2. Instalação do Microsoft Web Platform Installer, que será utilizado para gerenciar as instalações da família de produtos Express
Caso você já tenha instalado previamente o Microsoft Web Platform Installer ou tenha executado os procedimentos de instalação mencionados anteriormente, a tela inicial de instalação do SQL Server 2008 Express será apresentada conforme mostra a Figura 3.
Figura 3. Tela inicial de instalação do SQL Server 2008 Express através do Microsoft Web Platform Installer
A partir daqui iremos de fato iniciar a instalação do SQL Server 2008 Express e das ferramentas de desenvolvimento. Além do próprio banco de dados a principal ferramenta de desenvolvimento que será instalada é o SQL Server Management Studio. Esse artigo explicará a finalidade e o uso deste componente nos próximos tópicos. Ainda tomando como referência a Figura 3, clique no botão Install. É altamente recomendado que durante o processo de instalação você não realize nenhuma outra instalação e evite executar tarefas que requeiram a reinicialização da máquina. O processo de instalação em geral não é demorado, obviamente isso dependerá da sua velocidade de conexão com a Internet. A tela exibida na Figura 4 mostrará com detalhes o que será instalado bem como o tamanho total requerido. A Microsoft recomenda como configuração de hardware adequada o seguinte: • 1 GB de espaço livre no disco rígido; • Mínimo de 256 MB de RAM, sendo o recomendado 1 GB; • Processador Intel ou compatível de 1 GHz, sendo o recomendado 2 GHz; Para aceitar as condições de instalação basta clicar no botão I Accept, localizado no canto inferior direito, conforme vemos na Figura 4.
Figura 4. Tela de confirmação dos itens que serão instalados
O instalador apresentará a tela exibida na Figura 5, nela devemos escolher a opção Mixed Mode Authentication (recommended for application development), informar a senha do administrador do SQL Server no campo Password (a senha deve ser confirmada no campo Confirm Password). Na prática estaremos definindo uma conta de usuário interno do SQL Server, isso é importante para garantir um contexto de segurança na administração dos bancos de dados que serão criados. Como parte de uma política de segurança mínima necessária para garantir a segurança das informações contidas nos bancos de dados, o SQL Server obrigará que você determine no momento de sua instalação quem é o usuário que possuirá acesso administrativo na instância do SQL Server 2008 Express.
Figura 5. Definindo a senha do usuário administrador da instância do SQL Server 2008 Express
Como foi dito anteriormente, o Microsoft Web Platform Installer visa facilitar o processo de instalação. Comparado com a instalação de outras versões do SQL Server 2008, como a Enterprise, Professional e outras, a Express assumirá a responsabilidade de configurar todo o ambiente inicial da instância que será instalada. Conforme podemos conferir na Figura 6, deste ponto da instalação em diante precisaremos apenas acompanhar o download e a instalação completa do SQL Server 2008 Express, bem como das suas ferramentas e componentes de desenvolvimento.
Figura 6. Processo de download e instalação do SQL Server 2008 Espress no Microsoft Web Platform Installer
Ao final deste processo teremos a exibição da tela mostrada na Figura 7. Ela indicará se o processo de instalação ocorreu com sucesso. Caso haja algum problema durante a instalação, você pode consultar o link disponibilizado na sessão de Links (SQL Server 2008 Express Install) no final deste artigo. Nele você encontrará orientações e outros links que podem auxiliar na solução de possíveis problemas durante a instalação.
Figura 7. Tela de confirmação de instalação com sucesso
Caso você deseje alterar posteriormente a instalação do SQL Server 2008 Express, basta entrar novamente no site “Microsoft /Express” e quando o Microsoft Web Platform Installer for exibido, clicar na guia Web Platform conforme mostra a Figura 8. Lá você encontrará a opção Database e o link Customize. Clicando neste link será apresentada a tela exibida na Figura 9.
Figura 8. Tela do Microsoft Web Platform Installer com as opções de customização dos componentes instalados
Na tela exibida na Figura 9 podemos remover ou adicionar os componentes previamente instalados. Como podemos ver, além do SQL Server 2008 Express, temos a opção de instalar diversos outros produtos e componentes de desenvolvimento da plataforma .NET. Esse artigo trata apenas do SQL Server 2008, mas os passos aqui apresentados podem ser utilizados para instalação de outras ferramentas, devendo-se apenas fazer algumas adaptações devido às particularidades de cada produto.
Figura 9. Selecionando os componentes e ferramentas do SQL Server 2008 Express
Com o SQL Server 2008 Express instalado, temos tudo o que precisamos daqui por diante. Veremos a seguir como devemos pensar no desenvolvimento para banco de dados além de executarmos diversas ações e exemplos práticos no decorrer do artigo. A importância da modelagem de dados Chamamos de Modelagem de Dados a atividade de especificação das estruturas de dados e regras de negócio necessárias para suportar uma área de negócios. Isso significa representar um conjunto de requerimentos de informações de negócio em termos de dados que poderão ser armazenados e recuperados posteriormente por uma ferramenta de gerenciamento de banco de dados (SGBD). É uma parte importante do desenho de um sistema de informação. Em suma, a modelagem de dados compreende algumas etapas: 1) Projeto conceitual: nesta etapa modelamos os requisitos de dados através de Diagramas de Entidade e Relacionamento (DER) ou Classes de Objetos (DCO); 2) Projeto Lógico: aqui fazemos o mapeamento do esquema conceitual para o modelo de dados do SGBD escolhido, através do Diagrama de Estrutura de Dados (DED); 3) Projeto Físico: por fim fazemos o mapeamento do esquema lógico para os tipos de dados e restrições de integridade do SGBD escolhido, além da criação das visões e índices. Neste artigo vamos focar apenas alguns aspectos da modelagem de dados, dando ênfase aos conceitos importantes para criação de tabelas no SQL Server 2008 Express. Dito isso, veremos como podemos fazer a transição de uma estrutura de dados, desde a necessidade de negócio até a criação do banco de dados. Vamos imaginar que desejamos realizar a modelagem de dados de um Blog. Certamente, você leitor, está familiarizado com as necessidades de um blog, basicamente temos os posts escritos por um ou mais autores e comentários realizados pelos leitores. Como exemplo de cenário iremos a partir de agora realizar a modelagem das informações pertinentes para posteriormente desenvolvermos o nosso banco de dados utilizando o SQL Server 2008 Express. Faremos uso de um modelo simplificado, pois o mais importante é entendermos todos os meandros dessa etapa. Podemos a partir desse cenário elaborar um primeiro esboço das informações que precisamos para publicar uma postagem completa, conforme ilustra a Tabela 1.
Informações contidas num post Título do Post Conteúdo do Post Tags Categoria Informações sobre o Autor Comentários Tabela 1. Primeiro esboço da modelagem de informações de um blog
De acordo com o nosso esboço inicial podemos considerar algumas situações de uso. O importante agora é identificarmos o que chamamos de “anomalias de atualização”. As seguintes considerações irão nos auxiliar nesse exercício: - Incluir um novo post implica em incluir dados da categoria na qual ele pertence, caso a categoria não exista devemos criá-la; - Ainda na inclusão, devemos informar os dados do autor do post, como nome e e-mail de contato; - Um post pode ter nenhum, um ou mais comentários; - Excluindo um post que possui uma categoria associada estaremos excluindo a informação da categoria e das tags associadas. Caso a categoria tenha apenas um post, a informação da mesma será perdida; - Modificando o e-mail de um autor teremos que modificar de todos os posts escritos por ele; Observe que com algumas observações percebemos que o esboço é válido para reunirmos as informações de que precisamos. Contudo, se pensarmos em armazenamento dessas informações, teremos diversos pontos a serem tratados, pois dependendo de como modelarmos o nosso banco de dados teremos muitos problemas durante as operações de inclusão, alteração ou exclusão de registros. Outro fator bastante relevante é a repetição da mesma informação, como é o caso do autor do post, pois geramos dados repetidos (ou redundantes). Podemos afirmar que as primeiras preocupações serão, portanto, as anomalias de atualização e a redundância. É aqui que entra o que chamamos de Normalização (através da observação e aplicação das chamadas “Formas Normais”). Mas o que é a Normalização? Podemos defini-la como sendo o processo formal passo a passo que examina os atributos de uma entidade, com o objetivo de evitar anomalias observadas na inclusão, exclusão e alteração de registros (tuplas) exclusivos. Podemos então afirmar que a Normalização: 1) Visa minimizar redundâncias e inconsistências; 2) Facilitar a manipulação dos dados; 3) Facilitar a manutenção das informações; Para realizarmos a Normalização devemos seguir os seguintes passos. 1º Passo – Substituir um conjunto de entidades e relacionamentos por um outro mais “limpo” Neste passo podemos pensar na divisão do esboço inicial em algumas estruturas, como por exemplo, a separação em posts, categorias, tags e autor; 2º Passo – Limpar anomalias de atualização em relação a atributos multivalorados Aqui podemos tratar como sendo atributos multivalorados os comentários e as tags. Ou seja, não queremos que a estrutura contenha grupos repetitivos, como é o caso dos comentários. Além disso, queremos que uma determinada tag possa ser atualizada independentemente do post; 3º Passo – Limpar anomalias de atualização em relação a dependências parciais em chaves concatenadas Devemos aqui nos preocupar em garantir que uma atualização não afete itens relacionados, como é o caso de posts e categorias; 4º Passo – Limpar anomalias de atualização em relação a redundância de dados desnecessários Nesse passo devemos pensar numa estrutura de dados que favoreça o reaproveitamento de informações, de forma a minimizar a repetição de uma mesma informação em mais de um ponto. Podemos exemplificar com os dados do autor, que serão repetidos em vários posts; 5º Passo – Limpar anomalias de atualização em relação à perda de informações Para que não haja perda de dados entre dados relacionados, quando apenas uma parte precisa ser excluída, devemos garantir que a estrutura de tabelas tenha independência suficiente. Podemos exemplificar esse passo através do relacionamento de posts com autores, categorias, tags e comentários. 6º Passo – Limpar anomalias de atualização em relação a dependência transitiva entre atributos Eliminar a dependência transitiva significa garantir que não existe um elemento intermediário de ligação entre dois objetos. 7º Passo – Limpar anomalias de atualização em relação a dificuldades de representar a realidade observada As informações do autor englobam atributos como: nome do autor e e-mail. Assim como um post possui uma data de publicação além de seu título e conteúdo. Nesse passo devemos refinar a representação de negócio dentro do nosso modelo de dados. Diz-se que uma tabela num banco de dados relacional está numa certa forma normal se satisfaz certas condições. Cada forma normal representa uma condição mais forte que a que a precede na lista. Para a maioria dos efeitos práticos, considera-se que as bases de dados estão normalizadas se aderirem à terceira forma normal. Aplicando as três formas normais ao nosso esboço inicial teremos como resultado o diagrama apresentado na Figura 10.
Figura 10. Modelo de dados após a normalização, ainda numa visão com poucos detalhes
A primeira impressão que temos com o modelo apresentado na Figura 10 é de que a estrutura ficou mais complexa. Mas o que aconteceu na verdade é que traduzimos um esboço inicial, que não tinha a preocupação de representar os relacionamentos existentes entre os atributos, em uma visão mais detalhada, prevenindo as anomalias de atualização e as redundâncias. Outro benefício da revisão do modelo é que poderemos realizar um armazenamento dos dados de forma otimizada e consistente. Podemos, pela primeira vez, ter uma ideia do que seriam as tabelas do banco de dados. Podemos entender como tabela um conjunto de dados dispostos em número finito de colunas e número ilimitado de linhas (tuplas, ou comumente chamados de registros). As principais mudanças do esboço inicial para o modelo da Figura 10 encontram-se destacadas a seguir: • Foi criada uma estrutura separada para Post, Comentário, Autor, Categoria e Tags. Isso">
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
|