ADO Attributes 属性

定義と用法

Attributes 属性は、オブジェクトの1項目または複数の特性を示す Long 値を設定または返します。

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

オブジェクト 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 ユーザーはこの属性を設定できます。