Atributo Status do ADO
Definição e uso
O atributo Status pode retornar um FieldStatusEnum Valor, que indica o estado do objeto Field. O valor padrão é adFieldOK.
Se a atualização falhar, será retornado um erro e o atributo Status indicará o valor combinado da operação e o código de estado de erro. O atributo Status de cada Field pode ser usado para determinar o motivo pelo qual o Field não foi adicionado, modificado ou removido.
Problemas ao adicionar, modificar ou excluir um Field são relatados por essa propriedade. Por exemplo, se o usuário excluir um campo, ele será marcado como excluído no conjunto Fields. Se o chamada Update retornar erro devido ao usuário tentar excluir um Field que não tem permissão para excluir, o Status do campo será adFieldPermissionDenied ou adFieldPendingDelete.
Sintaxe
objfield.Status
Instância
<% 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 response.write(rs.Fields(0).Status) rs.Close conn.close %>
Valor do FieldStatusEnum
Constante | Valor | Descrição |
---|---|---|
adFieldOK | 0 | Padrão. A indicação de que o campo foi adicionado ou removido com sucesso. |
adFieldCantConvertValue | 2 | A indicação de que não é possível recuperar ou armazenar o campo sem perda de dados. |
adFieldIsNull | 3 | A indicação de que o provedor retornou um valor Null. |
adFieldTruncated | 4 | A indicação de que os dados variáveis lidos da fonte de dados foram truncados. |
adFieldSignMismatch | 5 | A indicação de que o valor de dados retornado pelo provedor é assinado, enquanto o tipo de dados do valor do campo ADO não é assinado. |
adFieldDataOverflow | 6 | A indicação de que os dados retornados pelo provedor excedem o tipo de dados do campo. |
adFieldCantCreate | 7 | A indicação de que não pode adicionar o campo porque o provedor excedeu os limites (como o número de campos permitidos). |
adFieldUnavailable | 8 | A indicação de que, ao ler dados da fonte de dados, o provedor não pode determinar o valor. Por exemplo, a linha foi recém-criada, o valor padrão da coluna não pode ser usado e ainda não foi especificado um novo valor. |
adFieldPermissionDenied | 9 | Indica que, devido ao campo ser definido como somente leitura, não pode ser modificado. |
adFieldIntegrityViolation | 10 | Indica que, devido ao campo ser um item calculado ou derivado, não pode ser modificado. |
adFieldSchemaViolation | 11 | Indica que o valor viola os limites do esquema do campo no fonte de dados. |
adFieldBadStatus | 12 | Indica que foi enviado um valor de estado inválido do ADO para o provedor do OLE DB. A razão pode ser provedor do OLE DB 1.0 ou 1.1, ou uma combinação inadequada de Value e Status. |
adFieldDefault | 13 | Indica que, ao definir os dados, foi usado o valor padrão do campo. |
adFieldIgnore | 15 | Indica que, ao definir o valor de dados no origem, este campo foi ignorado. O provedor não configurou nenhum valor. |
adFieldDoesNotExist | 16 | Indica que o campo especificado não existe. |
adFieldInvalidURL | 17 | Indica que a URL do fonte de dados contém caracteres inválidos. |
adFieldResourceLocked | 18 | Indica que o provedor não pode executar a operação devido ao bloqueio do fonte de dados por um ou mais aplicativos ou processos. |
adFieldResourceExists | 19 | Indica que, devido ao objeto já existir no URL de destino e não poder ser substituído, o provedor não pode executar a operação. |
adFieldCannotComplete | 20 | Indica que o servidor indicado pela URL de origem não pode concluir a operação. |
adFieldVolumeNotFound | 21 | Indica que o provedor não pode localizar a quantidade de armazenamento indicada pela URL. |
adFieldOutOfSpace | 22 | Indica que o provedor não pode obter espaço de armazenamento suficiente para concluir a operação de movimentação ou cópia. |
adFieldCannotDeleteSource | 23 | Indica que, na operação de movimentação, a árvore ou subárvore foi movida para uma nova posição, mas a origem não pode ser excluída. |
adFieldReadOnly | 24 | Indica que o campo no fonte de dados é definido como somente leitura. |
adFieldResourceOutOfScope | 25 | Indica que a URL de origem ou destino está fora do escopo do registro atual. |
adFieldAlreadyExists | 26 | Indica que o campo especificado já existe. |
adFieldPendingInsert | 0x10000 | A operação Append indica a necessidade de configurar o estado. O campo é marcado para ser adicionado ao conjunto Fields após a chamada do método Update. |
adFieldPendingDelete | 0x20000 | Indica que a operação Delete causou a necessidade de configurar o estado. O campo é marcado para ser removido do conjunto Fields após a chamada do método Update. |
adFieldPendingChange | 0x40000 | Indica que o campo foi excluído e novamente adicionado (possivelmente com tipo de dados diferente) ou que o valor do campo que anteriormente tinha o estado adFieldOK foi alterado. O formato final do campo será modificado no conjunto Fields após a chamada do método Update. |
adFieldPendingUnknown | 0x80000 | Indica que o provedor não pode determinar qual operação causou a necessidade de configurar o estado. |
adFieldPendingUnknownDelete | 0x100000 | Indica que o provedor não pode determinar qual operação causou a necessidade de configurar o estado do campo, e que, após a chamada do método Update, o campo será removido do conjunto Fields. |