ADO Attributes 属性
定义和用法
Attributes 属性可设置或返回 Long 值,该值可指示对象的一项或多项特性。
注释:设置多个属性时,可以将适当的常量相加。如果将属性值设置为包括不兼容常量的和,将会发生错误。
对象 | Attributes 属性的描述 |
---|---|
Connection | Attributes 属性对 Connection 对象拥有读写权限。并且其值可以是一个或多个 XactAttributeEnum 值的和。默认值为零 (0)。 |
Parameter | Attributes 属性对Parameter 对象拥有读写权限。并且其值可以是任意一个或多个 ParameterAttributesEnum 值的和。默认值为 adParamSigned。 |
Field | 当 Attributes 属性被用于创建 Recordset 时,它拥有读写权限,但是当您打开一个已有的 Recordset 时,它是只读的。Attributes 属性可以是一个或多个 FieldAttributeEnum 值的和。 |
Property | 对于 Property 对象,Attributes 属性是只读的。并且其值可以是任意一个或多个 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")
- 'Display the field attributes of the Orders Table
- 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")
- 'Display the property attributes of the Orders Table
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 | 该字段包含由记录表示的资源的默认流。例如,默认流可以是 Web 站点根文件夹的 HTML 内容,在指定根 URL 时自动提供。 |
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 Values
常量 | 值 | 描述 |
---|---|---|
adPropNotSupported | 0 | 提供者不支持该属性。 |
adPropRequired | 1 | 在初始化数据源之前用户必须指定该属性的值。 |
adPropOptional | 2 | 在初始化数据源之前用户不必指定该属性的值。 |
adPropRead | 512 | 户可以读取该属性。 |
adPropWrite | 1024 | 用户可以设置该属性。 |