16.6.5 SQLCopyDesc
(1) 機能
ディスクリプタ情報をディスクリプタハンドル間でコピーします。
(2) 形式
SQLRETURN SQLCopyDesc ( SQLHDESC SourceDescHandle, /* In */ SQLHDESC TargetDescHandle /* In */ )
(3) 引数
- SourceDescHandle:
-
コピー元のディスクリプタハンドルを指定します。
- TargetDescHandle:
-
コピー先のディスクリプタハンドルを指定します。この引数には,アプリケーションディスクリプタまたはIPDのハンドルを指定できます。この引数には,IRDのハンドルを指定できません。
(4) 戻り値
SQL_SUCCESS,SQL_ERROR,またはSQL_INVALID_HANDLEが返されます。
(5) SQLSTATE
この関数では次のSQLSTATEを返します。
SQLSTATE |
説明 |
備考 |
返却 |
---|---|---|---|
01000 |
一般警告 |
− |
× |
08S01 |
通信リンク失敗 |
× |
|
HY000 |
一般エラー |
× |
|
HY001 |
メモリ割り当てエラー |
○ |
|
HY007 |
関連づけられたステートメントが準備されていない |
○ |
|
HY010 |
関数シーケンスエラー |
この関数を実行する前に,SourceDescHandleまたはTargetDescHandleのディスクリプタハンドルが関連づけられているStatementHandleに対して,SQLExecute,SQLExecDirect,SQLExecDirectWまたはSQLParamDataのどれかが呼び出され,SQL_NEED_DATAを返しました。その後,実行時データパラメタまたは実行時データ列の設定が完了していません。 |
○ |
HY013 |
メモリ管理エラー |
− |
× |
HY016 |
インプリメンテーション行ディスクリプタを変更できない |
TargetDescHandleがIRDと関連づけられました。 |
○ |
HY021 |
ディスクリプタ情報の不一致 |
− |
× |
HY092 |
無効な属性識別子,または無効なオプション識別子 |
× |
|
HYT01 |
接続タイムアウト終了 |
× |
|
IM001 |
ドライバはこの関数をサポートしていない |
× |
- (凡例)
-
○:HADB ODBCドライバが返すこと性があるSQLSTATEです。
×:HADB ODBCドライバが返さないSQLSTATEです。
−:なし。
(6) 注意事項
戻り値にSQL_SUCCESS以外が返却された場合,CompletionTypeにSQL_ROLLBACKを指定したSQLEndTran,またはHandleTypeにSQL_HANDLE_STMTを指定したSQLFreeHandleを実行してください。