CeSetDatabaseInfoEx (CEDB) (Compact 2013)
3/26/2014
This function sets database parameters, including the name, type, sort-order descriptions, and compression of the database. This function is obsolete. Call the CeSetDatabaseInfoEx2 (CEDB) function instead.
Syntax
BOOL CeSetDatabaseInfoEx(
PCEGUID pceguid,
CEOID oidDbase,
CEDBASEINFO* pNewInfo
);
Parameters
- pceguid
[in] Pointer to the CEGUID that contains the globally unique identifier (GUID) of a mounted database volume or of the object store. Use the CREATE_SYSTEMGUID macro to obtain the GUID of the object store.
- oidDbase
[in] Object identifier of the database for which parameters are to be set.
- pNewInfo
[in] Pointer to a CEDBASEINFO [CEDB] structure that contains new parameter information for the database. The wNumRecords member of the structure is not used.
Return Value
TRUE indicates success. FALSE indicates failure. To get extended error information, call GetLastError. The following table lists possible values.
Value |
Description |
---|---|
ERROR_DISK_FULL |
Indicates that the object store or mounted volume is full, and any size changes required could not be accommodated. Changing sort orders can minimally change the size of the stored records. |
ERROR_INVALID_PARAMETER |
Indicates that a parameter was invalid. |
ERROR_SHARING_VIOLATION |
Indicates that this function tried to remove a sort order that is being used by a currently open database. |
Remarks
Use this function to change the database parameters passed in while creating the database. Changing the sort order or compression of a database is a very expensive operation, possibly taking a few minutes. Before calling this function, warn the user that this is a lengthy process. You cannot change the sort order if someone else has this file open.
The sort orders of a database cannot be changed while a handle to that database remains open.
Changing the compression of a database affects only new and modified records.
If you attempt to change the information for an existing database and pass the CEDB_VALIDNAME flag in the dwFlags member of the CEDBASEINFO [CEDB] structure, you receive an error stating that there is an existing database with that name. If you do not want to change the database name, do not set the CEDB_VALIDNAME flag. Only the flags for the parameters that are changing should be set. For parameters that are not changing, do not set the corresponding CEDB_VALID* flag.
Requirements
Header |
windbase.h |
Library |
coredll.lib |
See Also
Reference
CEDB Functions
CeCreateDatabaseEx (CEDB)
CeOidGetInfoEx (CEDB)
CEDBASEINFO [CEDB]
CREATE_SYSTEMGUID
CeSetDatabaseInfoEx2 (CEDB)