Field オブジェクト (バージョン 2.0、2.1、2.5、2.6)
Dim field As ADODB.Field

Field オブジェクトは、Recordset オブジェクトまたは Record オブジェクトの Fields コレクション内の個々の列を表します。Field は、そのデータタイプ、サイズ、および精度を定義するメタデータプロパティを保持します。

Field.ActualSize プロパティ (バージョン 2.0、2.1、2.5、2.6)

actualsize = field.ActualSize
 

ActualSize プロパティは、フィールドの値の実際の長さを返します。

データタイプ

Long

 
説明

ActualSize プロパティは、許容される最大バイト数 (DefinedSize プロパティで示される) ではなく、指定フィールドに格納されているバイト数を示す数字を返します。Field オブジェクトの値の長さを ADO で判別できない場合は、adUnknown が返されます。

 
関連項目

Field.DefinedSize プロパティ

 
Field.AppendChunk (バージョン 2.0、2.1、2.5、2.6)

field.AppendChunk Data
 

AppendChunk メソッドは、データを大きなデータまたはバイナリフィールドに追加するために使用されます。

パラメータ
Data (Variant)

現在の Field オブジェクトに追加する大量のデータを保持します。

 
説明

AppendChunk メソッドは、大量のテキストまたはバイナリデータを既存の Field オブジェクトに追加します。これは、実行する操作に必要なメモリに比べて、現在のシステムのメモリが限定されている場合に非常に便利です。AppendChunk メソッドを使用すると、データを適切な単位で段階的に Field オブジェクトに追加できます。

AppendChunk メソッドを Field オブジェクトと併用できるのは、Field オブジェクトの Arguments プロパティの adFldLong ビットが True に設定されている場合だけです。

最初に AppendChunk メソッドを呼び出すと、そのフィールドに存在しているデータが上書きされます。その後 AppendChunk メソッドを呼び出すたびに、データが既存のデータの末尾に追加されます。その後同じレコードセット内の別のフィールドのデータが読み書きされたときに、ADO では、レコードセット内の特定フィールドへのデータの追加が完了したものとみなします。つまり、元のフィールドで再度 AppendChunk メソッドを呼び出すと、それがこのメソッドの最初の呼び出しであるかのように、データが再度クリアされます。別の Recordset オブジェクト内のデータを読み書きしても、元の Recordset オブジェクトのクローンでない限り、このアクションは発生しません。

 
関連項目

Field.Attributes プロパティ、FieldAttributeEnum 列挙

 
Field.Attributes プロパティ (バージョン 2.0、2.1、2.5、2.6)

field.Attributes = attributes
 

Attributes プロパティは、Field オブジェクトに固有の属性を設定または返します。

データタイプ

Long

 
説明

Attributes プロパティは読み取り専用で、付録 E に示す FieldAttributesEnum 列挙の値の合計である場合もあります。この列挙は、Field オブジェクトの属性 (更新可能かどうか、行識別子を表すかどうかなど) を示します。

 
関連項目

FieldAttributesEnum 列挙

 
Field.DataFormat プロパティ (バージョン 2.0、2.1、2.5、2.6)

 
 

DataFormat プロパティは、現在の Field オブジェクトをデータバインドコントロールにリンクします。

データタイプ

StdDataFormat

 
説明

DataFormat プロパティは、読み取りおよび書き込みのどちらも可能です。バインドされたオブジェクトを連結する StdDataFormat オブジェクトを受け入れ、返します。

Field オブジェクトの DataFormat プロパティは、ADO ヘルプファイルに記載されていません。ただし、DataFormat プロパティは、ADO 以外の他の Microsoft オブジェクトで使用されています。

 
Field.DefinedSize プロパティ (バージョン 2.0、2.1、2.5、2.6)

definedsize = field.DefinedSize
 

DefinedSize プロパティは、Field オブジェクトのデータタイプの容量サイズをバイト単位で表します。

データタイプ

Long

 
説明

DefinedSize プロパティは、Field オブジェクトの Value プロパティのデータ容量をバイト単位で判別します。このプロパティは、ActualSize プロパティとは異なります。後者のプロパティは、定義済みのデータタイプのサイズのうち実際に使用されているバイト数を示します。

 
関連項目

Field.ActualSize プロパティ

 
Field.GetChunk メソッド (バージョン 2.0、2.1、2.5、2.6)

Set value = field.GetChunk(NumBytes)
 

GetChunk メソッドは、指定されたフィールドから指定された数のバイトまたは文字を返します。

パラメータ
NumBytes

