Hitachi

DBPARTNER2 Client 操作ガイド


5.2.1 操作

〈この項の構成〉

(1) 操作の流れ

DBPARTNER2のウィンドウでデータを更新する操作について説明します。

入力例を次に示します。

  1. 更新するデータを抽出します。

    抽出する表,抽出する列,抽出条件を設定します。ソート条件と件数制限は必要に応じて設定します。

    転送先は「[データ表示]ウィンドウ」にします。

    設定したら[抽出(E)]ボタンをクリックしてデータの抽出を実行します。

    [図データ]

    [抽出経過表示]ダイアログボックスが表示され,設定した抽出条件でDBPARTNER2がデータを抽出し,転送されます。実行経過は,グラフにパーセントで表示されます。

    [キャンセル]ボタンをクリックすると,データの抽出処理が中断されます。

  2. 更新するデータを編集します。

    抽出が終わると[データ表示]ウィンドウが表示されます。

    は抽出したデータを基にデータを編集し,データベースを更新するデータを作成します。

    参照:「5.2.3 更新するデータの作成

    [図データ]

  3. データベースを更新します。

    [データ表示]ウィンドウで[更新(U)]−[実行(R)]メニューを選びます。

    [図データ]

    [更新経過表示]ダイアログボックスが表示され,編集した内容でDBPARTNER2がデータベース中の該当するデータが更新されます。実行経過は,グラフにパーセントで表示されます。

    [キャンセル]ボタンをクリックするとデータの更新処理が中断されます。

    正常に終了すると,[更新経過表示]ダイアログボックスが閉じて,[DBPARTNER2]ウィンドウに戻ります。

これで,データの更新が終わりました。

抽出処理を中断した場合

ODBC接続で他社データベースにアクセスしている場合は,中断できないことがあります。

更新処理を中断した場合

次の場合,更新処理が中断されます。

  • データベースを更新中に[キャンセル]ボタンをクリックする

  • 更新処理中にエラーが発生する

更新処理が中断された場合,それまでの処理が有効か無効かを決定する方法を,接続先定義ファイルのパラメタによって指定できます。

接続先定義ファイルのUPDFINパラメタを指定すると,その指定によって,更新処理を有効にするかを確認するメッセージが出力されるので,そこで処理の有効・無効を決定できます。ただし,UPDFINパラメタの指定を省略すると,確認のメッセージが出力されないで,更新処理が無効になります。

CommuniNet接続の場合,UPDFINパラメタを指定するときにはTRNHANDLEパラメタをDBPARTNERと指定してください。

(2) データを更新するときの制限

DBPARTNER2の制限で,更新するデータを抽出できない場合があります。

(a) 更新用データ抽出時の制限

次に示す表は,更新できません。

  • 倍精度数値又は単精度数値属性の列を含む表

    更新条件の解除,又は接続先定義ファイルの設定で,UPDUNITパラメタをROWIDに設定することで対応できます。

  • 列の定義長が4097バイト以上の列を含む表

  • 16進文字の列で列の定義長が2048バイト以上の列を含む表

  • DABrokerドライバ(DBPARTNER/Serverドライバ)を経由してデータベースにアクセスする場合,次の計算式をどちらも満たす表でないと抽出できません。

    92+Σ列数(20+↑ 列名長 ↑)≦65536

    52+Σ列数(20+↑列の定義長↑)≦65536

    注※ 4の倍数に切り上げ

  • ODBC接続の場合,属性が,VARBINARYの列がある

  • ODBC接続のVOS1 PDM II E2で,接続先定義ファイルのUPDINITパラメタにROWIDを指定している場合,データの削除と変更を一度に実行した表

  • DABrokerドライバ(DBPARTNER/Serverドライバ)を経由してORACLEにアクセスする場合,属性がLONG VARCHARの列がある

  • 列数が256以上ある

  • グループ分け,又は集合関数が設定されている

  • [列設定]ダイアログボックスで列を追加,削除した,又は列の順序を並べ替えた場合,抽出できません。ただし,情報ファイルで設定すれば,選択できます。詳細は,「2.5.2(8) 列選択をした状態での更新に関する設定−UpdateOptionセクション」を参照してください。

  • 複数表が選択されている

  • 更新条件となる列がない([列選択]ダイアログボックスの[列一覧]ですべての列に*がついている)場合は更新できません。

抽出したデータを表示する[DBPARTNER更新]ウィンドウの領域によって,抽出できる行に次の制限があります。

  • 20,000行以上ある表の場合,20,000行以降は,切り捨てられ表示されません。

    20,000行以降のデータが必要な場合は,抽出条件を変更して再度抽出してください。

(b) 更新時の制限

データベースの表のデータを変更するときは,次に示す制限があります。

  • 抽出データを編集しデータベースを更新した後,再度,同じ抽出データを編集してデータベースを更新できません。同じ抽出データを更新したい場合は,抽出し直してください。ただし,データ編集時に抽出データを全く変更しなければ,データベースは更新されないので,抽出し直す必要はありません。

  • 接続先定義ファイルのUPDUNITパラメタでBLOCKを指定している場合には,ナル値を含むデータの変更と削除はできないので注意してください。ただし,接続先定義ファイルの設定で対応できます。

    参照: 「2.4 接続先定義ファイルの作成」のUPDUNIT

更新するデータを編集する領域によって,更新できる行には次に示す制限があります。

  • 一度の更新操作では,データベース19,999行分のデータが更新できます。20,000行以上のデータを更新する場合は,データベースへの更新が終了後,再度抽出し,[データ表示]ウィンドウで更新するデータを作成し,データベースを更新してください。

(3) データを更新するときの注意

DBPARTNER2以外の制限によって,データの更新には次に示す注意があります。

DBPARTNER2以外の制限(データベースの制限)については,「8.1.4 更新処理の規則」を参照してください。