Propriedade Attributes do ADO

Definição e uso

A propriedade Attributes pode definir ou retornar um valor Long, que pode indicar uma ou várias características do objeto.

Notas:Ao definir várias propriedades, pode-se somar os constantes apropriados. Se o valor da propriedade for definido como a soma de constantes incompatíveis, ocorrerá um erro.

Objeto Descrição da propriedade Attributes
Connection A propriedade Attributes possui permissões de leitura e escrita para o objeto Connection. E seu valor pode ser um ou vários XactAttributeEnum A soma dos valores. O valor padrão é zero (0).
Parameter A propriedade Attributes possui permissões de leitura e escrita para o objeto Parameter. E seu valor pode ser qualquer um ou vários ParameterAttributesEnum A soma dos valores. O valor padrão é adParamSigned.
Field Quando a propriedade Attributes é usada para criar um Recordset, ele possui permissões de leitura e escrita, mas quando você abre um Recordset existente, ele é somente leitura. A propriedade Attributes pode ser uma ou várias FieldAttributeEnum A soma dos valores.
Property Para o objeto Property, a propriedade Attributes é somente leitura. E seu valor pode ser qualquer um ou vários PropertyAttributesEnum A soma dos valores.

Sintaxe

object.Attributes

Instância

Para o objeto Connection:

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

Para o objeto Field:

<%
definir conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
definir rs = Server.CreateObject("ADODB.Recordset")
rs.open "Select * from orders", conn
definir f=Server.CreateObject("ADODB.Field")
"Exibir os atributos dos campos da tabela Orders"
para cada f em rs.Fields
  response.write("Atr:" & f.Attributes & "<br />")
  response.write("Nome:" & f.Name & "<br />")
  response.write("Valor:" & f.Value & "<br />")
Next
rs.Close
conn.close
definir rs=nenhum
definir conn=nenhum
%>

Para o objeto Property:

<%
definir conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
definir rs = Server.CreateObject("ADODB.Recordset")
rs.open "Select * from orders", conn
definir prop=Server.CreateObject("ADODB.Property")
"Exibir os atributos das propriedades da tabela Orders"
para cada prop em rs.Properties
  response.write("Atr:" & prop.Attributes & "<br />")
  response.write("Nome:" & prop.Name & "<br />")
  response.write("Valor:" & prop.Value & "<br />")
next
rs.close
conn.close
definir rs=nenhum
definir conn=nenhum
%>

Valor do enum XactAttribute

Constante Valor Descrição
adXactAbortRetaining 262144 Quando chamado RollbackTrans, uma nova transação é iniciada automaticamente.
adXactCommitRetaining 131072 Quando o CommitTrans é chamado automaticamente, uma nova transação é iniciada.

Valores de ParameterAttributesEnum

Constante Valor Descrição
adParamSigned 16 Este parâmetro aceita valores assinados.
adParamNullable 64 Este parâmetro aceita valores NULL.
adParamLong 128 Este parâmetro aceita dados binários longos.

Valores de FieldAttributeEnum

Constante Valor Descrição
adFldCacheDeferred 0x1000 Indica que o provedor armazena o valor do campo em cache e indica que é possível ler o cache.
adFldFixed 0x10 Indica que este campo contém dados de comprimento fixo.
adFldIsChapter 0x2000 Indica que este campo contém um valor de subconjunto, que especifica um subconjunto de registros específicos relacionados ao campo pai. Normalmente, o campo de subconjunto é usado juntamente com a estrutura de dados ou o filtro de dados.
adFldIsCollection 0x40000 Este campo especifica que o recurso representado pelo registro é uma coleção de recursos (como uma pasta) e não apenas um recurso simples (como um arquivo de texto).
adFldIsDefaultStream 0x20000 Este campo contém o fluxo padrão do recurso representado pelo registro. Por exemplo, o fluxo padrão pode ser o conteúdo HTML da pasta raiz do site da Web, fornecido automaticamente ao especificar a URL raiz.
adFldIsNullable 0x20 Este campo aceita valores NULL.
adFldIsRowURL 0x10000 Este campo contém uma URL que nomeia o recurso no armazenamento de dados representado pelo registro.
adFldKeyColumn 0x8000 Este campo é a chave primária da coleção de linhas básicas. Também indica que este campo é parte de uma chave primária composta.
adFldLong 0x80 Este campo é um campo binário longo. Também indica que é possível usar os métodos AppendChunk e GetChunk.
adFldMayBeNull 0x40 NULL valores podem ser lidos a partir deste campo.
adFldMayDefer 0x2 Este campo é atrasado, ou seja, o valor do campo não é recuperado do-fonte de dados junto com o registro inteiro, mas é recuperado explicitamente ao acessá-lo.
adFldNegativeScale 0x4000 Este campo representa o valor numérico proveniente de uma coluna que suporta valores de faixa negativa. A faixa é especificada pela propriedade NumericScale.
adFldRowID 0x100 Este campo contém um identificador de persistência, que não pode ser gravado e não tem qualquer significado além da linha de identificação, por exemplo, número de registro, identificador único, etc.
adFldRowVersion 0x200 Este campo contém algum tipo de tempo ou marca de tempo para rastrear atualizações.
adFldUnknownUpdatable 0x8 O provedor não pode determinar se o usuário pode escrever o campo.
adFldUnspecified
  • -1
  • 0xFFFFFFFF
O provedor não especificou o atributo do campo.
adFldUpdatable 0x4 O usuário pode escrever o campo.

Valores de PropertyAttributesEnum

Constante Valor Descrição
adPropNotSupported 0 O provedor não suporta essa propriedade.
adPropRequired 1 O usuário deve especificar o valor dessa propriedade antes de inicializar o fonte de dados.
adPropOptional 2 O usuário não precisa especificar o valor dessa propriedade antes de inicializar o fonte de dados.
adPropRead 512 O usuário pode ler essa propriedade.
adPropWrite 1024 O usuário pode configurar essa propriedade.