NumBytes パラメータは、受け取るバイト数または文字数を表す Long 型の値です。

 
戻り値

Variant

 
説明

GetChunk メソッドは、開いている Recordset オブジェクトの Fields コレクションに属する Field オブジェクトから情報を取得します。Field オブジェクトの Arguments プロパティを adFldLong に設定すると、そのフィールドで GetChunk メソッドを使用できます。

GetChunk への最初の呼び出しでは、メソッド呼び出しで指定したバイト数だけフィールドの先頭から取得します。その後の GetChunk への呼び出しではすべて、GetChunk への最後の呼び出しでの停止位置を先頭としてデータが返されます。Field オブジェクト内のバイト数や文字数が要求した数より少ない場合、差異を埋めずに残りだけが返されます。

同じ Recordset オブジェクト (そのレコードセットのクローンでないオブジェクト) 内の別のフィールドに対して読み書きを行うと、ADO では、該当する Field オブジェクトからの取得を完了したとみなします。GetChunk への次の呼び出しは、最初の呼び出しであるかのように実行され、要求した最初のバイト数または文字数が取得されます。

 
関連項目

Field.Arguments プロパティ

 
Field.Name プロパティ (バージョン 2.0、2.1、2.5、2.6)

Set value = field.GetChunk(NumBytes)
 

Name プロパティは、現在の Field オブジェクトの名前を指定します。

データタイプ

String

 
説明

Name プロパティは、Fields コレクションから Field オブジェクトを取得します。名前はコレクション内で一意である必要はありません。

 
Field.NumericScale プロパティ (バージョン 2.0、2.1、2.5、2.6)

field.NumericScale = numericscale
 

NumericScale プロパティは、現在の Field オブジェクトの数値のサイズを示します。

データタイプ

Byte

 
説明

読み取り専用の NumericScale プロパティは、数値を保持している Field オブジェクトの小数点以下のバイト数を識別します。

 
Field.OriginalValue プロパティ (バージョン 2.0、2.1、2.5、2.6)

originalvalue = field.OriginalValue
 

OriginalValue プロパティは、変更が行われる前にフィールドに格納されていた値を返します。

データタイプ

Variant

 
説明

即時モードでは、OriginalValue プロパティは、変更が行われる前の現在のレコード内のフィールド値を返します。つまり、OriginalValue プロパティは、最後に Update メソッドが呼び出したときのフィールドの値となります。この値は、CancelUpdate メソッドの呼び出し時に Field オブジェクト内で置き換えられます。

バッチ更新モードでは、OriginalValue プロパティは、変更が行われる前の現在のレコード内のフィールド値を返します。つまり、OriginalValue プロパティは、最後に UpdateBatch メソッドが呼び出したときのフィールドの値となります。この値は、CancelBatch メソッドの呼び出し時に Field オブジェクト内で置き換えられます。

 
関連項目

Recordset.CancelBatch メソッド、Recordset.CancelUpdate メソッド、Recordset.Update メソッド、Recordset.UpdateBatch メソッド

 
Field.Precision プロパティ (バージョン 2.0、2.1、2.5、2.6)

precision = field.Precision
 

Precision プロパティは、現在の Field オブジェクト内の数値の精度を表します。

データタイプ

Byte

 
説明

Precision プロパティは、Field オブジェクトでは読み取り専用です。このプロパティは、数値 Field オブジェクトの値の表現に使用される、総桁数を示すバイト値を返します。

 
Field.Properties コレクション (バージョン 2.0、2.1、2.5、2.6)

Set properties = field.Properties
 

Properties コレクションは、現在使用されているプロバイダの Field オブジェクトに固有の属性を保持します。

データタイプ

Properties (Collection オブジェクト)

 
説明

Properties コレクションクラスは、データプロバイダの Field オブジェクトに固有の各プロパティに対する、Property クラスのインスタンスを保持します。

 
Field.Status プロパティ (バージョン 2.5、2.6)

status = field.Type
 

State プロパティは、現在の Field オブジェクトの状態を示します。

データタイプ

FieldStatusEnum

 
説明

Status プロパティのデフォルト値は adFieldOK です。

Record または Recordset の Update メソッド呼び出し後にエラーが発生した場合、各 Field オブジェクトの Status プロパティは、問題を記述する FieldStatusEnum 列挙の値に設定されます。

Fields コレクションに対して Field オブジェクトの追加および削除を行う場合、Status プロパティは、これらのオブジェクトが正常に追加または削除されたかどうかを通知できます。

