クライアント上またはサーバー上の既存のデータベースを、関連するすべてのデータベースおよびオブジェクトも含めて、新規のデータベースにコピーします。サーバーにデータベースがコピーされた場合、新しいデータベースが起動されます。
構文
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); }
関連トピック