Compartilhar via


CeAddDatabaseProps (EDB)

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função é usada para adicionar propriedades a um banco de dados existente.

Essa função não trabalho com bancos de dados CEDB. Para obter mais informações sobre CEDB, consulte CEDB Reference.

Syntax

BOOL CeAddDatabaseProps(
  PCEGUID pGuid,
  CEOID oidDb,
  DWORD cProps,
  CEPROPSPEC* prgProps
);

Parameters

  • pGuid
    [no] CEGUID do volume montado na qual o banco de dados identificados pela oidDbparâmetro reside. Você pode montar um volume usando a função CeMountDBVolEx (EDB).
  • oidDb
    [no] Objeto identificador (OID) do banco de dados no qual adicionar propriedade identificações. Esta banco de dados devem existir no volume especificado pela pGuid parâmetro. Esta OID deve tiverem sido gerada pela função CeCreateDatabaseWithProps (EDB).
  • cProps
    [no] Número de elementos de prgProps matriz.
  • prgProps
    [no] Matriz de estruturas CEPROPSPEC (EDB). Esta matriz especifica o conjunto de propriedades para criar no banco de dados de novo. Em Edb, você deve definir as propriedades antes você pode escrevê-los usando a função CeWriteRecordProps (EDB).

Return Value

TRUE indica sucesso. FALSE indica falha. Para informações de erro estendidas get, chamar GetLastError. A seguinte tabela mostra os valores possíveis:

Return valor Descrição

ERROR_ACCESS_DENIED

Você tentou criar um banco de dados com dois pedidos classificar chave primária.

ERROR_ALREADY_EXISTS

Um elemento de prgProps Contém uma propriedade para o qual a identificação ou nome já existe. Um nome é automaticamente gerada if not especificado.

ERROR_INVALID_PARAMETER

Um das seguinte condições existir:

  • O pGuid parâmetro for definido como NULL.
  • O oidDb parâmetro for definido como NULL.
  • O cProps parâmetro está definido como zero.
  • O prgProps parâmetro for definido como NULL.
  • Qualquer um dos elementos no prgProps não são válidos. O seguinte membros das CEPROPSPEC estrutura deve ser válido:
    • wVersion Deve ser definido como _VERSION CEPROPSPEC.
    • Propid Deve ser um válido CEVT_xxx tipo de dados.
    • O dwFlags membro de uma propriedade pode incluir DB_PROP_COMPRESSED somente se a propriedade é uma CEVT_STREAM.

ERROR_NOT_ENOUGH_MEMORY

Não há memória suficiente disponível para criar o volume.

ERROR_NOT_FOUND

O volume especificado por pGuid Não existe, ou o banco de dados especificado por oidDb Não existe no volume especificado.

ERROR_NOT_SUPPORTED

Foi feita uma tentativa para adicionar mais de com suporte o máximo número de propriedades. EDB oferece suporte a até as propriedades de 1024.

ERROR_SHARING_VIOLATION

Outro segmento tem atualmente o aberto banco de dados.

Remarks

Essa função é bem-sucedida somente se o banco de dados não estiver aberto.

Você deve definir as propriedades de uma banco de dados antes você pode gravar dados, usando CeWriteRecordProps, a menos que o banco de dados esteja atualmente vazio.

Propriedades também podem ser definidas por chamado CeCreateDatabaseWithProps. Se você criar qualquer classificar pedidos quando chamado CeCreateDatabaseWithPropsEdb, internamente cria todas as propriedades classificar.

Se um a propriedade identificações especificado na prgProps matriz já existe no banco de dados, essa função for bem-sucedido, e GetLastError Retorna ERROR_ALREADY_EXISTS. Todas as identificações outras propriedade que não existem ainda são adicionadas.

Para remover propriedades de um banco de dados e potencialmente reduzir o tamanho de um volume, use a função CeRemoveDatabaseProps (EDB).

Requirements

Header windbase.h
Library coredll.lib
Windows Embedded CE Windows CE 5.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

EDB Functions
CeMountDBVolEx (EDB)
CeWriteRecordProps (EDB)
CeCreateDatabaseWithProps (EDB)
CeRemoveDatabaseProps (EDB)
CEPROPSPEC (EDB)

Concepts

EDB Schema Support