SQL Server Compact e LINQ to SQL

O SQL Server Compact é o banco de dados padrão instalado com o Visual Studio. Para obter mais informações, confira Como usar o SQL Server Compact (Visual Studio).

Este tópico descreve as principais diferenças em uso, configuração, conjuntos de recursos e escopo do suporte do LINQ to SQL.

Características do SQL Server Compact com relação ao LINQ to SQL

Por padrão, o SQL Server Compact está instalado para todas as edições do Visual Studio, portanto, está disponível no computador de desenvolvimento para uso com o LINQ to SQL. Porém, implantar um aplicativo que usa SQL Server Compact e LINQ to SQL difere disso para um aplicativo SQL Server. O SQL Server Compact não faz parte do .NET Framework e, portanto, deve ser empacotado com o aplicativo ou ser baixado separadamente do site da Microsoft.

Observe as seguintes características:

  • O SQL Server Compact é empacotado como uma DLL que pode ser usada em arquivos de banco de dados (extensão .sdf) diretamente.

  • O SQL Server Compact é executado no mesmo processo que o aplicativo cliente. A eficiência de comunicação com o SQL Server Compact pode, portanto, ser significativamente maior do que a comunicação com o SQL Server. Por outro lado, o SQL Server Compact requer a interoperabilidade entre códigos gerenciados e não gerenciados com os custos de atendimento.

  • O tamanho da DLL do SQL Server Compact é pequeno. Esse recurso reduz o tamanho total do aplicativo.

  • O runtime do LINQ to SQL e a ferramenta de linha de comando SQLMetal dão suporte ao SQL Server Compact.

  • O Object Relational Designer não dá suporte ao SQL Server Compact.

Conjunto de recursos

O conjunto de recursos do SQL Server Compact é muito mais simples do que o conjunto de recursos do SQL Server das seguintes maneiras que podem afetar os aplicativos do LINQ to SQL:

  • O SQL Server Compact não dá suporte a procedimentos armazenados ou exibições.

  • O SQL Server Compact dá suporte apenas um subconjunto dos tipos de dados e funções SQL.

  • O SQL Server Compact dá suporte apenas a um subconjunto de construções SQL.

  • O SQL Server Compact fornece somente um otimizador mínimo. É possível que algumas consultas atinjam o tempo limite.

  • O SQL Server Compact não dá suporte a confiança parcial.

Confira também