Compartilhar via


CeCreateDatabaseWithProps (EDB)

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função cria um novo banco de dados em um volume montado.

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

Syntax

CEOID CeCreateDatabaseWithProps(
  PCEGUID pGuid,
  CEDBASEINFOEX* pInfo,
  DWORD cProps,
  CEPROPSPEC* prgProps
);

Parameters

  • pGuid
    [no] CEGUID do volume montado no qual criar o banco de dados. Você pode montar um volume por chamado a função CeMountDBVolEx (EDB).
  • pInfo
    [no] Ponteiro para a estrutura CEDBASEINFOEX (EDB) que especifica os properites do banco de dados.
  • cProps
    [no] Número de elementos de prgProps matriz.
  • prgProps
    [no] Matriz de estruturas CEPROPSPEC (EDB). Esta matriz especifica as propriedades para criar no banco de dados de novo. Em Edb, você deve definir as propriedades antes você pode escrevê-los.

Return Value

O objeto Indentificador (OID) de banco de dados de novo indica sucesso. NULL Indica falha. Para informações de erro estendidas get, chamar GetLastError. A seguinte tabela mostra os valores possíveis.

Return valor Descrição

E_FAIL

O szDbaseName membro da estrutura CEDBASEINFOEX (EDB) é maior do que CEDB_MAXDBASENAMLEN.

ERROR_ACCESS_DENIED

Houve uma tentativa para criar um banco de dados com dois pedidos classificar chave primária.

ERROR_ALREADY_EXISTS

O prgProps parâmetro contém uma propriedade para o qual o especificado identificação ou nome já existe. Também ocorre se você tentar adicionar mais de um AUTO_xxx propriedade para um banco de dados.

ERROR_BAD_LENGTH

Um nome propriedade é mais de 128 caracteres.

ERROR_DISK_FULL

Não há suficiente espaço em disco criar o banco de dados.

ERROR_DUP_NAME

Já existe um banco de dados com o nome especificado.

ERROR_INVALID_PARAMETER

Um ou mais parâmetros não são válido.

ERROR_NOT_FOUND

O volume especificado por pGuid não existe.

ERROR_NOT_SUPPORTED

A estrutura especificada CEDBASEINFOEX (EDB) contém CEDB_VALIDMODTIME ou CEDB_SYSTEMDB. Nenhum desses valores é com suporte por Edb.

Remarks

O ERROR_INVALID_PARAMETER é retornado no seguinte situações:

  • O pGuid parâmetro for definido como NULL.
  • O pInfo parâmetro for definido como NULL.
  • O wVersion não é igual a CEDBASEINFO_VERSION.
  • O dwFlags não tem o sinalizador CEDB_VALIDNAME. EDB requer que um nome ser fornecido ao criar um banco de dados.
  • O szDbaseName está vazio ou contém todos os espaços.
  • O dwFlags Tenha o sinalizador CEDB_VALIDSORTSPEC, wNumSortOrder é maior que CE_MAXSORTORDER (16).
  • Há pedidos classificar especificados e qualquer um dos elementos no rgSortSpecs não são válidos. O seguinte membros de uma estrutura SORTORDERSPECEX (EDB) devem ser válido:
    • O wVersion membro deve ser definido como SORTORDERSPECEX_VERSION.
    • O wNumProps membro não pode ser maior que CE_MAXSORTPROP (16).
    • As identificações propriedade in a rgPropID membro deve ter todos válido CEDB dados tipos a partir de CEVT_xxx enumeração.
    • A propriedade não pode ser um CEVT_STREAM tipo de dados. Não é possível criar pedidos classificar em fluxos.
  • O cProps parmameter não está definido para zero e prgProps é definido como NULL.
  • A função CeAddDatabaseProps (EDB), que é chamado por essa função, retornará um erro.

Ordem de classificação

Se classificar pedidos forem especificados em pInfo, essa função automaticamente cria esses pedidos classificar. Quaisquer propriedades incluídas naqueles classificar pedidos é definidas automaticamente adicionada à propriedade com suporte pelo banco de dados. Você pode adicionar outras propriedades usando a função CeAddDatabaseProps (EDB). Como classificar pedidos aumentam os recursos de sistema necessários para executar cada inserir e excluir operação, manter o número de classificar Pedidos em um nível mínimo. Você pode usar a função CeSetDatabaseInfoEx (EDB) para alteração de ordem classificar.

CEDB e diferenças da função Edb

O são o principal diferenças entre essa função e o equivalente CEDB função:

  • O OID retornado por essa função não é reconhecido pelo Windows Embedded CE OS como um objeto-armazenar OID. Você pode usar este OID somente em outras funções Edb.
  • Como uma propriedade deve existem em um banco de dados edb antes que pode ser gravado em ou deve ser criada durante a primeira gravação, essa função permite que você defina as propriedades ao criar um banco de dados. As propriedades podem ser alteradas em um tempo posterior usando CeAddDatabaseProps e CeRemoveDatabaseProps.
  • Em Edb, se você não fizer isso especificar uma ordem classificar para o banco de dados, nenhuma ordem classificar é criado Por padrão.
  • Não há nenhum volume sistema na 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)
CeAddDatabaseProps (EDB)
CeRemoveDatabaseProps (EDB)
CeSetDatabaseInfoEx (EDB)
CEDBASEINFOEX (EDB)
CEPROPSPEC (EDB)