コンテンツエリア開始

This graphic is explained in the accompanying text UPDATE COLUMNS Locate the document in its SAP Library structure

UPDATE COLUMNS コマンドを使用して、テーブルの個別の列値を変更することができます。

前提条件

デモデータベース DEMODB が必要です。

指定したテーブルがデータベースで利用可能である必要があります。データベース管理者 MONA としてローダを起動し、デモデータベース DEMODB にログオンします。Structure linkセッションモードを使用します。

loadercli -d demodb -u mona,red

HOTEL スキーマの CUSTOMER テーブルのデータを変更します。

キーワードTABLE の後にテーブルと列の内容説明を指定することができます。ターゲット列の列定義は、キーワード SET の後に指定します。

キーワード DATA の後にエントリを入力し、設定する新しい列値を制御します。

テーブル列の値の更新

テーブルの列値を更新することができます。

UPDATE COLUMNS TABLE hotel.customer
      
cno     1
  SET address 5

  
DATA INSTREAM 'customer_csv.data'

アプリケーションデータ(DATA) は、CSV 書式 (デフォルト値) で変更されます。

CNO 列は修飾列です。CUSTOMER テーブルでは、列値を更新するための行が選択され、これらは customer_csv.data に指定された CNO 値によって修飾されます。これらの各行の ADDRESS 値は、customer_csv.data に指定された ADDRESS 値によって置き換えられます。

UPDATE COLUMNS TABLE hotel.customer
      cno     1-5
  SET address 76-116
  
DATA INSTREAM 'customer_fwv.data' FWV

アプリケーションデータ(DATA) は、FWV 書式で変更されます。

UPDATE COLUMNS TABLE hotel.customer
      cno     1-5
  SET address 76-116
  DATA INSTREAM 'customer_fwvbinary.data'
FWV BIMARY

アプリケーションデータ(DATA) は、FWV BINARY 書式で変更されます。

参照:

ローダStructure linkデータストリームStructure linkCSVFWVFWV BINARY

複数のテーブル列の値の更新

テーブル内の複数の列値を更新することができます。

UPDATE COLUMNS TABLE hotel.customer
     
 cno       1
  
SET firstname 'Secret'
  SET address   5
  
DATA INSTREAM 'customer_csv.data'

CNO 列は修飾列です。CUSTOMER テーブルでは、列値を更新するための行が選択され、これらは customer_csv.data に指定された CNO 値によって修飾されます。これらの各行の FIRSTNAME 値は、値 Secret によって置き換えられます。これらの各行の ADDRESS 値は、customer_csv.data に指定された ADDRESS 値によって置き換えられます。

if_condition

DATA データストリームから個別のデータレコードを選択し、指定したテーブル内のこれらのレコードのみを更新することができます。構文要素の順序に注意してください。IF 条件を最初に入力します。

UPDATE COLUMNS TABLE hotel.customer
  IF POS 1 > '4000'
      cno     1
  SET address 5
  DATA INSTREAM 'customer_csv.data'

CNO 列で値が4000 を超える行がCUSTOMER テーブルで更新されます。

LONG 値の処理

HOTEL スキーマの HOTEL テーブルのデータを更新します。HOTEL テーブルには LONG INFO があります。DATA 構文要素の後に LOB 構文要素を入力します。

UPDATE COLUMNS TABLE hotel.hotel
      hno  1
  SET name 2
  SET info 5
  DATA INSTREAM 'hotel_csv.data'
  
LOB INSTREAM INFO 'hotel_info_csv.long'

HOTEL テーブルの NAME および INFO 列が更新されます。LONG 値は、データストリーム hotel_info_csv.long に保存されます。

参照:

ローダStructure linkLONG 値のエクスポートとインポート

UPDATE COLUMNS コマンドの完全な構文

構文オプションを組み合わせると、それに応じて複雑なコマンドになります。

UPDATE COLUMNS TABLE hotel.customer
  IF POS 1 > '4000'
      cno       1
  SET firstname 'Secret'
  SET address   5
  DATA INSTREAM FILE 'customer_csv.data' CSV

完全な構文の内容説明については、ローダ文書の Structure linkUPDATE COLUMNS コマンドを参照してください。

参照:

エクスポート用のコマンド

インポート用のコマンド

 

 

コンテンツエリア終了