Erros do ADO
A constante ErrorValueEnum descreve os valores de erro do ADO. Para obter uma listagem completa dessas constantes enumeradas, incluindo valores, consulte Apêndice B: Erros do ADO. Esta seção examinará alguns dos erros mais interessantes e explicará algumas situações específicas que podem criá-los ou soluções para corrigir o problema. Tanto a constante ErrorValueEnum quanto o número decimal positivo curto são listados.
Número | Constante ErrorValueEnum | Descrição/Causas possíveis |
---|---|---|
3000 | adErrProviderFailed | Falha do provedor ao executar a operação solicitada. |
3001 | adErrInvalidArgument | Os argumentos são do tipo errado, estão fora do intervalo aceitável ou estão em conflito uns com os outros. Esse erro geralmente é causado por um erro tipográfico em uma instrução SQL SELECT. Por exemplo, um nome de campo ou nome de tabela com ortografia incorreta pode gerar esse erro. Esse erro também pode ocorrer quando um campo ou tabela nomeado em uma instrução SELECT não existe no armazenamento de dados. |
3002 | adErrOpeningFile | Não foi possível abrir o arquivo. Um nome de arquivo com ortografia incorreta foi especificado ou um arquivo foi movido, renomeado ou excluído. Em uma rede, a unidade pode estar temporariamente indisponível ou o tráfego de rede pode estar impedindo uma conexão. |
3003 | adErrReadFile | Não foi possível ler o arquivo. O nome do arquivo é especificado incorretamente, o arquivo pode ter sido movido ou excluído ou o arquivo pode ter sido corrompido. |
3004 | adErrWriteFile | Falha na gravação no arquivo. Você pode ter fechado um arquivo e tentado gravar nele ou o arquivo pode estar corrompido. Se o arquivo estiver localizado em uma unidade de rede, as condições transitórias de rede poderão impedir a gravação em uma unidade de rede. |
3021 | adErrNoCurrentRecord | Ou BOF ou EOF é True, ou o registro atual foi excluído. A operação solicitada requer um registro atual. Foi feita uma tentativa de atualizar registros usando Localizar ou Seek para mover o ponteiro de registro para o registro desejado. Se o registro não for encontrado, EOF será True. Esse erro também pode ocorrer após uma falha no método AddNew ou no Delete, porque não há um registro atual quando esses métodos falham. |
3219 | adErrIllegalOperation | A operação não é permitida neste contexto. |
3220 | erroNãoÉPossívelAlterarOProvedor | O provedor fornecido é diferente do já em uso. |
3246 | adErrInTransaction | objeto de conexão não pode ser fechado explicitamente durante uma transação. Um objeto Recordset ou Connection que está atualmente participando de uma transação não pode ser fechado. Chame RollbackTrans ou CommitTrans antes de fechar o objeto. |
3251 | FuncionalidadeNãoDisponível | O objeto ou provedor não é capaz de executar a operação solicitada. Algumas operações dependem de uma versão específica do provedor. |
3265 | adErrItemNotFound | O item não pode ser encontrado na coleção correspondente ao nome solicitado ou ordinal. Um nome de tabela ou campo incorreto foi especificado. |
3367 | adErrObjectInCollection | O objeto já está na coleção. Não é possível acrescentar. Um objeto não pode ser adicionado à mesma coleção duas vezes. |
3420 | adErrObjectNotSet | O objeto não é mais válido. |
3421 | adErrDataConversion | O aplicativo usa um valor do tipo errado para a operação atual. Você pode ter fornecido uma cadeia de caracteres para uma operação que espera um fluxo, por exemplo. |
3704 | adErrObjectClosed | A operação não é permitida quando o objeto é fechado. A Conexão ou o Conjunto de Registros foi fechado. Por exemplo, alguma outra rotina pode ter fechado um objeto global. Você pode evitar esse erro verificando a propriedade State antes de tentar uma operação. |
3705 | adErrObjectOpen | A operação não é permitida quando o objeto está aberto. Um objeto aberto não pode ser aberto. Campos não podem ser acrescentados a um Recordsetaberto. |
3706 | adErrProvedorNaoEncontrado | O provedor não pode ser encontrado. Ele pode não estar instalado corretamente. O nome do provedor pode estar especificado incorretamente, o provedor especificado pode não estar instalado no computador em que o código está sendo executado ou a instalação pode ter sido corrompida. |
3707 | adErrBoundToCommand | A propriedade ActiveConnection de um objeto Recordset, que tem um objeto Command como fonte, não pode ser alterada. O aplicativo tentou atribuir um novo objeto Connection a um Recordset que tem um objeto Command como origem. |
3708 | adErrInvalidParamInfo | objeto parameter é definido incorretamente. Informações inconsistentes ou incompletas foram fornecidas. |
3709 | adErrInvalidConnection | A conexão não pode ser usada para executar essa operação. Ele é fechado ou inválido neste contexto. |
3710 | ErroNãoReentrante | A operação não pode ser executada durante o evento de processamento. Uma operação não pode ser executada em um manipulador de eventos que faz com que o evento seja acionado novamente. Por exemplo, os métodos de navegação não devem ser chamados de dentro de um manipulador de eventos WillMove. |
3711 | adErrStillExecuting | A operação não pode ser executada enquanto estiver executando de forma assíncrona. |
3712 | adErrOperationCancelled | A operação foi cancelada pelo usuário. O aplicativo chamou o método CancelUpdate ou CancelBatch e a operação atual foi cancelada. |
3713 | Conectando ainda com erro de anúncio | A operação não pode ser executada durante a conexão de forma assíncrona. |
3714 | adErrInvalidTransaction | A coordenação da transação é inválida ou não foi iniciada. |
3715 | adErroNaoExecutando | A operação não pode ser executada enquanto não está em execução. |
3716 | adErrUnsafeOperation | As configurações de segurança neste computador proíbem o acesso a uma fonte de dados em outro domínio. |
3717 | adWrnSecurityDialog | Somente para uso interno. Não use. (A entrada foi incluída para fins de integridade. Esse erro não deve aparecer em seu código.) |
3718 | adWrnSecurityDialogHeader | Somente para uso interno. Não use. (Entrada incluída para fins de integridade. Esse erro não deve aparecer em seu código.) |
3719 | adErrIntegrityViolation | O valor dos dados entra em conflito com as restrições de integridade do campo. Um novo valor para um campo causaria uma chave duplicada. Um valor que forma um lado de uma relação entre dois registros pode não ser atualizável. |
3720 | adErrPermissionDenied | A permissão insuficiente impede a gravação no campo. O usuário nomeado na string de conexão não tem as permissões adequadas para gravar em um Campo. |
3721 | adErrDataOverflow | O valor dos dados é muito grande para ser representado pelo tipo de dados de campo. Um valor numérico muito grande para o campo pretendido foi atribuído. Por exemplo, um valor inteiro longo foi atribuído a um campo inteiro curto. |
3722 | adErrSchemaViolation | O valor dos dados entra em conflito com o tipo de dados ou restrições do campo. O armazenamento de dados possui restrições de validação que diferem do valor do Campo . |
3723 | erroDeSinalIncompatível | Falha na conversão porque o valor dos dados foi assinado e o tipo de dados de campo usado pelo provedor não foi assinado. |
3724 | adErrCantConvertvalue | O valor dos dados não pode ser convertido por razões que não sejam incompatibilidade de sinal ou estouro de dados. Por exemplo, a conversão teria resultando em dados truncados. |
3725 | erroNaoPodeCriar | O valor dos dados não pode ser definido ou recuperado porque o tipo de dados de campo era desconhecido ou o provedor não tinha recursos suficientes para executar a operação. |
3726 | adErrColumnNotOnThisRow | O registro não contém esse campo. Um nome de campo incorreto foi especificado ou um campo que não estava na coleção Fields do registro atual foi referenciado. |
3727 | adErroURLNaoExiste | A URL de origem ou o pai da URL de destino não existe. Há um erro tipográfico na URL de origem ou de destino. Você pode ter https://mysite/photo/myphoto.jpg quando deveria ter https://mysite/photos/myphoto.jpg em vez disso. O erro tipográfico na URL pai (nesse caso, foto em vez de fotos) causou o erro. |
3728 | adErrTreePermissionDenied | As permissões são insuficientes para acessar árvores ou subárvores. O usuário nomeado na cadeia de conexão não tem as permissões apropriadas. |
3729 | adErrInvalidURL | A URL contém caracteres inválidos. Verifique se a URL foi digitada corretamente. A URL segue o esquema registrado no provedor atual (por exemplo, o Provedor de Publicação da Internet está registrado para http). |
3730 | adErrRecursoBloqueado | O objeto representado pela URL especificada é bloqueado por um ou mais outros processos. Aguarde até que o processo seja concluído e tente a operação novamente. O objeto que você está tentando acessar foi bloqueado por outro usuário ou por outro processo em seu aplicativo. É mais provável que isso surja em um ambiente multiusuário. |
3731 | RecursoExistenteErro | Não é possível executar a operação de cópia. O objeto nomeado pela URL de destino já existe. Especifique adCopyOverwrite para substituir o objeto. Se você não especificar adCopyOverwrite ao copiar os arquivos em um diretório, a cópia falhará quando você tentar copiar um item que já existe no local de destino. |
3732 | adErrCannotComplete | O servidor não pode concluir a operação. Isso pode ocorrer porque o servidor está ocupado com outras operações ou pode estar com poucos recursos. |
3733 | adErrVolumeNotFound | O provedor não pode localizar o dispositivo de armazenamento indicado pela URL. Verifique se a URL foi digitada corretamente. A URL do dispositivo de armazenamento pode estar incorreta, mas esse erro pode ocorrer por outros motivos. O dispositivo pode estar offline ou um grande volume de tráfego de rede pode impedir que a conexão seja feita. |
3734 | adErrEspaçoEsgotado | A operação não pode ser executada. O provedor não pode obter espaço de armazenamento suficiente. Pode não haver espaço suficiente em RAM ou disco rígido para arquivos temporários no servidor. |
3735 | adErrResourceOutOfScope | A URL de origem ou de destino está fora do escopo do registro atual. |
3736 | adErrUnavailable | Falha na conclusão da operação e o status não está disponível. O campo pode estar indisponível ou a operação não foi tentada. Outro usuário pode ter alterado ou excluído o campo que você está tentando acessar. |
3737 | adErrURLNamedRowDoesNotExist | O registro nomeado por essa URL não existe. Ao tentar abrir um arquivo usando um objeto Record, o nome do arquivo ou o caminho para o arquivo foram escritos incorretamente. |
3738 | adErrDelResOutOfScope | A URL do objeto a ser excluído está fora do escopo do registro atual. |
3747 | adErrCatalogNotSet | A operação requer um ParentCatalog válido. |
3748 | adErrCantChangeConnection | A conexão foi negada. A nova conexão solicitada tem características diferentes daquela já em uso. |
3749 | adErrFieldsUpdateFailed | Falha na atualização de campos. Para obter mais informações, examine a propriedade status de objetos de campo individuais. Esse erro pode ocorrer em duas situações: ao alterar o valor do objeto Field no processo de alteração ou adição de um registro ao banco de dados; e ao alterar as propriedades do objeto Field propriamente dito. Falha na atualização do Record ou Recordset devido a um problema com um dos campos no registro atual. Enumere a coleção Campos e verifique a propriedade Status de cada campo para determinar a causa do problema. |
3750 | adErrDenyNotSupported | O provedor não dá suporte a restrições de compartilhamento. Foi feita uma tentativa de restringir o compartilhamento de arquivos e seu provedor não dá suporte ao conceito. |
3751 | adErrDenyTypeNotSupported | O provedor não dá suporte ao tipo solicitado de restrição de compartilhamento. Foi feita uma tentativa de estabelecer um tipo específico de restrição de compartilhamento de arquivos que não tem suporte do seu provedor. Consulte a documentação do provedor para determinar quais restrições de compartilhamento de arquivos têm suporte. |