Objetos de fonte de dados do OLE DB (SQL Server Compact)
Na programação OLE DB, o objeto de fonte de dados representa o repositório de dados subjacente de um provedor. Para conectar-se a um provedor OLE DB, um consumidor deve primeiro criar e inicializar uma instância do objeto de fonte de dados.
O objeto de fonte de dados do SQL Server Compact
No Microsoft SQL Server Compact 4.0, o objeto de fonte de dados é criado chamando a função OLE CoCreateInstance e passando o CLSID (identificador de classe) para o Provedor OLE DB do SQL Server Compact 4.0, que é CLSID_SQLSERVERCE. Como o SQL Server Compact 4.0 é um servidor em processo, são criadas instâncias de objetos OLE DB do SQL Server Compact 4.0 com a macro CLSCTX_INPROC_SERVER para indicar o contexto executável.
O SQL Server Compact 4.0 usa apenas a propriedade DBPROP_INIT_DATASOURCE para especificar a fonte de dados desejada. Essa propriedade passa o caminho completo do arquivo de banco de dados a ser aberto. Depois de defini-la, o consumidor inicializa o objeto de fonte de dados. Isso estabelece o ambiente que é necessário para trocar dados entre o consumidor e o SQL Server Compact 4.0. Após a inicialização do objeto de fonte de dados, o consumidor pode obter informações autodescritivas sobre o armazenamento de dados, mas não acessar dados ainda. O objeto de fonte de dados poderá então ser usado para criar um ou mais objetos de sessão. Esses, por sua vez, são usados para criar as transações, os comandos e os conjuntos de linhas necessários.
O provedor OLE DB para SQL Server Compact 4.0 também permite que você crie um novo banco de dados. Para obter mais informações, consulte Criando bancos de dados com o OLE DB.
Também há suporte para bancos de dados protegidos por senha. Com esse recurso de segurança, uma senha deve ser passada quando o objeto de fonte de dados é inicializado. Para obter mais informações, consulte Acessando bancos de dados protegidos por senha com o OLE DB.
Limitações do objeto de fonte de dados
Algumas limitações do objeto de fonte de dados no provedor OLE DB para SQL Server Compact incluem as seguintes:
O conceito de um catálogo conforme definido no OLE DB não é usado no SQL Server Compact. A propriedade DBPROP_INIT_DATASOURCE define o banco de dados a ser usado, e o provedor OLE DB para SQL Server Compact 4.0 trata esse banco de dados como o catálogo atual.
Não há suporte para a capacidade de alterar o armazenamento de dados atual. Os clientes que desejarem alterar o armazenamento de dados devem cancelar a inicialização do objeto de fonte de dados, definir o nome do novo armazenamento e reinicializar o objeto.
Propriedades de fonte de dados específicas do provedor
O SQL Server Compact 4.0 dá suporte às seguintes propriedades específicas do provedor no conjunto de propriedades específicas do provedor DBPROPSET_SSCE_DBINIT:
Propriedade |
Definição |
---|---|
DBPROP_SSCE_AUTO_SHRINK_THRESHOLD |
A porcentagem de espaço livre permitido no arquivo de banco de dados antes de iniciar a redução automática. O valor 100 desabilita a redução automática. Se não for especificada, o valor padrão será 60. |
DBPROP_SSCE_DBCASESENSITIVE |
Um valor booliano que determina se o agrupamento de bancos de dados diferencia maiúsculas de minúsculas. Deve ser definido como true para habilitar o agrupamento com distinção de maiúsculas e minúsculas ou false para desabilitá-lo. Se não for especificado, o valor padrão será false.
Observação
Esta propriedade é introduzida a partir do SQL Server Compact versão SP1. Para obter mais informações, consulte Trabalhando com agrupamentos (SQL Server Compact).
|
DBPROP_SSCE_DBPASSWORD |
A senha do banco de dados, que pode ter até 40 caracteres de comprimento. Se não for especificada, o valor padrão será sem senha. Esta propriedade será necessária se você habilitar a criptografia no banco de dados. Se você especificar uma senha, a criptografia será habilitada no banco de dados. Para obter mais informações, consulte Acessando bancos de dados protegidos por senha com o OLE DB. |
DBPROP_SSCE_DEFAULT_LOCK_ESCALATION |
O número de bloqueios que uma transação adquirirá antes de você tentar o escalonamento de linha para tabela ou de página para tabela. Se não for especificado, o valor padrão será 100. |
DBPROP_SSCE_DEFAULT_LOCK_TIMEOUT |
O número padrão de milissegundos que uma transação aguardará por um bloqueio. Se não for especificado, o valor padrão será de 5000 milissegundos para desktops e 2000 milissegundos para dispositivos. |
DBPROP_SSCE_ENCRYPTIONMODE |
O tipo de criptografia usada para proteger o arquivo de banco de dados. Para obter mais informações sobre o modo de criptografia, consulte a descrição em Propriedades específicas do provedor (OLE DB). |
DBPROP_SSCE_FLUSH_INTERVAL |
Especifica o intervalo, em segundos, para que todas as transações confirmadas sejam liberadas para o disco. Se não for especificado, o valor padrão será 10. |
DBPROP_SSCE_MAXBUFFERSIZE |
O tamanho máximo do banco de dados, em MB. Se não for especificado, o valor padrão será 640. |
DBPROP_SSCE_MAX_DATABASE_SIZE |
O tamanho máximo do banco de dados, em MB. Se não for especificado, o valor padrão será 128. |
DBPROP_SSCE_TEMPFILE_DIRECTORY |
O local do banco de dados temporário. Se não for especificado, o padrão será usar o banco de dados especificado na propriedade data source para o armazenamento temporário. Para obter mais informações, consulte Especificando o local do banco de dados temporário usando o OLE DB e Bancos de dados temporários. |
DBPROP_SSCE_TEMPFILE_MAX_SIZE |
O tamanho máximo do banco de dados temporário, em MB. |