Append メソッド (ADO)

オブジェクトをコレクションに追加します。 コレクションが フィールドの場合は、コレクションに追加する前に新しい Field オブジェクトを作成できます。

構文

  
collection.Append object  
fields.Append Name, Type, DefinedSize, Attrib, FieldValue  

パラメーター

表す
コレクションオブジェクト。

fields
フィールド コレクション。

object
追加するオブジェクトを表すオブジェクト変数。

名前
新しい フィールド オブジェクトの名前を含む 文字列 値。フィールド 内の他のオブジェクトと同じ名前にすることはできません。

Type
新しいフィールドのデータ型を指定する DataTypeEnum 値 (既定値は adEmpty)。 次のデータ型は ADO ではサポートされていません。また、レコードセットオブジェクト (ADO)に新しいフィールドを追加するときには使用しないでください。この ようなデータ 型は、実行 ディスパッチ、指定されていない、 advariant です。

DefinedSize
省略可能。 新しいフィールドの定義されたサイズ (文字数またはバイト数) を表す Long 型 の値。 このパラメーターの既定値は、 から派生します。 255 バイトを超える値が 設定されているフィールドは、可変長列として扱われます。 既定値は、 指定されてい ません。

Attrib
省略可能。 新しいフィールドの属性を指定する FieldAttributeEnum 値 (既定値は Adflddefault)。 この値が指定されていない場合、フィールドには から派生した属性が格納されます。

FieldValue
省略可能。 新しいフィールドの値を表す バリアント 。 指定しない場合、フィールドには null 値が付加されます。

注釈

Parameters コレクション

Parametersコレクションに追加する前に、 ParameterオブジェクトのTypeプロパティを設定する必要があります。 可変長データ型を選択する場合は、 Size プロパティも0より大きい値に設定する必要があります。

パラメーターの記述によってプロバイダーの呼び出しが最小化されるため、ストアドプロシージャまたはパラメーター化クエリを使用すると、パフォーマンスが向上します。 ただし、呼び出すストアドプロシージャまたはパラメーター化クエリに関連付けられているパラメーターのプロパティを把握しておく必要があります。

Createparameterメソッドを使用して、適切なプロパティ設定を持つ パラメーター オブジェクトを作成し、 Append メソッドを使用して Parametersコレクションに追加します。 これにより、パラメーター情報のプロバイダーを呼び出さなくても、パラメーター値を設定して返すことができます。 パラメーター情報を提供しないプロバイダーに書き込む場合は、パラメーターを使用するために、このメソッドを使用して パラメーター コレクションを手動で設定する必要があります。

Fields コレクション

FieldValue パラメーターが有効なのは、レコード セット オブジェクトではなく、レコードオブジェクトに フィールド オブジェクトを追加する場合のみです。 レコード オブジェクトを使用すると、フィールドを追加し、同時に値を指定できます。 レコード セットオブジェクトを使用する場合は、レコードセット が閉じられている間にフィールドを作成し、レコードセット を開き、フィールドに値を割り当てる必要があります。

注意

レコード オブジェクトの Fields コレクションに追加された新しい Field オブジェクトの場合は、他の フィールド プロパティを指定する前に、 Valueプロパティを設定する必要があります。 最初に、 プロパティの特定の値が割り当てられており、という フィールド コレクションで 更新されている必要があります。 その後、 属性 などの他のプロパティにアクセスできます。 次のデータ型 (DataTypeEnum) の フィールド オブジェクトを フィールド コレクションに追加することはできません。エラーが発生します: adarrayadarrayadEmptyadpropvariant、および adarray。 また、ADO で は、次 のデータ型はサポートされていません: の形式で は、実行****できません。 これらの型では、追加されてもエラーは発生しませんが、メモリリークなどの予期しない結果が発生する可能性があります。

レコードセット

追加 メソッドを呼び出す前に [カーソルの場所] プロパティを設定しなかった場合、レコードセットオブジェクトの Openメソッドが呼び出されると、カーソル位置adUseClient (カーソル位置列挙値) に自動的に設定されます。

開いている レコードセットFields コレクションまたは ActiveConnectionプロパティが設定されている レコードセットAppend メソッドが呼び出されると、実行時エラーが発生します。 フィールドを追加できるのは、開かれておらず、まだデータソースに接続されていない レコードセット だけです。 これは、通常、 レコードセット オブジェクトが CreateRecordset メソッドを使用して、またはオブジェクト変数に割り当てられている場合に当てはまります。

Record

開いている レコードフィールド コレクションで Append メソッドが呼び出された場合、実行時エラーは発生しません。 新しいフィールドが レコード オブジェクトの フィールド コレクションに追加されます。 レコード がレコード セット から派生した場合、新しいフィールドは レコードセット オブジェクトの フィールド コレクションに表示されません。

存在しないフィールドは、コレクションに既に存在しているかのように、フィールドオブジェクトに値を割り当てることによって作成し、 フィールド コレクションに追加できます。 割り当てによって、 Field オブジェクトの自動作成と追加がトリガーされ、割り当てが完了します。

レコード オブジェクトの Fields コレクションに フィールド を追加した後、 fields コレクションの Update メソッドを呼び出して変更を保存します。

適用対象

参照

Append および CreateParameter メソッドの例 (VB)
Append および CreateParameter メソッドの例 (VC++)
CreateParameter メソッド (ADO)
Delete メソッド (ADO Fields コレクション)
Delete メソッド (ADO Parameters コレクション)
Delete メソッド (ADO Recordset)
Update メソッド