LCConnection の Insert メソッド

このメソッドは、コネクションメタデータに指定された数のレコードを挿入します。例えば、DB2® の定義された METADATA オブジェクトに 1 つ以上のレコードを挿入します。

注: 同じターゲットからデータを挿入する Insert メソッドでは、同じフィールドリストを続けて使用するとパフォーマンスが向上します。

定義位置

LCConnection

構文

count = lcConnection.Insert(srcFieldlist, recordIndex, recordCount)

パラメータ

パラメータ

説明

srcFieldlist

LCFieldlist。挿入するレコードが格納されているフィールドリスト。フィールドリスト内の LCFIELDF_NO_INSERT フラグが設定されていない各フィールドに、結果セット内の該当するフィールドのデータがコピーされます。結果セットとフィールドリストのフィールドは、MapByName プロパティが TRUE の場合は名前で、それ以外の場合は位置でマッチングされます。また、データの挿入前にデータ型がチェックされます。

recordIndex

Long。オプション、1 以上。フィールドリスト内の挿入の開始レコードの索引。デフォルトは、1 です。

recordCount

Long。オプション、1 以上。挿入するレコード数。エラーが発生した場合には、実際に挿入されたレコード数がこの数より少なくなることがあります。すべての Connector で複数レコードの挿入が可能です。ただし本当の複数レコードの挿入が実行されるのは Array Insert のサポートが指定された Connector のみです。その場合、ネットワークトラフィックが削減され、パフォーマンスが向上します。デフォルトは 1 です。

recordCount パラメータを使用して複数レコードを書き込む場合、または recordIndex に 1 より大きい値を指定する場合には、複数行のデータを格納するよう割り当て済みの destFieldList を指定します。詳しくは、LCFieldlist の New メソッドを参照してください。

戻り値

説明

count

Long。挿入に成功したレコード数

使用法

複数レコードの挿入オペレーションの途中でエラーがあった場合、エラーイベントが発生します。エラー発生時までの変更内容はコミットされません。Action メソッドを使用してロールバックまたはコミットする必要があります。

Option Public
Uselsx "*lsxlc" 

Sub Initialize
  Dim src As New LCConnection ("db2") 
  Dim fields As New LCFieldList (5)
  Dim field As LCField
  Dim data(4) As String
  Dim idata(4) As Long

  ' set the appropriate properties to connect to the data sources
  src.Database = "Gold"
  src.Userid = "JDoe"
  src.Password = "xyzzy"
  src.Metadata = "customer"
  src.MapByName = True
  ' connect to the two data sources
  src.Connect

  ' use a key to find certain records to remove
  Set field = fields.Append ("ACCOUNTMANAGER", LCTYPE_INT)
  idata(0) = 100
  idata(1) = 200
  idata(2) = 300
  idata(3) = 400
  idata(4) = 500
  field.value = idata
  Set field =  fields.Append ("CONTACTNAME", LCTYPE_TEXT)
  data(0) = "Peter Pan"
  data(1) = "Big Steel"
  data(2) = "R. U. Happy"
  data(3) = "Isaac Bernard Mathews"
  data(4) = "Paula Falderall"
  field.value = data
  Set field = fields.append ("COMPANYADDRESS", LCTYPE_TEXT)
  data(0) = "One Bit Tree"
  data(1) = "Gurder Way"
  data(2) = "Daisy Hill Pup Farm"
  data(3) = "Big Blue Ave."
  data(4) = "Planet Holly"
  field.value = data
  Set field = fields.Append ("COMPANYCITY", LCTYPE_TEXT)
  data(0) = "Never Never"
  data(1) = "Iron"
  data(2) = "Beagle"
  data(3) = "New York"
  data(4) = "Parthenon"
  field.value = data
  Set field = fields.Append ("COMPANYSTATE", LCTYPE_TEXT)
  data(0) = "Land"
  data(1) = "PA"
  data(2) = "WI"
  data(3) = "NY"
  data(4) = "AQ"
  field.value = data
  ' Create new records from the five records in the fieldlist.
  Print "Inserted " & Cstr (src.Insert (fields, 1, 5)) & " record(s)."
End Sub

出力例

Inserted 5 record(s).