Поделиться через


Ошибки ADO

Константе ErrorValueEnum описаны значения ошибок ADO. Полный список перечисленных констант, включая значения, см. в приложении B: ошибки ADO. В этом разделе рассматриваются некоторые из более интересных ошибок и объясняются некоторые конкретные ситуации, которые могут их вызвать, или решения для устранения проблемы. Перечислены константа ErrorValueEnum и короткое положительное десятичное число.

Число Константа "ErrorValueEnum" Описание/Возможные причины
3000 adErrProviderFailed Поставщик не выполнил запрошенную операцию.
3001 adErrInvalidArgument Аргументы имеют неправильный тип, не имеют допустимого диапазона или конфликтуют друг с другом. Эта ошибка часто вызвана типографической ошибкой в инструкции SQL SELECT. Например, неверно написанное имя поля или таблицы может вызвать такую ошибку. Эта ошибка также может возникать, если поле или таблица с именем в инструкции SELECT не существует в хранилище данных.
3002 adErrOpeningFile Не удалось открыть файл. Имя файла с ошибками было указано, или файл был перемещен, переименован или удален. В сети диск может быть временно недоступен или сетевой трафик может препятствовать подключению.
3003 adErrReadFile Не удалось прочитать файл. Имя файла указано неправильно, возможно, файл был перемещен или удален, или файл может быть поврежден.
3004 adErrWriteFile Сбой записи в файл. Возможно, вы закрыли файл, а затем попытались записать его, или файл может быть поврежден. Если файл находится на сетевом диске, временные сетевые условия могут предотвратить запись на сетевой диск.
3021 Ошибка: нет текущей записи Либо BOF или EOF имеет значение True, либо удалена текущая запись. Запрошенная операция требует текущей записи.

Предпринята попытка обновить записи с помощью Find или Seek для перемещения указателя записи на нужную запись. Если запись не найдена, EOF будет True. Эта ошибка также может возникать после сбоя AddNew или Delete, так как при сбое этих методов отсутствует текущая запись.
3219 несанкционированная операция Операция не допускается в этом контексте.
3220 adErrCantChangeProvider Поставщик, который был предоставлен, отличается от того, который уже используется.
3246 adErrInTransaction объект Connection нельзя явно закрыть во время транзакции. Объект набора записей или Connection, который в настоящее время участвует в транзакции, не может быть закрыт. Вызовите RollbackTrans или CommitTrans перед закрытием объекта.
3251 adErrFeatureNotAvailable Объект или поставщик не может выполнять запрошенную операцию. Некоторые операции зависят от конкретной версии поставщика.
3265 adErrItemNotFound Элемент не найден в коллекции, соответствующей запрошенному имени или порядковому номеру. Указано неверное поле или имя таблицы.
3367 adErrObjectInCollection Объект уже находится в коллекции. Не удается добавить. Объект нельзя добавить в одну коллекцию дважды.
3420 adErrObjectNotSet Объект больше не является допустимым.
3421 adErrDataConversion Приложение использует значение неправильного типа для текущей операции. Возможно, вы предоставили строку для операции, которая, например, ожидает поток.
3704 adErrObjectClosed Операция не допускается при закрытии объекта. Подключение или набор записей было закрыто. Например, некоторые другие подпрограммы могли закрыть глобальный объект. Чтобы предотвратить эту ошибку, проверьте свойство состояния перед попыткой выполнить операцию.
3705 adErrObjectOpen Операция не допускается при открытии объекта. Открытый объект не может быть открыт. Поля не могут быть добавлены в открытый набор записей .
3706 adErrProviderNotFound (Ошибка: Провайдер не найден) Не удается найти поставщика. Он может быть неправильно установлен.

