ADO Attributes 属性

定義と用法

Attributes 属性は設定または返すことができる Long 値を持ちます。この値はオブジェクトの1つまたは複数の特性を示します。

注記:複数の属性を設定する場合、適切な定数を足し合わせます。属性値を互換性のない定数の和に設定すると、エラーが発生します。

オブジェクト Attributes 属性の説明
Connection Attributes 属性は Connection オブジェクトに対して読み取り書き込み権限を持ちます。また、その値は1つまたは複数のものです。 XactAttributeEnum 値の和。デフォルト値は 0 です。
Parameter Attributes 属性は Parameter オブジェクトに対して読み取り書き込み権限を持ちます。また、その値は任意の1つまたは複数のものです。 ParameterAttributesEnum 値の和。デフォルト値は adParamSigned です。
Field Attributes 属性が Recordset の作成に使用された場合、読み取り書き込み権限がありますが、既存の Recordset を開いた場合、読み取り専用です。Attributes 属性は1つまたは複数のものです。 FieldAttributeEnum 値の和。
Property Property オブジェクトに対して、Attributes 属性は読み取り専用です。また、その値は任意の1つまたは複数のものです。 PropertyAttributesEnum 値の和。

文法

object.Attributes

インスタンス

针对 Connection オブジェクト:

<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
response.write(conn.Attributes)
conn.close
%>

Fieldオブジェクトに対して:

<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.Recordset")
rs.open "Select * from orders", conn
set f=Server.CreateObject("ADODB.Field")
「Ordersテーブルのフィールド属性を表示する」
for each f in rs.Fields
  response.write("Attr:" & f.Attributes & "<br />")
  response.write("Name:" & f.Name & "<br />")
  response.write("Value:" & f.Value & "<br />")
Next
rs.Close
conn.close
set rs=nothing
set conn=nothing
%>

Propertyオブジェクトに対して:

<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.Recordset")
rs.open "Select * from orders", conn
set prop=Server.CreateObject("ADODB.Property")
「Ordersテーブルのプロパティ属性を表示する」
for each prop in rs.Properties
  response.write("Attr:" & prop.Attributes & "<br />")
  response.write("Name:" & prop.Name & "<br />")
  response.write("Value:" & prop.Value & "<br />")
next
rs.close
conn.close
set rs=nothing
set conn=nothing
%>

XactAttributeEnumの値

定数 説明
adXactAbortRetaining 262144 RollbackTransを呼び出した場合、自動的に新しいトランザクションが開始されます。
adXactCommitRetaining 131072 CommitTrans を呼び出すと、自動的に新しいトランザクションが開始されます。

ParameterAttributesEnum Values

定数 説明
adParamSigned 16 このパラメータは符号付きの値を受け入れます。
adParamNullable 64 このパラメータは Null 値を受け入れます。
adParamLong 128 このパラメータは長いバイナリーデータを受け入れます。

FieldAttributeEnum Values

定数 説明
adFldCacheDeferred 0x1000 プロバイダーがフィールドの値をキャッシュし、キャッシュの読み取りを示します。
adFldFixed 0x10 このフィールドは定長データを含んでいます。
adFldIsChapter 0x2000 このフィールドは、この親フィールドに関連する特定のサブレコードセットを指定するサブセット値を含んでいます。通常、サブセットフィールドはデータ構造やフィルタと一緒に使用されます。
adFldIsCollection 0x40000 このフィールドは、レコードが表すリソースが単なるリソース(例えばテキストファイル)ではなく、他のリソースの集合(例えばフォルダー)であることを指定します。
adFldIsDefaultStream 0x20000 このフィールドには、レコードが表すリソースのデフォルトのストリームが含まれています。例えば、デフォルトのストリームは、指定されたルート URL で自動的に提供されるウェブサイトのルートフォルダーの HTML コンテンツなどです。
adFldIsNullable 0x20 このフィールドは Null 値を受け入れます。
adFldIsRowURL 0x10000 このフィールドには URL が含まれており、レコードが表すデータストレージ内のリソースを名前付けています。
adFldKeyColumn 0x8000 このフィールドは基本行集合の主キーです。このフィールドが複合主キーの一部であることも示しています。
adFldLong 0x80 このフィールドは長いバイナリーフィールドです。AppendChunk と GetChunk メソッドを使用できることを示しています。
adFldMayBeNull 0x40 このフィールドから Null 値を読み取ることができます。
adFldMayDefer 0x2 このフィールドは延期されています、つまりフィールドの値はデータソースから一斉に取得されるのではなく、明示的にアクセスする際に取得されます。
adFldNegativeScale 0x4000 このフィールドはサポートしている負の範囲値を持つ列からの数字値を表します。この範囲は NumericScale 属性で指定されます。
adFldRowID 0x100 このフィールドは永続化識別子を含んでおり、書き込まれないことができ、識別行以外に何の意味も持たない、例えばレコード番号、ユニークな識別子などです。
adFldRowVersion 0x200 このフィールドには更新を追跡するための某种タイムスタンプや日付が含まれています。
adFldUnknownUpdatable 0x8 プロバイダーはユーザーがフィールドに書き込めるかどうかを確定できません。
adFldUnspecified
  • -1
  • 0xFFFFFFFF
プロバイダーはフィールド属性を指定していません。
adFldUpdatable 0x4 ユーザーはフィールドに書き込むことができます。

PropertyAttributesEnum 値

定数 説明
adPropNotSupported 0 プロバイダーはこの属性をサポートしていません。
adPropRequired 1 データソースを初期化する前にユーザーはこの属性の値を指定する必要があります。
adPropOptional 2 データソースを初期化する前にユーザーはこの属性の値を指定する必要はありません。
adPropRead 512 ユーザーはこの属性を読み取ることができます。
adPropWrite 1024 ユーザーはこの属性を設定できます。