CeCreateDatabase (CEDB) (Compact 2013)


This function creates a new database. This function is obsolete. Call CeCreateDatabaseEx2 (CEDB) instead.


CEOID CeCreateDatabase(
  LPWSTR lpszName, 
  DWORD dwDbaseType, 
  WORD wNumSortOrder, 


  • lpszName
    [in] Long pointer to a null-terminated string that specifies the name for the new database. The name can have up to 32 characters, including the terminating null character. If the name is too long, it is truncated, and the database is created. Do not use an empty string as the database name.
  • dwDbaseType
    [in] Type identifier for the database. This is an application-defined value that can be used for any application-defined purpose. For example, an application can use the type identifier to distinguish address book data from to-do list data or use the identifier during a database enumeration sequence. For more information, see CeFindFirstDatabase (CEDB). The type identifier is not meant to be a unique identifier for the database. The system does not use this value.
  • wNumSortOrder
    [in] Number of sort orders active in the database, with 4 being the maximum number. This parameter can be set to zero if no sort orders are active. If this value is set to zero, the database engine creates a default sort order in which rgSortSpecs[0].propid = 0. This is only a placeholder and does not influence the insertion order of the records.
  • rgSortSpecs
    [in] Pointer to an array of actual sort order descriptions. The size of the array is specified by wNumSortOrder. This parameter can be set to NULL if wNumSortOrder is zero.

Return Value

The object identifier of the newly created database indicates success. NULL indicates failure. To get extended error information within a Windows Embedded Compact program, call GetLastError. The following table lists possible values.




Indicates that the destination source does not contain enough space to create the new database.


Indicates that a parameter was invalid.


Indicates that a database already exists with the specified name.


Because sort orders increase the system resources needed to perform each insert and delete operation, keep the number of sort orders to a minimum. Use the CeSetDatabaseInfo (CEDB) function to change the sort order later.






See Also


CEDB Functions
CeCreateDatabaseEx (CEDB)
CeCreateDatabaseEx2 (CEDB)
CeDeleteDatabaseEx (CEDB)
CeOidGetInfoEx (CEDB)
CeOpenDatabaseEx (CEDB)
CeSetDatabaseInfoEx (CEDB)