Имя поставщика может быть неправильно указано, указанный поставщик может не быть установлен на компьютере, где выполняется код, или установка может быть повреждена.
3707 adErrBoundToCommand Свойство ActiveConnection объекта набора записей, имеющего объект command Command в качестве источника, невозможно изменить. Приложение попыталось назначить новый объект Connection к набору записей Recordset, имеющему объект Command в качестве источника.
3708 adErrInvalidParamInfo объект параметра неправильно определен. Предоставлена несогласованная или неполная информация.
3709 adErrНеверноеСоединение Подключение нельзя использовать для выполнения этой операции. Он закрыт или недопустим в этом контексте.
3710 adErrNotReentrant Невозможно выполнить операцию во время обработки события. Операция не может выполняться в обработчике событий, так как это приводит к повторному срабатыванию события. Например, методы навигации не должны вызываться из обработчика событий WillMove.
3711 adErrЕщеВыполняется Невозможно выполнить операцию при асинхронном выполнении.
3712 Операция отменена Операция отменена пользователем. Приложение вызвало метод CancelUpdate или CancelBatch, и текущая операция была отменена.
3713 ошибка подключения Невозможно выполнить операцию при асинхронном подключении.
3714 Ошибка: недействительная транзакция Транзакция, подлежащая координации, недействительна или не запущена.
3715 adErrNotExecuting Невозможно выполнить операцию, не выполняя ее.
3716 adErrUnsafeOperation Параметры безопасности на этом компьютере запрещают доступ к источнику данных в другом домене.
3717 adWrnSecurityDialog Только для внутреннего использования. Не используйте. (Запись была включена ради полноты. Эта ошибка не должна отображаться в коде.)
3718 adWrnSecurityDialogHeader Только для внутреннего использования. Не используйте. (Запись включена ради полноты. Эта ошибка не должна отображаться в коде.)
3719 Нарушение целостности adErrIntegrityViolation Значение данных конфликтует с ограничениями целостности поля. Новое значение для поля приведет к дублированию ключа. Значение, которое формирует одну сторону связи между двумя записями, может не быть обновляемым.
3720 Ошибка: доступ запрещен Недостаточно разрешений для записи в поле. У пользователя, указанного в строке подключения, нет соответствующих разрешений на запись в поле .
3721 adErrDataOverflow Значение данных слишком велико для представления типом данных поля. Было назначено числовое значение, слишком большое для предполагаемого поля. Например, длинное целое значение было назначено короткому целочисленным полю.
3722 adErrSchemaViolation Значение данных конфликтует с типом данных или ограничениями поля. Хранилище данных имеет ограничения проверки, отличающиеся от значения поля .
3723 ошибка несоответствия знаков Сбой преобразования, так как значение данных было подписано, а тип данных поля, используемый поставщиком, не был подписан.
3724 Ошибка невозможности преобразования значения Значение данных не может быть преобразовано по причинам, отличным от несоответствия знака или переполнения данных. Например, при преобразовании могли бы произойти усечения данных.
3725 Ошибка: невозможно создать объект Невозможно задать или извлечь значение данных, так как тип данных поля был неизвестен, или у поставщика недостаточно ресурсов для выполнения операции.
3726 adErrColumnNotOnThisRow Запись не содержит это поле. Неверное имя поля было указано, или указано поле, не находящееся в коллекции полей Fields текущей записи.
3727 adErrURLDoesNotExist Исходный URL-адрес или родительский URL-адрес целевого URL-адреса не существует. В исходном или целевом URL-адресе имеется типографическая ошибка. Возможно, у вас есть https://mysite/photo/myphoto.jpg, хотя на самом деле у вас должен быть https://mysite/photos/myphoto.jpg вместо этого. Типографическая ошибка в родительском URL-адресе (в данном случае фото вместо фотографий) вызвала ошибку.
3728 adErrTreePermissionDenied Недостаточно прав для доступа к дереву или поддереву. У пользователя, именованного в строке подключения, нет соответствующих разрешений.
3729 adErrInvalidURL URL-адрес содержит недопустимые символы. Убедитесь, что URL-адрес введен правильно. URL-адрес следует схеме, зарегистрированной у текущего поставщика (например, интернет-провайдер публикаций зарегистрирован для http).
3730 adErrResourceLocked Объект, представленный указанным URL-адресом, заблокирован одним или несколькими другими процессами. Дождитесь завершения процесса и повторите попытку операции. Объект, к которым вы пытаетесь получить доступ, был заблокирован другим пользователем или другим процессом в приложении. Это, скорее всего, возникает в многопользовательской среде.
3731 adErrResourceExists Невозможно выполнить операцию копирования. Объект с именем, совпадающим с целевым URL-адресом, уже существует. Укажите adCopyOverwrite для замены объекта. Если вы не указываете adCopyOverwrite при копировании файлов в каталоге, копирование завершается ошибкой при попытке скопировать элемент, который уже существует в целевом расположении.
3732 adErrCannotComplete Сервер не может завершить операцию. Это может быть связано с тем, что сервер занят другими операциями или испытывает нехватку ресурсов.
3733 adErrVolumeNotFound Поставщик не может найти устройство хранения, указанное URL-адресом. Убедитесь, что URL-адрес введен правильно. URL-адрес устройства хранения может быть неверным, но эта ошибка может возникать по другим причинам. Устройство может быть офлайн, или большой объем сетевого трафика препятствует подключению.
3734 adErrOutOfSpace Невозможно выполнить операцию. Поставщик не может получить достаточно места для хранения. Для временных файлов на сервере может быть недостаточно памяти или места на жестком диске.
3735 adErrResourceOutOfScope Исходный или целевой URL-адрес находится вне области текущей записи.
3736 adErrUnavailable Не удалось завершить операцию, и состояние недоступно. Поле может быть недоступно или операция не была предпринята. Возможно, другой пользователь изменил или удалил поле, к который вы пытаетесь получить доступ.
3737 adErrURLNamedRowDoesNotExist Запись с именем этого URL-адреса не существует. При попытке открыть файл с помощью объекта записи, имя файла или путь к файлу были написаны с ошибкой.
3738 adErrDelResOutOfScope URL-адрес удаленного объекта находится вне области текущей записи.
3747 adErrCatalogNotSet Для выполнения операции требуется допустимый ParentCatalog.
3748 adErrCantChangeConnection Подключение было отклонено. Запрошенное новое подключение имеет разные характеристики, отличные от используемого.
3749 ОшибкаОбновленияПолей Не удалось обновить поля. Для получения дополнительной информации ознакомьтесь со свойством состояния отдельных объектов полей. Эта ошибка может возникать в двух ситуациях: при изменении значения объекта Field в процессе изменения или добавления записи в базу данных; и при изменении свойств самого объекта Field.

Сбой обновления набора записей записи или из-за проблемы с одним из полей текущей записи. Перечислите коллекцию полей и проверьте свойство состояния каждого поля, чтобы определить причину проблемы.
3750 adErrDenyNotSupported Поставщик не поддерживает ограничения общего доступа. Предпринята попытка ограничить общий доступ к файлам, и поставщик не поддерживает концепцию.
3751 Ошибка: тип отказа не поддерживается Поставщик не поддерживает запрошенный тип ограничения общего доступа. Предпринята попытка установить определенный тип ограничения общего доступа к файлам, которое не поддерживается вашим поставщиком. Ознакомьтесь с документацией поставщика, чтобы определить, какие ограничения общего доступа к файлам поддерживаются.