クライアント上またはサーバー上の既存のデータベースを、関連するすべてのデータベースおよびオブジェクトも含めて、新規のデータベースにコピーします。サーバーにデータベースがコピーされた場合、新しいデータベースが起動されます。
構文
ESS_FUNC_M EssCopyDatabase (
hCtx, hSrcCtx, SrcApp, DestApp, SrcDb, DestDb
);
| パラメータ | データ型 | 説明 |
|---|---|---|
hCtx |
ESS_HCTX_T |
APIコンテキスト・ハンドル。 |
hSrcCtx |
ESS_HCTX_T |
使用されていません - hCtxと同じになります。 |
SrcApp |
ESS_STR_T |
ソース・アプリケーション名。 |
DestApp; |
ESS_STR_T |
宛先アプリケーションの名前。 |
SrcDb; |
ESS_STR_T |
コピーする既存のデータベース名。 |
DestDb |
ESS_STR_T |
新規データベースの名前。データベース名の制限を参照してください。 |
備考
クライアントのデータベースをコピーすると、ローカル・データベースのディレクトリとコンテンツもコピーされます。
この関数は、クライアントのデータベースをクライアント上の別のデータベースにコピーする場合、またはサーバーのデータベースを同じサーバー上の別のデータベースにコピーする場合にのみ使用できます。異なるサーバー間でデータベースをコピーする場合は、EssCopyObjectを使用します。
戻り値
なし。
アクセス
サーバー・データベースの場合、呼出し元がデータベースの作成/削除/編集権限(ESS_PRIV_DBCREATE)およびコピー元のソース・データベースに対するデータベース・デザイナ権限(ESS_PRIV_DBDESIGN)を持っている必要があります。
例
ESS_FUNC_M
ESS_CopyDatabase(ESS_HCTX_T hCtx)
{
ESS_FUNC_M sts = ESS_STS_NOERR;
ESS_HCTX_T hSrcCtx;
ESS_STR_T SrcApp;
ESS_STR_T DestApp;
ESS_STR_T SrcDb;
ESS_STR_T DestDb;
hSrcCtx = hCtx;
SrcApp = "Sample";
DestApp = "NewSamp";
SrcDb = "Basic";
DestDb = "NewBasic";
sts = EssCopyDatabase(hCtx, hSrcCtx, SrcApp,
DestApp, SrcDb, DestDb);
return(sts);
}
関連トピック