Status プロパティは、一度に複数の FieldStatusEnum 列挙値を保持できます。

 
関連項目

FieldStatusEnum 列挙、Record.Update メソッド、Recordset.Update メソッド

 
Field.Type プロパティ (バージョン 2.0、2.1、2.5、2.6)

datatype = field.Type
 

Type プロパティは、Field の Value プロパティのデータタイプを示します。

データタイプ

DataTypeEnum

 
説明

Type プロパティは、Record オブジェクトの Fields コレクションに追加された新しい Field オブジェクトのプロパティである場合を除き、読み取り専用です。当該の新しい Field オブジェクトのプロパティの場合、Field オブジェクトの Value プロパティを指定済みで、データプロバイダが Field オブジェクトをデータソースに追加した (Fields コレクションの Update メソッドを使用して) 後にのみ読み書き可能になります。

 
関連項目

DataTypeEnum 列挙、Field.Value プロパティ、Fields.Update メソッド

 
Field.UnderlyingValue プロパティ (バージョン 2.0、2.1、2.5、2.6)

underlyingvalue = field.UnderlyingValue
 

UnderlyingValue プロパティは、Field オブジェクトの Value プロパティの現在の値を返します。

データタイプ

Variant

 
説明

UnderlyingValue プロパティは、関連する Field オブジェクトの値 (現在のレコードから) を返します。この値は、現在のトランザクションに対するフィールドの値を示す、OriginalValue プロパティの値とは異なる可能性があります。

これは、Resync メソッドが Value プロパティの値を置き換えるために使用する値と同じです。

 
関連項目

Field.OriginalValue、Field.Value プロパティ、Recordset.Resync メソッド

 
Field.Value プロパティ (バージョン 2.0、2.1、2.5、2.6)

field.Value = value
 

Value プロパティは、現在の Field オブジェクトに割り当てられている値を示します。

データタイプ

Variant

 
説明

Value プロパティは、関連する Field オブジェクトの値の読み取りおよび設定を行います。Value プロパティは、ADO を介して Long 型のバイナリデータをサポートします。

 
Fields コレクション (バージョン 2.0、2.1、2.5、2.6)

Set fields = record.Fields
Set fields = recordset.Fields
 

Fields コレクションに関する詳細と例については、「Field オブジェクト」を参照してください。

適用先
Recordset

関連する接続からレコードグループの特定のビューを提供します。

 
オブジェクト
Field

開いている Recordset オブジェクトの現在のレコード内の 1 つのフィールドに関する情報を保持します。

 
メソッド
Append

新しい Field オブジェクトをコレクションに追加します。

CancelUpdate

Record オブジェクトの Fields コレクションの個々の Field オブジェクトに対する保留中の変更をキャンセルします。

Delete

現在の Fields コレクションから Field オブジェクトを削除します。

Refresh

Microsoft のマニュアルによると、目に見えるような機能を何も実行しません。

Resync

基になるデータベースに基づいて現在のコレクションを更新します。

Update

Record オブジェクトの現在の Fields コレクションに対する変更を続けます。

 
プロパティ
Count

関連する Fields コレクションに属する Field オブジェクトの数を示します。

Item

Fields コレクションに属する特定の Field オブジェクトにアクセスします。

 
Fields.Append メソッド (バージョン 2.0、2.1、2.5、2.6)

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

Append メソッドは、新しい Field オブジェクトをコレクションに追加します。

パラメータ
Name (文字列)

Fields コレクションに追加するファイル名を表します。コレクション内の既存の名前を指定することはできません。

Type (DataTypeEnum)

Field の Value プロパティのデータタイプを指定します。このパラメータのデフォルト値は adEmpty です。

DefinedSize (文字列)

オプションです。Field オブジェクト内に格納されている値の長さを示します。このパラメータの値は、Type プロパティから取得されます。

Attrib (FieldAttributeEnum)

オプションです。新しい Field オブジェクトに関する追加情報を指定します。このパラメータのデフォルト値は adFldDefault です。

FieldValue (Variant)

オプションです。新しい Field オブジェクトに値を与えます。このパラメータのデフォルトは Null です。このパラメータが有効なのは、Field オブジェクトを Recordset オブジェクトではなく Record オブジェクトの Fields コレクションに追加する場合だけです。

 
説明

次のデータタイプは、ADO ではサポートされておらず、新しい Field オブジェクトをコレクションクラスに追加する際には使用できません。adIDispatch、adIUnknown、および adVariant。

次のデータタイプは、Field のコレクションに追加できず、その場合エラーが発生します。adArray、adChapter、adEmpty、adPropVariant、および adUserDefined。

