Provedor de dados do .NET Compact Framework para SQL Server (SQL Server Compact)
Você pode desenvolver aplicativos para dispositivos usando o .NET Compact Framework que acessa bancos de dados no SQL Server versão 7.0 ou posteriores usando o namespace System.Data.SqlClient. System.Data.SqlClient é o namespace do Provedor de Dados do .NET Compact Framework para SQL Server. Esse provedor de dados corresponde ao namespace System.Data.SqlClient do Microsoft.NET Framework.
Dica
Ao desenvolver aplicativos de desktop, use o Provedor de Dados do .NET Framework para SQL Server.
Da mesma forma que seu correspondente no .NET Framework, o System.Data.SqlClient no .NET Compact Framework é uma coleção de classes que podem ser usadas para acessar bancos de dados do SQL Server com código gerenciado a partir de dispositivos baseados no .NET do Windows CE.
A menos que observado em contrário, todos os objetos no namespace System.Data.SqlClient correspondem aos objetos no namespace System.Data.SqlClient no .NET Framework. Para obter mais informações sobre as classes desse namespace, consulte o SDK do .NET Compact Framework no MicrosoftVisual Studio 2008.
Limitações do provedor
Segue uma lista de limitações e exceções que se aplicam a dispositivos baseados no .NET do Windows CE e ao .NET Compact Framework:
Classes sem suporte
Não há suporte para as classes SqlClientPermission e SqlClientPermissionAttribute.
Propriedade ConnectionString
Não há suporte para as seguintes propriedades ConnectionString:
AttachDBFilename
Max Pool Size
Min Pool Size
Connection Lifetime
Connection Reset
Enlist
Pooling
Network Library
Encrypt
Os aplicativos que usam System.Data.SqlClient em dispositivos inteligentes podem usar o protocolo de Autenticação do Windows em vez da Autenticação do SQL Server. Para fazê-lo, a cadeia de conexão deve incluir as seguintes propriedades:
Propriedade
Valor
Integrated Security
SSPI
User ID
Domínio\nome de usuário
Password
<senha>
Dados ANSI
Há suporte para dados ANSI somente para agrupamentos SQL_Latin1_General_CP1_CI_AS de um dispositivo baseado em inglês. Todas as cadeias de caracteres no .NET Framework estão em Unicode. O System.Data.SqlClient converte dados ANSI no SQL Server em Unicode usando as classes Encoding do .NET Framework. Embora haja suporte para as classes Encoding no .NET Compact Framework, isso não ocorre para todas as páginas de código.
Além disso, o System.Data.SqlClient não poderá ler ou gravar em uma coluna ANSI se a página de código da coluna não estiver disponível no dispositivo baseado no Windows CE. O System.Data.SqlClient gera um erro quando a página de código de uma conversão de ANSI para Unicode não está disponível.
Para obter mais informações sobre as páginas de código disponíveis para um dispositivo inteligente específico, entre em contato com o fabricante do dispositivo.
Pool de conexão
Não há suporte para o pool de conexão. Um dispositivo pode ter apenas um pequeno número de conexões simultâneas com uma instância do SQL Server.
Transações distribuídas
Não há suporte para transações distribuídas. As transações não podem alcançar bancos de dados ou servidores. O System.Data.SqlClient gera uma exceção InvalidOperationException durante uma transação distribuída.
Seleção de Biblioteca de Rede
Há suporte somente para as conexões TCP/IP com uma instância do SQL Server. O System.Data.SqlClient não pode conectar-se ao SQL Server por meio de uma base do dispositivo.
Criptografias de Biblioteca de Rede
Não há suporte para conexões criptografadas com uma instância do SQL Server. Se o computador que está executando o SQL Server possuir um certificado SSL instalado, a conexão falhará.
Autenticação do Windows
Há suporte para a Autenticação do Windows. Contudo, a identificação do usuário e a senha usados para a autenticação no Controlador de Domínio sempre devem ser especificados na cadeia de conexão.
Para obter mais informações, consulte a referência do namespace System.Data.SqlClient no SDK do .NET Compact Framework no MicrosoftVisual Studio 2008.