ダイレクト更新には、ShunUpdateKey関数を使用します。
C APIでのダイレクト更新の流れについて、以下の図に示します。
図6.14 ダイレクト更新の流れ
記述例
/* 以下のように用意されていることを仮定しています */ /* updateData :更新データ */ /* pKey :ダイレクトアクセスキーを設定する構造体配列 */ SHUNHSTMT StmtH; /* データ操作ハンドルの割当て */ ShunAllocHandle(ConH, &StmtH); /* ダイレクトアクセスキーによる更新を実行 */ pKey[0].Key = "20061101,00000001"; (1) pKey[0].Key_Len = strlen( pKey[0].Key ); pKey[1].Key = "20061101,00000002"; (1) pKey[1].Key_Len = strlen( pKey[1].Key ); pKey[2].Key = "20061101,00000003"; (1) pKey[2].Key_Len = strlen( pKey[2].Key ); ShunUpdateKey(StmtH, "key1", SHUN_KEY_COMPLETE_MATCH, 3, pKey, updateData); (2) /* データ操作ハンドルの解放 */ ShunFreeHandle(StmtH); |
構造体SHUNKEYにダイレクトアクセスキーを設定します。
ShunUpdateKey関数に、データ操作ハンドル、ダイレクトアクセスキー名、更新するデータ件数、更新するダイレクトアクセスキー、更新するデータを指定し、更新を実行します。
ポイント
ShunUpdateKey関数では、複数のダイレクトアクセスキー、対応するデータを指定することで、一度に複数のXML文書を更新することができます。
参照
ダイレクトアクセスのサンプルプログラムは、“J.3.4 ダイレクトアクセスキーを使用してデータを更新する”を参照してください。