Exceptions
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Remarque :
Les développeurs qui créent des applications sont vivement encouragés à utiliser la bibliothèque cliente NDB qui présente plusieurs avantages supplémentaires par rapport à cette bibliothèque cliente, tels que la mise en cache automatique des entités via l'API Memcache. Si vous utilisez actuellement l'ancienne bibliothèque cliente DB, consultez le guide de migration de DB vers NDB.
Le package google.appengine.ext.db
fournit les classes d'exceptions suivantes :
- exception Error()
-
Il s'agit de la classe de base destinée à toutes les exceptions de ce package.
- exception BadArgumentError()
- Vous avez fourni un argument incorrect à une méthode de requête.
- exception BadFilterError()
- Une chaîne de filtre contenue dans la requête n'est pas valide.
- exception BadKeyError()
- La chaîne de clé fournie n'est pas une clé valide.
- exception BadPropertyError()
- Impossible de créer la propriété, car son nom n'est pas une chaîne.
- exception BadQueryError()
- La chaîne de requête n'est pas une requête valide.
- exception BadRequestError()
- La requête envoyée au service Datastore contient une ou plusieurs propriétés non valides. Cela peut se produire si une sous-classe de Model remplace certaines méthodes (telles que kind()) par une mise en œuvre incorrecte.
- exception BadValueError()
- Une valeur n'a pas pu être attribuée à la propriété, car cette valeur n'est pas valide pour le type de propriété.
- exception ConfigurationError()
- Une propriété n'est pas configurée correctement.
- exception DuplicatePropertyError()
- Une définition de modèle contient plusieurs propriétés du même nom.
- exception InternalError()
- Une erreur interne au service Datastore s'est produite. Cette exception ne signifie pas nécessairement que l'opération a échoué.
- exception KindError()
- L'application a tenté d'utiliser une entité de données avec une classe Model qui ne correspond pas à l'entité.
- exception NeedIndexError()
- Exception générée lorsque le SDK ne trouve pas d'index correspondant pour une requête qui en nécessite un. Consultez la Console d'administration pour gérer les index et le fichier index.yaml.
- exception NotSavedError()
- Vous avez effectué une action qui nécessite que l'objet ait été enregistré (put) dans le datastore, mais il ne l'est pas.
- exception PropertyError()
- La propriété de modèle référencée n'existe pas sur l'objet de données.
- exception ReferencePropertyResolveError()
- Le modèle référencé par une classe ReferenceProperty n'existe pas. Consultez la section Références.
- exception ReservedWordError()
- Un modèle définit une propriété dont le nom n'est pas autorisé. Consultez la section Noms de propriétés non autorisés.
- exception Rollback()
- Indique qu'une fonction contenue dans une transaction veut effectuer un rollback de la transaction au lieu d'un commit. Toute exception non détectée dans une transaction engendre l'annulation de la transaction. Cette classe d'exception s'utilise par commodité, lorsqu'une fonction veut annuler la transaction et qu'il n'existe aucune autre exception applicable.
- exception Timeout()
- Exception générée lorsque l'opération de datastore dépasse le délai maximal autorisé pour ce type d'opérations. Cette exception ne signifie pas nécessairement que l'opération a échoué.
- exception TransactionFailedError()
- Impossible d'effectuer un commit de la transaction ou de l'opération de datastore, même après une nouvelle tentative. Cet échec s'explique habituellement par un taux élevé de contention : les données sont mises à jour simultanément par de nombreuses autres instances, et cette instance n'a pas réussi à valider (commit) sa transaction après un nombre fixe de tentatives. Pour en savoir plus, consultez la page Transactions.
Le package google.appengine.runtime.apiproxy_errors
fournit les classes d'exceptions suivantes :
- exception CapabilityDisabledError()
-
Indique qu'un appel d'API Datastore n'a pas été effectué, car cette fonctionnalité de magasin de données en particulier n'est pas disponible.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[[["\u003cp\u003eDevelopers are highly recommended to utilize the NDB Client Library for new applications due to its enhanced features like automatic entity caching.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003egoogle.appengine.ext.db\u003c/code\u003e package offers a range of exception classes to handle various errors related to datastore operations, including issues with arguments, filters, keys, properties, and queries.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003egoogle.appengine.runtime.apiproxy_errors\u003c/code\u003e package includes the \u003ccode\u003eCapabilityDisabledError\u003c/code\u003e exception, which signals when a specific datastore functionality is not accessible.\u003c/p\u003e\n"],["\u003cp\u003eSeveral exceptions in \u003ccode\u003egoogle.appengine.ext.db\u003c/code\u003e highlight potential issues in model definition and data consistency, such as \u003ccode\u003eDuplicatePropertyError\u003c/code\u003e, \u003ccode\u003eKindError\u003c/code\u003e, \u003ccode\u003ePropertyError\u003c/code\u003e, \u003ccode\u003eReferencePropertyResolveError\u003c/code\u003e, and \u003ccode\u003eReservedWordError\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe package provides specific error handling for transaction-related issues with classes like \u003ccode\u003eRollback\u003c/code\u003e, and \u003ccode\u003eTransactionFailedError\u003c/code\u003e to help in situations where a transaction needs to be rolled back, or a transaction could not be committed.\u003c/p\u003e\n"]]],[],null,["# Exceptions\n\n**Note:**\nDevelopers building new applications are **strongly encouraged** to use the\n[NDB Client Library](/appengine/docs/legacy/standard/python/ndb), which has several benefits\ncompared to this client library, such as automatic entity caching via the Memcache\nAPI. If you are currently using the older DB Client Library, read the\n[DB to NDB Migration Guide](/appengine/docs/legacy/standard/python/ndb/db_to_ndb)\n\nThe `google.appengine.ext.db` package provides the following exception classes:\n\nexception Error()\n\n: This is the base class for all exceptions in this package.\n\nexception BadArgumentError()\n: A bad argument was given to a query method.\n\nexception BadFilterError()\n: A filter string in the query is invalid.\n\nexception BadKeyError()\n: The provided key string is not a valid key.\n\nexception BadPropertyError()\n: The property could not be created because its name is not a string.\n\nexception BadQueryError()\n: The query string is not a valid query.\n\nexception BadRequestError()\n: The request to the datastore service has one or more invalid properties. This is possible if a subclass of [Model](/appengine/docs/legacy/standard/python/datastore/modelclass) overrides some methods (such as [kind()](/appengine/docs/legacy/standard/python/datastore/modelclass#Model_kind)) with an incorrect implementation.\n\nexception BadValueError()\n: The property could not be assigned a value because the value is invalid for the property type.\n\nexception ConfigurationError()\n: A property is not configured correctly.\n\nexception DuplicatePropertyError()\n: A model definition has more than one property with the same name.\n\nexception InternalError()\n: There was an error internal to the datastore service. This exception does not necessarily mean that the operation failed.\n\nexception KindError()\n: The application attempted to use a data entity with a model class that does not match the entity.\n\nexception NeedIndexError()\n: Raised when the SDK does not find a matching index for a query that requires one. Check the [Administration Console](/appengine/docs/adminconsole) to manage your indexes and your [index.yaml](/appengine/docs/legacy/standard/python/config/indexconfig#creating_datastore_indexes) file.\n\nexception NotSavedError()\n: An action was performed that requires the object to have been saved (put) to the datastore, but the object is not saved.\n\nexception PropertyError()\n: The referenced model property does not exist on the data object.\n\nexception ReferencePropertyResolveError()\n: The model referenced by a [ReferenceProperty](/appengine/docs/legacy/standard/python/datastore/typesandpropertyclasses#ReferenceProperty) does not exist. See [References](/appengine/docs/legacy/standard/python/datastore/datamodeling#References).\n\nexception ReservedWordError()\n: A model defines a property whose name is disallowed. See [Disallowed Property Names](/appengine/docs/legacy/standard/python/datastore/modelclass#Disallowed_Property_Names).\n\nexception Rollback()\n: Indicates that a function in a transaction wants to roll back the transaction instead of committing it. Any uncaught exception in a transaction will cause the transaction to roll back. This exception class is for convenience, when a function wants to roll back and no other exception applies.\n\nexception Timeout()\n: Raised when the datastore operation exceeds the maximum amount of time allowed for datastore operations. This exception does not necessarily mean that the operation failed.\n\nexception TransactionFailedError()\n: The transaction or datastore operation could not be committed, even after retrying. This is usually caused by a high rate of contention: The data is being updated by many other application instances simultaneously, and this instance could not commit its transaction within a fixed number of retries. See [Transactions](/appengine/docs/legacy/standard/python/datastore/transactions).\n\nThe `google.appengine.runtime.apiproxy_errors` package provides the following exception classes:\n\nexception CapabilityDisabledError()\n\n: Indicates that a datastore api call was not performed as that particular datastore functionality is not available."]]