Свойство Attributes в ADO

Определение и использование

Свойство 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")
Отображение атрибутов полей таблицы 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

Константы Значение Описание
adParamSigned 16 Этот параметр принимает знаковые значения.
adParamNullable 64 Этот параметр принимает значение Null.
adParamLong 128 Этот параметр принимает данные длинного двоичного формата.

Значения FieldAttributeEnum

Константы Значение Описание
adFldCacheDeferred 0x1000 Указывает, что провайдер кэширует значения поля и указывает на чтение из кэша.
adFldFixed 0x10 Указывает, что этот段 содержит данные фиксированной длины.
adFldIsChapter 0x2000 Указывает, что этот段 содержит подмножество значений, определяющих конкретный набор подзаписей, связанных с этим родительским полем. Обычно подмножество полей используется вместе с данными构ированием или фильтрами.
adFldIsCollection 0x40000 Этот段 определяет, что ресурс, представляющий запись, является集合ом других ресурсов (например, папкой), а не простым ресурсом (например, текстовый файл).
adFldIsDefaultStream 0x20000 Этот段 содержит поток по умолчанию для ресурса, представляющего запись. Например, по умолчанию поток может быть 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

Константы Значение Описание
adPropNotSupported 0 Поставщик не поддерживает это свойство.
adPropRequired 1 Пользователь обязан указать значение этого свойства до инициализации источника данных.
adPropOptional 2 Пользователь не обязан указывать значение этого свойства до инициализации источника данных.
adPropRead 512 Пользователь может прочитать это свойство.
adPropWrite 1024 Пользователь может установить это свойство.