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.