Append メソッドを Recordset オブジェクトの Fields コレクションで使用する場合、FieldValue パラメータは使用できません。代わりに、Recordset オブジェクトが閉じている間に Field オブジェクトを追加し、開いた後に追加したオブジェクトに値を割り当てる必要があります。

Field オブジェクトを Record オブジェクトの Fields コレクションに追加する場合、最初に Field.Value プロパティを設定してから、Type など他の Field プロパティにアクセスする前に Update メソッドを呼び出す必要があります。

 
関連項目

DataTypeEnum 列挙、FieldAttributeEnum 列挙

 
Fields.CancelUpdate メソッド (バージョン 2.5、2.6)

record.Fields.CancelUpdate
 

CancelUpdate メソッドは、Record オブジェクトの Fields コレクションの個々の Field オブジェクトに対する保留中の変更をキャンセルします。

説明

CancelUpdate メソッドを呼び出した後、Field オブジェクトのステータスはすべて adFieldOK になります。

 
関連項目

Record オブジェクト

 
Fields.Count プロパティ (バージョン 2.0、2.1、2.5、2.6)

count = fields.Count
 

Count プロパティは、関連する Fields コレクションに属する Field オブジェクトの数を示します。

データタイプ

Long

 
説明

Count プロパティの値が 0 の場合、関連する Fields コレクション内には Field オブジェクトはありません。ただし、関連する Fields コレクションに属する Field オブジェクトには、0 〜 (Count プロパティの値 - 1) のインデックスが設定されます。

 
Fields.Delete メソッド (バージョン 2.0、2.1、2.5、2.6)

Fields.Delete Field
 

Delete メソッドは、現在の Fields コレクションから Field オブジェクトを削除します。

パラメータ
Field

現在の Field のコレクション内の有効な Field オブジェクトの名前か、削除するコレクション内の Field オブジェクトの順序のいずれかです。

 
説明

Field.Delete メソッドは、閉じた Recordset オブジェクトでのみ呼び出すことができます。

 
Fields.Item プロパティ (バージョン 2.0、2.1、2.5、2.6)

Set field = fields.Item(Index)
Set field = fields(Index)
 

Item プロパティは、Fields コレクションに属する特定の Field オブジェクトにアクセスします。

データタイプ

オブジェクト

 
説明

Index プレースホルダーは、Fields コレクション内の Field オブジェクトの順序を表す Variant データタイプを表します。Fields コレクションに要求された項目がない場合、エラーが発生します。

 
メモ

言語によっては、最初の構文の Item プロパティをサポートしていないものもあります。それらの言語では、Item メソッド名なしの 2 番目の構文を使用します。

 
Fields.Refresh メソッド (バージョン 2.0、2.1、2.5、2.6)

Fields.Refresh
 

Refresh メソッドは、Microsoft のマニュアルによると、目に見えるような機能を何も実行しません。

説明

Fields コレクションを基になるデータベースからの変更で更新するには、Recordset オブジェクトがブックマークをサポートしていない場合、Resync メソッドまたは MoveFirst メソッドを使用します。

 
関連項目

Recordset.MoveFirst Method, Recordset.Resync Method

 
Fields.Resync メソッド (Versions 2.5, 2.6)

record.Fields.Resync ResyncValues
 

Resync メソッドは、基になるデータベースに基づいて現在のコレクションを更新します。

パラメータ
ResyncValues (ResyncEnum)

オプションです。Fields コレクション内の基になる値を上書きするかどうかを指定します。このパラメータのデフォルト値は adResyncAllValues です。

 
説明

Resync メソッドは、Record オブジェクトの Fields コレクションの Field オブジェクトを、基になるデータベースの該当するオブジェクトと再同期します。

このメソッドの唯一のパラメータのデフォルト値である adResyncAllValues は、UnderlyingValue、Value、および OriginalValue プロパティ内の値すべてを同期します。

コレクション内の Field オブジェクトの Status プロパティが adFieldPendingUnknown または adFieldPendingInsert である場合、Resync メソッドはこれらの Field オブジェクトに対して無視されます。

 
関連項目

Field.OriginalValue プロパティ、Field.Status プロパティ、Field.UnderlyingValue プロパティ、Field.Value プロパティ、ResyncEnum 列挙

 
Fields.Update メソッド (バージョン 2.5、2.6)

record.Fields.Update
 
説明

Update メソッドは、Record オブジェクトの現在の Fields コレクションに対する保留中の変更を続けます。

Dim parameter As ADODB.Parameter