Artigo WebMobile 18 - Introdução ao SQL Server Compact Edition

Artigo publicado pela revista WebMobile edição 18.

Esse artigo faz parte da revista WebMobile edição 18. Clique aqui para ler todos os artigos desta edição

Clique aqui para ler este artigo em PDF

 

.NET Mobile

Introdução ao SQL Server Compact Edition

Aprenda a manipular bancos de dados em dispositivos móveis

 

Nos últimos anos, a tecnologia móvel vem passando por profundas mudanças, impulsionadas principalmente pela crescente exigência do mercado em oferecer melhores produtos e serviços aos seus consumidores. Esta exigência obriga as empresas a primarem pela produtividade e eficiência das suas operações, onde quer que seus funcionários e colaboradores estejam. Como resultado, estamos presenciando uma explosão de dispositivos móveis, cada vez mais presentes no nosso dia-a-dia e que permitem estender as fronteiras do negócio, através da utilização de soluções voltadas para esta plataforma.

Aplicações móveis trazem grandes benefícios para as empresas, pois permitem a aproximação com os clientes, onde eles estiverem. Entretanto, ao tornar uma aplicação móvel, surge um dos maiores desafios desta plataforma: a disponibilidade dos dados. Na grande maioria dos casos, os usuários de soluções móveis estão desconectados da empresa, não tendo acesso aos dados que tanto precisam para realizar suas operações. Logo, o acesso aos dados é uma necessidade essencial para o bom funcionamento do negócio, independente da conectividade ou não com a empresa.

Para atender esta necessidade e superar os problemas causados pela mobilidade, a Microsoft possui uma engine de banco de dados gratuita voltada para clientes móveis: o SQL Server Compact Edition. Atualmente na versão 3.5, o SSCE possibilita a manipulação de dados no próprio cliente, sem a necessidade de conexão com o servidor de dados da empresa. Em um momento posterior, o usuário pode se conectar a este servidor e atualizar os dados a partir das operações realizadas e armazenadas no dispositivo móvel, garantindo assim a integridade e a atualização dos dados da solução. Desta forma, os dados continuam acessíveis para o usuário e a aplicação se mantém disponível, onde quer que estejam.

Neste artigo, apresentaremos o SQL Server Compact e a sua importância no desenvolvimento de aplicações para desktop e dispositivos móveis. Veremos suas principais características, funcionalidades e aplicações, além dos requisitos necessários para a sua instalação. Também vamos mostrar como criar e gerenciar bancos de dados armazenados. No final, mostraremos como funciona o processo de replicação de dados entre um servidor SQL Server e um dispositivo móvel.

Visão Geral

O SQL Server Compact Edition é uma engine embarcada de bando de dados gratuita, voltada para o desenvolvimento de aplicações desktop e móveis na plataforma Windows (XP, Vista, Pocket PC e Smartphones).

Atualmente na versão 3.5, é possível a criação e manipulação de bancos de dados compactos utilizados por aplicações monousuárias. Neste tipo de aplicação, o banco de dados é distribuído junto com o programa, de forma embarcada, e ambos são instalados no mesmo dispositivo. Logo, a conexão da aplicação com o banco e todas as operações de manipulação dos dados é efetuada localmente. Desta forma, o SSCE pode ser utilizado em diversos cenários, que vão desde pequenas aplicações até soluções empresariais com módulos móveis.

Outra característica interessante desta edição é a eficiência na utilização dos recursos. Como o SQL Server Compact Edition é voltado para dispositivos móveis, onde processador e outros recursos são escassos, a sua engine ocupa apenas 2MB de espaço e utiliza 5MB de memória para suas operações. Esta otimização torna a execução do serviço de dados praticamente imperceptível e permite que uma mesma solução possa ser distribuída em diferentes ambientes.

Falando em desempenho, os bancos de dados nesta edição suportam índices, recurso que aumenta a velocidade e a eficiência das consultas. Também, de forma semelhante a um servidor de dados SQL Server, o processamento das consultas utiliza as estatísticas criadas pelo otimizador (Query Optimizer), resultando na utilização inteligente dos recursos do sistema.

Em relação aos dados, a arquitetura de armazenamento é voltada para dispositivos móveis, utilizando o espaço necessário de forma eficiente. Além disso, todas as transações efetuadas no banco de dados utilizam as propriedades de atomicidade, consistência, isolamento e durabilidade (ACID) para garantir a confiabilidade dos dados.

Além disso, o SQL Server Compact compartilha a mesma estrutura de programação das outras edições do SQL Server, além de trabalhar com vários comandos e recursos das linguagens Transact-SQL e ADO.NET, o que facilita o seu aprendizado por desenvolvedores e administradores de bancos de dados.

Recursos importantes, como a integridade referencial com suporte a atualizações e remoções em cascata, a utilização de um arquivo único de dados protegido com senha e criptografia de 128-bits, o suporte as consultas aninhadas na cláusula FROM, e o suporte as algumas cláusulas importantes (Top, Cast, Inner Join, Outer Join, Group By e Having), permitem a criação de aplicações robustas de forma simples e rápida.

Outra facilidade para os profissionais que administram servidores SQL Server é a utilização do SQL Server Management Studio como gerenciador de bancos de dados do SQL Server Compact Edition. O Management Studio é o software de gerenciamento de instâncias do SQL Server, e permite a manipulação e a integração entre bases de dados de todas as edições do SQL Server, concentrando as tarefas realizadas pelos administradores de dados em um único ambiente. Outro software importante para administradores e desenvolvedores é o SQL Server Compact 3.5 Query Analyzer, um gerenciador de bancos de dados especial, voltado para ambientes móveis.

Ainda falando de gerenciamento, os desenvolvedores podem criar e gerenciar o SSCE a partir do Visual Studio, facilitando a distribuição de aplicações desenvolvidas em .NET Framework e .NET Compact Framework.

Por fim, o recurso mais importante do SQL Server Compact é a sincronização dos dados entre cliente e servidor. Este recurso permite a atualização de dados entre o cliente (dispositivo móvel) e o servidor de dados, de forma a garantir a confiabilidade e a atualização da solução, independente da existência de conectividade entre as partes.

Um cenário prático de utilização do recurso de sincronismo é o de aplicações corporativas móveis. Em muitos momentos, os usuários destas aplicações não estão conectados ao servidor de dados, mas precisam realizar diversas operações relacionadas ao seu trabalho, tais como consultas e atualizações. Nestes casos, o SQL Server Compact Edition permite ao usuário armazenar e manipular dados no banco instalado localmente, através da aplicação móvel. Estes dados podem ser sincronizados em um momento posterior, quando o cliente restabelecer a conexão com o servidor de dados, possibilitando aos funcionários executar diversas tarefas quando estão fora da empresa.

" [...] continue lendo...

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados