Share via


Gerenciando objetos de banco de dados com o OLE DB (SQL Server Compact)

O Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) exige que um objeto seja aberto de forma exclusiva antes de modificá-lo.

Modificando objetos

Todos os métodos ITableDefinition abrem tabelas para acesso exclusivo. Se outro método já tiver aberto a tabela, a chamada do método ITableDefinition falhará. Por exemplo, se um usuário tentasse adicionar uma coluna a uma tabela usando ITableDefinition::AddColumn enquanto um cursor estivesse aberto nessa tabela, a tentativa de modificar a definição da coluna falharia com um erro de bloqueio. Você deve considerar os problemas de bloqueio ao projetar seu aplicativo, principalmente quando usar transações.

Modificando colunas

Algumas informações sobre colunas também podem ser modificadas com IAlterTable::AlterColumn. Como as colunas possuem mais itens do que poderiam ser modificados, a propriedade DBPROP_ALTERCOLUMN descreve as partes da estrutura DBCOLUMNDESC que define a coluna que pode ser modificada. Entretanto, mesmo que o provedor dê suporte à modificação de propriedades, isso não significa que todas as propriedades possam ser modificadas. As propriedades a seguir podem ser modificadas através do provedor OLE DB para SQL Server Compact 3.5:

  • DBPROP_COL_DEFAULT
  • DBPROP_COL_SEED (somente em colunas de identidade)
  • DBPROP_COL_INCREMENT (somente em colunas de identidade)

Modificando índices e restrições

Também é possível modificar índices e restrições. Para obter mais informações, consulte Índices do OLE DB (SQL Server Compact) e Restrições do OLE DB (SQL Server Compact).