Compartilhar via


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çãoObservaçã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.