# EssCreateDatabase

Description

EssCreateDatabase() creates a new database within an application, either on the client or the server. If the database is created on the server, it is also started.

Syntax

    ESS_FUNC_M EssCreateDatabase (hCtx, AppName, DbName, DbType);

ESS_HCTX_T | hCtx
ESS_STR_T | AppName
ESS_STR_T | DbName
ESS_USHORT_T | DbType

Parameters

hCtx | Essbase API context handle.
AppName | Name of application to contain database.
DbName | Name of database to create. Database names can be 8 characters long, and can contain all special characters allowed in DOS file names. No spaces, commas, tabs, slashes, backslashes, or periods are allowed. The use of some special characters is not recommended because they are often used by the operating system (for example, @, $, %, and &).
DbType | Type of database to create. Can be ESS_DBTYPE_NORMAL, or ESS_DBTYPE_CURRENCY

Return Value

None.

Notes

- Creating a client database creates a directory to contain local database files.
- A newly created database or application is not automatically set to active. Call EssSetActive() after calling EssCreateDatabase() or EssCreateApplication() to keep subsequent functions, such as EssRestructure(), from operating on the wrong database or application (the application or database that is already active).

Access

For a server database, the caller must have database Create/Delete/Edit privilege (ESS_PRIV_DBCREATE).

Example

    ESS_FUNC_M
    ESS_CreateDb (ESS_HCTX_T  hCtx)
    {
       ESS_FUNC_M        sts = ESS_STS_NOERR;
       ESS_STR_T        AppName;
       ESS_STR_T        DbName;

       AppName = "Sample";
       DbName  = "Basic";

       sts = EssCreateDatabase(hCtx, AppName, DbName, ESS_DBTYPE_NORMAL);
       return (sts);
    }

See Also

EssCreateApplication()
EssCreateObject()