1
0
Fork 0
python-docs-fr/library/sqlite3.po

1358 lines
48 KiB
Plaintext
Raw Normal View History

2018-07-04 09:06:45 +00:00
# Copyright (C) 2001-2018, Python Software Foundation
2018-07-04 09:08:42 +00:00
# For licence information, see README file.
2016-10-30 09:46:26 +00:00
#
msgid ""
msgstr ""
2019-12-05 22:15:54 +00:00
"Project-Id-Version: Python 3\n"
2016-10-30 09:46:26 +00:00
"Report-Msgid-Bugs-To: \n"
2020-05-24 14:31:50 +00:00
"POT-Creation-Date: 2020-05-23 11:38+0200\n"
2019-03-26 15:00:26 +00:00
"PO-Revision-Date: 2019-03-26 15:55+0100\n"
"Last-Translator: Julien Palard <julien@palard.fr>\n"
2018-07-04 09:14:25 +00:00
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
2017-05-23 22:40:56 +00:00
"Language: fr\n"
2016-10-30 09:46:26 +00:00
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:2
msgid ":mod:`sqlite3` --- DB-API 2.0 interface for SQLite databases"
2019-03-26 15:00:26 +00:00
msgstr ":mod:`sqlite3` — Interface DB-API 2.0 pour bases de données SQLite"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:9
msgid "**Source code:** :source:`Lib/sqlite3/`"
2019-03-26 15:00:26 +00:00
msgstr "**Code source :** :source:`Lib/sqlite3/`"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:13
msgid ""
"SQLite is a C library that provides a lightweight disk-based database that "
"doesn't require a separate server process and allows accessing the database "
"using a nonstandard variant of the SQL query language. Some applications can "
"use SQLite for internal data storage. It's also possible to prototype an "
"application using SQLite and then port the code to a larger database such as "
"PostgreSQL or Oracle."
msgstr ""
"SQLite est une bibliothèque C qui fournit une base de données légère sur "
2019-03-26 15:00:26 +00:00
"disque ne nécessitant pas de processus serveur et qui utilise une variante "
"(non standard) du langage de requête SQL pour accéder aux données. Certaines "
"applications peuvent utiliser SQLite pour le stockage de données internes. "
"Il est également possible de créer une application prototype utilisant "
"SQLite, puis de modifier le code pour utiliser une base de données plus "
"robuste telle que PostgreSQL ou Oracle."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:20
msgid ""
"The sqlite3 module was written by Gerhard Häring. It provides a SQL "
"interface compliant with the DB-API 2.0 specification described by :pep:"
"`249`."
msgstr ""
2019-03-26 15:00:26 +00:00
"Le module *sqlite3* a été écrit par Gerhard Häring. Il fournit une "
"interface SQL conforme à la spécification DB-API 2.0 décrite par :pep:`249`."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:23
msgid ""
"To use the module, you must first create a :class:`Connection` object that "
"represents the database. Here the data will be stored in the :file:`example."
"db` file::"
msgstr ""
2019-03-26 15:00:26 +00:00
"Pour utiliser le module, vous devez dabord créer une :class:`Connection` "
"qui représente la base de données. Dans cet exemple, les données sont "
"stockées dans le fichier :file:`example.db` ::"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:30
msgid ""
"You can also supply the special name ``:memory:`` to create a database in "
"RAM."
msgstr ""
2019-03-26 15:00:26 +00:00
"Vous pouvez également fournir le nom spécial ``:memory:`` pour créer une "
"base de données dans la mémoire vive."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:32
msgid ""
"Once you have a :class:`Connection`, you can create a :class:`Cursor` "
"object and call its :meth:`~Cursor.execute` method to perform SQL commands::"
msgstr ""
2019-03-26 15:00:26 +00:00
"Une fois que vous avez une instance de :class:`Connection`, vous pouvez "
"créer un objet :class:`Cursor` et appeler sa méthode :meth:`~Cursor.execute` "
"pour exécuter les commandes SQL ::"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:51
msgid ""
"The data you've saved is persistent and is available in subsequent sessions::"
msgstr ""
"Les données que vous avez sauvegardées sont persistantes et disponibles dans "
2019-03-26 15:00:26 +00:00
"les sessions suivantes ::"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:57
msgid ""
"Usually your SQL operations will need to use values from Python variables. "
"You shouldn't assemble your query using Python's string operations because "
"doing so is insecure; it makes your program vulnerable to an SQL injection "
"attack (see https://xkcd.com/327/ for humorous example of what can go wrong)."
msgstr ""
2019-03-26 15:00:26 +00:00
"Habituellement, vos opérations SQL utilisent les valeurs de variables "
"Python. Vous ne devez pas assembler votre requête à l'aide des opérations "
"sur les chaînes de caractères de Python, car cela n'est pas sûr. Cela rend "
"votre programme vulnérable à une attaque par injection SQL (voir https://"
"xkcd.com/327/ pour un exemple amusant de ce qui peut mal tourner)."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:62
msgid ""
"Instead, use the DB-API's parameter substitution. Put ``?`` as a "
"placeholder wherever you want to use a value, and then provide a tuple of "
"values as the second argument to the cursor's :meth:`~Cursor.execute` "
"method. (Other database modules may use a different placeholder, such as ``"
"%s`` or ``:1``.) For example::"
msgstr ""
2019-03-26 15:00:26 +00:00
"À la place, utilisez la capacité DB-API de substitution des paramètres. "
"Placez un ``?`` comme indicateur partout où vous voulez utiliser une valeur, "
"puis fournissez un *tuple* de valeurs comme second argument de la méthode :"
"meth:`~Cursor.execute`. D'autres modules de base de données peuvent utiliser "
"un espace réservé différent, tel que ``%s`` ou ``:1``. Par exemple ::"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:84
msgid ""
"To retrieve data after executing a SELECT statement, you can either treat "
"the cursor as an :term:`iterator`, call the cursor's :meth:`~Cursor."
"fetchone` method to retrieve a single matching row, or call :meth:`~Cursor."
"fetchall` to get a list of the matching rows."
msgstr ""
2019-03-26 15:00:26 +00:00
"Pour récupérer des données après avoir exécuté une instruction *SELECT*, "
"vous pouvez considérer le curseur comme un :term:`itérateur <iterator>`, "
"appeler la méthode du curseur :meth:`~Cursor.fetchone` pour récupérer une "
"seule ligne correspondante ou appeler :meth:`~Cursor.fetchall` pour obtenir "
"une liste des lignes correspondantes."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:89
msgid "This example uses the iterator form::"
2019-03-26 15:00:26 +00:00
msgstr "Cet exemple utilise la forme itérateur ::"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:104
msgid "https://github.com/ghaering/pysqlite"
msgstr "https://github.com/ghaering/pysqlite"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:103
msgid ""
"The pysqlite web page -- sqlite3 is developed externally under the name "
"\"pysqlite\"."
msgstr ""
2019-03-26 15:00:26 +00:00
"La page web de *pysqlite* — *sqlite3* est développée sur un site tiers sous "
"le nom *pysqlite*."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:108
msgid "https://www.sqlite.org"
msgstr "https://www.sqlite.org"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:107
msgid ""
"The SQLite web page; the documentation describes the syntax and the "
"available data types for the supported SQL dialect."
msgstr ""
"Dans la page Web de SQLite, la documentation décrit la syntaxe et les types "
2019-03-26 15:00:26 +00:00
"de données disponibles qui sont pris en charge par cette variante SQL."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:111
2018-06-28 13:32:56 +00:00
msgid "https://www.w3schools.com/sql/"
msgstr "https://www.w3schools.com/sql/"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:111
msgid "Tutorial, reference and examples for learning SQL syntax."
msgstr "Tutoriel, référence et exemples pour apprendre la syntaxe SQL."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:113
msgid ":pep:`249` - Database API Specification 2.0"
2019-03-26 15:00:26 +00:00
msgstr ":pep:`249` — Spécifications de l'API 2.0 pour la base de données"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:114
msgid "PEP written by Marc-André Lemburg."
2019-03-26 15:00:26 +00:00
msgstr "PEP écrite par Marc-André Lemburg."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:120
msgid "Module functions and constants"
msgstr "Fonctions et constantes du module"
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:125
msgid ""
"The version number of this module, as a string. This is not the version of "
"the SQLite library."
msgstr ""
"Le numéro de version de ce module, sous forme de chaîne. Ce n'est pas la "
"version de la bibliothèque SQLite."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:131
msgid ""
"The version number of this module, as a tuple of integers. This is not the "
"version of the SQLite library."
msgstr ""
2019-03-26 15:00:26 +00:00
"Le numéro de version de ce module, sous forme d'un n-uplet d'entiers. Ce "
"n'est pas la version de la bibliothèque SQLite."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:137
msgid "The version number of the run-time SQLite library, as a string."
msgstr ""
"Le numéro de version de la bibliothèque d'exécution SQLite, sous forme de "
"chaîne."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:142
msgid ""
"The version number of the run-time SQLite library, as a tuple of integers."
msgstr ""
"Le numéro de version de la bibliothèque d'exécution SQLite, sous forme "
2019-03-26 15:00:26 +00:00
"d'entier."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:147 ../Doc/library/sqlite3.rst:160
msgid ""
"This constant is meant to be used with the *detect_types* parameter of the :"
"func:`connect` function."
msgstr ""
2019-03-26 15:00:26 +00:00
"Cette constante est destinée à être utilisée avec le paramètre "
"*detect_types* de la fonction :func:`connect`."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:150
msgid ""
"Setting it makes the :mod:`sqlite3` module parse the declared type for each "
"column it returns. It will parse out the first word of the declared type, "
"i. e. for \"integer primary key\", it will parse out \"integer\", or for "
"\"number(10)\" it will parse out \"number\". Then for that column, it will "
"look into the converters dictionary and use the converter function "
"registered for that type there."
msgstr ""
2019-03-26 15:00:26 +00:00
"Si elle est définie, le module :mod:`sqlite3` analyse le type de donnée "
"déclarée pour chaque colonne. Il déduit le type du premier mot de la "
"déclaration, par exemple de *integer primary key* il gardera *integer*, ou "
"de *number(10)* il gardera *number*. Ensuite, pour cette colonne, il "
"utilisera une fonction de conversion du dictionnaire des convertisseurs."
2016-10-30 09:46:26 +00:00
#: ../Doc/library/sqlite3.rst:163
2020-05-24 14:31:50 +00:00
#, fuzzy
2016-10-30 09:46:26 +00:00
msgid ""
"Setting this makes the SQLite interface parse the column name for each "
"column it returns. It will look for a string formed [mytype] in there, and "
"then decide that 'mytype' is the type of the column. It will try to find an "
"entry of 'mytype' in the converters dictionary and then use the converter "
"function found there to return the value. The column name found in :attr:"
2020-05-24 14:31:50 +00:00
"`Cursor.description` does not include the type, i. e. if you use something "
"like ``'as \"Expiration date [datetime]\"'`` in your SQL, then we will parse "
"out everything until the first ``'['`` for the column name and strip the "
"preceeding space: the column name would simply be \"Expiration date\"."
2016-10-30 09:46:26 +00:00
msgstr ""
"Permet à linterface SQLite d'analyser le nom pour chaque colonne. Il y "
2019-03-26 15:00:26 +00:00
"cherchera une chaîne comme ``[mytype]`` indiquant que la colonne est de type "
"``mytype``. Il essaiera de trouver une entrée *mytype* dans le dictionnaire, "
"puis utilisera la fonction de conversion qui s'y trouve pour renvoyer la "
"valeur. Le nom de colonne donnée à :attr:`Cursor.description` n'est alors "
"que le premier mot du nom de la colonne, par exemple si vous utilisez ``'as "
"\\\"x [datetime]\\\"'`` dans votre code SQL, le nom de la colonne sera "
"simplement *x*."
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:176
2016-10-30 09:46:26 +00:00
msgid ""
2018-06-28 13:32:56 +00:00
"Opens a connection to the SQLite database file *database*. By default "
"returns a :class:`Connection` object, unless a custom *factory* is given."
2016-10-30 09:46:26 +00:00
msgstr ""
2019-03-26 15:00:26 +00:00
"Ouvre une connexion à la base de données SQLite *database*. Par défaut, "
"cette commande renvoie un objet :class:`Connection`, sauf si *factory* est "
"donné."
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:179
2018-06-28 13:32:56 +00:00
msgid ""
"*database* is a :term:`path-like object` giving the pathname (absolute or "
"relative to the current working directory) of the database file to be "
"opened. You can use ``\":memory:\"`` to open a database connection to a "
"database that resides in RAM instead of on disk."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:184
2016-10-30 09:46:26 +00:00
msgid ""
"When a database is accessed by multiple connections, and one of the "
"processes modifies the database, the SQLite database is locked until that "
"transaction is committed. The *timeout* parameter specifies how long the "
"connection should wait for the lock to go away until raising an exception. "
"The default for the timeout parameter is 5.0 (five seconds)."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:190
2016-10-30 09:46:26 +00:00
msgid ""
"For the *isolation_level* parameter, please see the :attr:`~Connection."
"isolation_level` property of :class:`Connection` objects."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:193
2016-10-30 09:46:26 +00:00
msgid ""
"SQLite natively supports only the types TEXT, INTEGER, REAL, BLOB and NULL. "
"If you want to use other types you must add support for them yourself. The "
"*detect_types* parameter and the using custom **converters** registered with "
"the module-level :func:`register_converter` function allow you to easily do "
"that."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:198
2016-10-30 09:46:26 +00:00
msgid ""
"*detect_types* defaults to 0 (i. e. off, no type detection), you can set it "
"to any combination of :const:`PARSE_DECLTYPES` and :const:`PARSE_COLNAMES` "
"to turn type detection on."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:202
2016-10-30 09:46:26 +00:00
msgid ""
"By default, *check_same_thread* is :const:`True` and only the creating "
"thread may use the connection. If set :const:`False`, the returned "
"connection may be shared across multiple threads. When using multiple "
"threads with the same connection writing operations should be serialized by "
"the user to avoid data corruption."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:207
2016-10-30 09:46:26 +00:00
msgid ""
"By default, the :mod:`sqlite3` module uses its :class:`Connection` class for "
"the connect call. You can, however, subclass the :class:`Connection` class "
"and make :func:`connect` use your class instead by providing your class for "
"the *factory* parameter."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:212
2016-10-30 09:46:26 +00:00
msgid "Consult the section :ref:`sqlite3-types` of this manual for details."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:214
2016-10-30 09:46:26 +00:00
msgid ""
"The :mod:`sqlite3` module internally uses a statement cache to avoid SQL "
"parsing overhead. If you want to explicitly set the number of statements "
"that are cached for the connection, you can set the *cached_statements* "
"parameter. The currently implemented default is to cache 100 statements."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:219
2016-10-30 09:46:26 +00:00
msgid ""
"If *uri* is true, *database* is interpreted as a URI. This allows you to "
"specify options. For example, to open a database in read-only mode you can "
"use::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:225
2016-10-30 09:46:26 +00:00
msgid ""
"More information about this feature, including a list of recognized options, "
"can be found in the `SQLite URI documentation <https://www.sqlite.org/uri."
"html>`_."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:229
2019-09-04 09:35:23 +00:00
msgid ""
"Raises an :ref:`auditing event <auditing>` ``sqlite3.connect`` with argument "
"``database``."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:230
2016-10-30 09:46:26 +00:00
msgid "Added the *uri* parameter."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:233
2018-06-28 13:32:56 +00:00
msgid ""
"*database* can now also be a :term:`path-like object`, not only a string."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:239
2016-10-30 09:46:26 +00:00
msgid ""
"Registers a callable to convert a bytestring from the database into a custom "
"Python type. The callable will be invoked for all database values that are "
"of the type *typename*. Confer the parameter *detect_types* of the :func:"
"`connect` function for how the type detection works. Note that *typename* "
"and the name of the type in your query are matched in case-insensitive "
"manner."
2016-10-30 09:46:26 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:248
2016-10-30 09:46:26 +00:00
msgid ""
"Registers a callable to convert the custom Python type *type* into one of "
"SQLite's supported types. The callable *callable* accepts as single "
"parameter the Python value, and must return a value of the following types: "
"int, float, str or bytes."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:256
2016-10-30 09:46:26 +00:00
msgid ""
"Returns :const:`True` if the string *sql* contains one or more complete SQL "
"statements terminated by semicolons. It does not verify that the SQL is "
"syntactically correct, only that there are no unclosed string literals and "
"the statement is terminated by a semicolon."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:261
2016-10-30 09:46:26 +00:00
msgid ""
"This can be used to build a shell for SQLite, as in the following example:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:269
2016-10-30 09:46:26 +00:00
msgid ""
"By default you will not get any tracebacks in user-defined functions, "
"aggregates, converters, authorizer callbacks etc. If you want to debug them, "
"you can call this function with *flag* set to ``True``. Afterwards, you will "
"get tracebacks from callbacks on ``sys.stderr``. Use :const:`False` to "
"disable the feature again."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:279
2016-10-30 09:46:26 +00:00
msgid "Connection Objects"
2018-11-30 17:31:12 +00:00
msgstr "Objets de connexions"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:283
2016-10-30 09:46:26 +00:00
msgid "A SQLite database connection has the following attributes and methods:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:287
2016-10-30 09:46:26 +00:00
msgid ""
"Get or set the current default isolation level. :const:`None` for autocommit "
"mode or one of \"DEFERRED\", \"IMMEDIATE\" or \"EXCLUSIVE\". See section :"
"ref:`sqlite3-controlling-transactions` for a more detailed explanation."
2016-10-30 09:46:26 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:293
2016-10-30 09:46:26 +00:00
msgid ""
":const:`True` if a transaction is active (there are uncommitted changes), :"
"const:`False` otherwise. Read-only attribute."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:300
2016-10-30 09:46:26 +00:00
msgid ""
"The cursor method accepts a single optional parameter *factory*. If "
"supplied, this must be a callable returning an instance of :class:`Cursor` "
"or its subclasses."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:306
2016-10-30 09:46:26 +00:00
msgid ""
"This method commits the current transaction. If you don't call this method, "
"anything you did since the last call to ``commit()`` is not visible from "
"other database connections. If you wonder why you don't see the data you've "
"written to the database, please check you didn't forget to call this method."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:313
2016-10-30 09:46:26 +00:00
msgid ""
"This method rolls back any changes to the database since the last call to :"
"meth:`commit`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:318
2016-10-30 09:46:26 +00:00
msgid ""
"This closes the database connection. Note that this does not automatically "
"call :meth:`commit`. If you just close your database connection without "
"calling :meth:`commit` first, your changes will be lost!"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:324
2016-10-30 09:46:26 +00:00
msgid ""
"This is a nonstandard shortcut that creates a cursor object by calling the :"
"meth:`~Connection.cursor` method, calls the cursor's :meth:`~Cursor.execute` "
"method with the *parameters* given, and returns the cursor."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:331
2016-10-30 09:46:26 +00:00
msgid ""
"This is a nonstandard shortcut that creates a cursor object by calling the :"
"meth:`~Connection.cursor` method, calls the cursor's :meth:`~Cursor."
"executemany` method with the *parameters* given, and returns the cursor."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:338
2016-10-30 09:46:26 +00:00
msgid ""
"This is a nonstandard shortcut that creates a cursor object by calling the :"
"meth:`~Connection.cursor` method, calls the cursor's :meth:`~Cursor."
"executescript` method with the given *sql_script*, and returns the cursor."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:345
2016-10-30 09:46:26 +00:00
msgid ""
"Creates a user-defined function that you can later use from within SQL "
"statements under the function name *name*. *num_params* is the number of "
"parameters the function accepts (if *num_params* is -1, the function may "
"take any number of arguments), and *func* is a Python callable that is "
2019-09-04 09:35:23 +00:00
"called as the SQL function. If *deterministic* is true, the created function "
"is marked as `deterministic <https://sqlite.org/deterministic.html>`_, which "
"allows SQLite to perform additional optimizations. This flag is supported by "
"SQLite 3.8.3 or higher, :exc:`NotSupportedError` will be raised if used with "
"older versions."
2016-10-30 09:46:26 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:355
2016-10-30 09:46:26 +00:00
msgid ""
"The function can return any of the types supported by SQLite: bytes, str, "
"int, float and ``None``."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:358
2019-09-04 09:35:23 +00:00
msgid "The *deterministic* parameter was added."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:361 ../Doc/library/sqlite3.rst:378
#: ../Doc/library/sqlite3.rst:492 ../Doc/library/sqlite3.rst:649
2016-10-30 09:46:26 +00:00
msgid "Example:"
msgstr "Exemple :"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:368
2016-10-30 09:46:26 +00:00
msgid "Creates a user-defined aggregate function."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:370
2016-10-30 09:46:26 +00:00
msgid ""
"The aggregate class must implement a ``step`` method, which accepts the "
"number of parameters *num_params* (if *num_params* is -1, the function may "
"take any number of arguments), and a ``finalize`` method which will return "
"the final result of the aggregate."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:375
2016-10-30 09:46:26 +00:00
msgid ""
"The ``finalize`` method can return any of the types supported by SQLite: "
"bytes, str, int, float and ``None``."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:385
2016-10-30 09:46:26 +00:00
msgid ""
"Creates a collation with the specified *name* and *callable*. The callable "
"will be passed two string arguments. It should return -1 if the first is "
"ordered lower than the second, 0 if they are ordered equal and 1 if the "
"first is ordered higher than the second. Note that this controls sorting "
"(ORDER BY in SQL) so your comparisons don't affect other SQL operations."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:391
2016-10-30 09:46:26 +00:00
msgid ""
"Note that the callable will get its parameters as Python bytestrings, which "
"will normally be encoded in UTF-8."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:394
2016-10-30 09:46:26 +00:00
msgid ""
"The following example shows a custom collation that sorts \"the wrong way\":"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:398
2016-10-30 09:46:26 +00:00
msgid ""
"To remove a collation, call ``create_collation`` with ``None`` as callable::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:405
2016-10-30 09:46:26 +00:00
msgid ""
"You can call this method from a different thread to abort any queries that "
"might be executing on the connection. The query will then abort and the "
"caller will get an exception."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:412
2016-10-30 09:46:26 +00:00
msgid ""
"This routine registers a callback. The callback is invoked for each attempt "
"to access a column of a table in the database. The callback should return :"
"const:`SQLITE_OK` if access is allowed, :const:`SQLITE_DENY` if the entire "
"SQL statement should be aborted with an error and :const:`SQLITE_IGNORE` if "
"the column should be treated as a NULL value. These constants are available "
"in the :mod:`sqlite3` module."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:419
2016-10-30 09:46:26 +00:00
msgid ""
"The first argument to the callback signifies what kind of operation is to be "
"authorized. The second and third argument will be arguments or :const:`None` "
"depending on the first argument. The 4th argument is the name of the "
"database (\"main\", \"temp\", etc.) if applicable. The 5th argument is the "
"name of the inner-most trigger or view that is responsible for the access "
"attempt or :const:`None` if this access attempt is directly from input SQL "
"code."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:426
2016-10-30 09:46:26 +00:00
msgid ""
"Please consult the SQLite documentation about the possible values for the "
"first argument and the meaning of the second and third argument depending on "
"the first one. All necessary constants are available in the :mod:`sqlite3` "
"module."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:433
2016-10-30 09:46:26 +00:00
msgid ""
"This routine registers a callback. The callback is invoked for every *n* "
"instructions of the SQLite virtual machine. This is useful if you want to "
"get called from SQLite during long-running operations, for example to update "
"a GUI."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:438
2016-10-30 09:46:26 +00:00
msgid ""
"If you want to clear any previously installed progress handler, call the "
"method with :const:`None` for *handler*."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:441
2017-12-01 06:48:13 +00:00
msgid ""
"Returning a non-zero value from the handler function will terminate the "
"currently executing query and cause it to raise an :exc:`OperationalError` "
"exception."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:448
2016-10-30 09:46:26 +00:00
msgid ""
"Registers *trace_callback* to be called for each SQL statement that is "
"actually executed by the SQLite backend."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:451
2016-10-30 09:46:26 +00:00
msgid ""
"The only argument passed to the callback is the statement (as string) that "
"is being executed. The return value of the callback is ignored. Note that "
"the backend does not only run statements passed to the :meth:`Cursor."
"execute` methods. Other sources include the transaction management of the "
"Python module and the execution of triggers defined in the current database."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:457
2016-10-30 09:46:26 +00:00
msgid ""
"Passing :const:`None` as *trace_callback* will disable the trace callback."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:464
2016-10-30 09:46:26 +00:00
msgid ""
"This routine allows/disallows the SQLite engine to load SQLite extensions "
"from shared libraries. SQLite extensions can define new functions, "
"aggregates or whole new virtual table implementations. One well-known "
"extension is the fulltext-search extension distributed with SQLite."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:469 ../Doc/library/sqlite3.rst:481
2016-10-30 09:46:26 +00:00
msgid "Loadable extensions are disabled by default. See [#f1]_."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:477
2016-10-30 09:46:26 +00:00
msgid ""
"This routine loads a SQLite extension from a shared library. You have to "
"enable extension loading with :meth:`enable_load_extension` before you can "
"use this routine."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:487
2016-10-30 09:46:26 +00:00
msgid ""
"You can change this attribute to a callable that accepts the cursor and the "
"original row as a tuple and will return the real result row. This way, you "
"can implement more advanced ways of returning results, such as returning an "
"object that can also access columns by name."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:496
2016-10-30 09:46:26 +00:00
msgid ""
"If returning a tuple doesn't suffice and you want name-based access to "
"columns, you should consider setting :attr:`row_factory` to the highly-"
"optimized :class:`sqlite3.Row` type. :class:`Row` provides both index-based "
"and case-insensitive name-based access to columns with almost no memory "
"overhead. It will probably be better than your own custom dictionary-based "
"approach or even a db_row based solution."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:508
2016-10-30 09:46:26 +00:00
msgid ""
"Using this attribute you can control what objects are returned for the "
"``TEXT`` data type. By default, this attribute is set to :class:`str` and "
"the :mod:`sqlite3` module will return Unicode objects for ``TEXT``. If you "
"want to return bytestrings instead, you can set it to :class:`bytes`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:513
2016-10-30 09:46:26 +00:00
msgid ""
"You can also set it to any other callable that accepts a single bytestring "
"parameter and returns the resulting object."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:516
2016-10-30 09:46:26 +00:00
msgid "See the following example code for illustration:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:523
2016-10-30 09:46:26 +00:00
msgid ""
"Returns the total number of database rows that have been modified, inserted, "
"or deleted since the database connection was opened."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:529
2016-10-30 09:46:26 +00:00
msgid ""
"Returns an iterator to dump the database in an SQL text format. Useful when "
"saving an in-memory database for later restoration. This function provides "
"the same capabilities as the :kbd:`.dump` command in the :program:`sqlite3` "
"shell."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:534
2016-10-30 09:46:26 +00:00
msgid "Example::"
msgstr "Exemple ::"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:548
2018-06-28 13:32:56 +00:00
msgid ""
"This method makes a backup of a SQLite database even while it's being "
"accessed by other clients, or concurrently by the same connection. The copy "
"will be written into the mandatory argument *target*, that must be another :"
"class:`Connection` instance."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:553
2018-06-28 13:32:56 +00:00
msgid ""
"By default, or when *pages* is either ``0`` or a negative integer, the "
"entire database is copied in a single step; otherwise the method performs a "
"loop copying up to *pages* pages at a time."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:557
2018-06-28 13:32:56 +00:00
msgid ""
"If *progress* is specified, it must either be ``None`` or a callable object "
"that will be executed at each iteration with three integer arguments, "
"respectively the *status* of the last iteration, the *remaining* number of "
"pages still to be copied and the *total* number of pages."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:562
2018-06-28 13:32:56 +00:00
msgid ""
"The *name* argument specifies the database name that will be copied: it must "
"be a string containing either ``\"main\"``, the default, to indicate the "
"main database, ``\"temp\"`` to indicate the temporary database or the name "
"specified after the ``AS`` keyword in an ``ATTACH DATABASE`` statement for "
"an attached database."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:568
2018-06-28 13:32:56 +00:00
msgid ""
"The *sleep* argument specifies the number of seconds to sleep by between "
"successive attempts to backup remaining pages, can be specified either as an "
"integer or a floating point value."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:572
2018-06-28 13:32:56 +00:00
msgid "Example 1, copy an existing database into another::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:586
2018-06-28 13:32:56 +00:00
msgid "Example 2, copy an existing database into a transient copy::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:594
2018-06-28 13:32:56 +00:00
msgid "Availability: SQLite 3.6.11 or higher"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:602
2016-10-30 09:46:26 +00:00
msgid "Cursor Objects"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:606
2016-10-30 09:46:26 +00:00
msgid "A :class:`Cursor` instance has the following attributes and methods."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:613
2016-10-30 09:46:26 +00:00
msgid ""
"Executes an SQL statement. The SQL statement may be parameterized (i. e. "
"placeholders instead of SQL literals). The :mod:`sqlite3` module supports "
"two kinds of placeholders: question marks (qmark style) and named "
"placeholders (named style)."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:618
2016-10-30 09:46:26 +00:00
msgid "Here's an example of both styles:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:622
2016-10-30 09:46:26 +00:00
msgid ""
":meth:`execute` will only execute a single SQL statement. If you try to "
"execute more than one statement with it, it will raise a :exc:`.Warning`. "
"Use :meth:`executescript` if you want to execute multiple SQL statements "
"with one call."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:630
2016-10-30 09:46:26 +00:00
msgid ""
"Executes an SQL command against all parameter sequences or mappings found in "
"the sequence *seq_of_parameters*. The :mod:`sqlite3` module also allows "
"using an :term:`iterator` yielding parameters instead of a sequence."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:636
2016-10-30 09:46:26 +00:00
msgid "Here's a shorter example using a :term:`generator`:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:643
2016-10-30 09:46:26 +00:00
msgid ""
"This is a nonstandard convenience method for executing multiple SQL "
"statements at once. It issues a ``COMMIT`` statement first, then executes "
"the SQL script it gets as a parameter."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:647
2016-10-30 09:46:26 +00:00
msgid "*sql_script* can be an instance of :class:`str`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:656
2016-10-30 09:46:26 +00:00
msgid ""
"Fetches the next row of a query result set, returning a single sequence, or :"
"const:`None` when no more data is available."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:662
2016-10-30 09:46:26 +00:00
msgid ""
"Fetches the next set of rows of a query result, returning a list. An empty "
"list is returned when no more rows are available."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:665
2016-10-30 09:46:26 +00:00
msgid ""
"The number of rows to fetch per call is specified by the *size* parameter. "
"If it is not given, the cursor's arraysize determines the number of rows to "
"be fetched. The method should try to fetch as many rows as indicated by the "
"size parameter. If this is not possible due to the specified number of rows "
"not being available, fewer rows may be returned."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:671
2016-10-30 09:46:26 +00:00
msgid ""
"Note there are performance considerations involved with the *size* "
"parameter. For optimal performance, it is usually best to use the arraysize "
"attribute. If the *size* parameter is used, then it is best for it to retain "
"the same value from one :meth:`fetchmany` call to the next."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:678
2016-10-30 09:46:26 +00:00
msgid ""
"Fetches all (remaining) rows of a query result, returning a list. Note that "
"the cursor's arraysize attribute can affect the performance of this "
"operation. An empty list is returned when no rows are available."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:684
2016-10-30 09:46:26 +00:00
msgid "Close the cursor now (rather than whenever ``__del__`` is called)."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:686
2016-10-30 09:46:26 +00:00
msgid ""
"The cursor will be unusable from this point forward; a :exc:"
"`ProgrammingError` exception will be raised if any operation is attempted "
"with the cursor."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:691
2016-10-30 09:46:26 +00:00
msgid ""
"Although the :class:`Cursor` class of the :mod:`sqlite3` module implements "
"this attribute, the database engine's own support for the determination of "
"\"rows affected\"/\"rows selected\" is quirky."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:695
2016-10-30 09:46:26 +00:00
msgid ""
"For :meth:`executemany` statements, the number of modifications are summed "
"up into :attr:`rowcount`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:698
2016-10-30 09:46:26 +00:00
msgid ""
"As required by the Python DB API Spec, the :attr:`rowcount` attribute \"is "
"-1 in case no ``executeXX()`` has been performed on the cursor or the "
"rowcount of the last operation is not determinable by the interface\". This "
"includes ``SELECT`` statements because we cannot determine the number of "
"rows a query produced until all rows were fetched."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:704
2016-10-30 09:46:26 +00:00
msgid ""
"With SQLite versions before 3.6.5, :attr:`rowcount` is set to 0 if you make "
"a ``DELETE FROM table`` without any condition."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:709
2016-10-30 09:46:26 +00:00
msgid ""
"This read-only attribute provides the rowid of the last modified row. It is "
"only set if you issued an ``INSERT`` or a ``REPLACE`` statement using the :"
"meth:`execute` method. For operations other than ``INSERT`` or ``REPLACE`` "
"or when :meth:`executemany` is called, :attr:`lastrowid` is set to :const:"
"`None`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:715
2016-10-30 09:46:26 +00:00
msgid ""
"If the ``INSERT`` or ``REPLACE`` statement failed to insert the previous "
"successful rowid is returned."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:718
2016-10-30 09:46:26 +00:00
msgid "Added support for the ``REPLACE`` statement."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:723
2016-10-30 09:46:26 +00:00
msgid ""
2017-05-27 17:46:38 +00:00
"Read/write attribute that controls the number of rows returned by :meth:"
"`fetchmany`. The default value is 1 which means a single row would be "
"fetched per call."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:728
2017-05-27 17:46:38 +00:00
msgid ""
2016-10-30 09:46:26 +00:00
"This read-only attribute provides the column names of the last query. To "
"remain compatible with the Python DB API, it returns a 7-tuple for each "
"column where the last six items of each tuple are :const:`None`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:732
2016-10-30 09:46:26 +00:00
msgid "It is set for ``SELECT`` statements without any matching rows as well."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:736
2016-10-30 09:46:26 +00:00
msgid ""
"This read-only attribute provides the SQLite database :class:`Connection` "
"used by the :class:`Cursor` object. A :class:`Cursor` object created by "
"calling :meth:`con.cursor() <Connection.cursor>` will have a :attr:"
"`connection` attribute that refers to *con*::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:749
2016-10-30 09:46:26 +00:00
msgid "Row Objects"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:753
2016-10-30 09:46:26 +00:00
msgid ""
"A :class:`Row` instance serves as a highly optimized :attr:`~Connection."
"row_factory` for :class:`Connection` objects. It tries to mimic a tuple in "
"most of its features."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:757
2016-10-30 09:46:26 +00:00
msgid ""
"It supports mapping access by column name and index, iteration, "
"representation, equality testing and :func:`len`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:760
2016-10-30 09:46:26 +00:00
msgid ""
"If two :class:`Row` objects have exactly the same columns and their members "
"are equal, they compare equal."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:765
2016-10-30 09:46:26 +00:00
msgid ""
"This method returns a list of column names. Immediately after a query, it is "
"the first member of each tuple in :attr:`Cursor.description`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:768
2016-10-30 09:46:26 +00:00
msgid "Added support of slicing."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:771
2016-10-30 09:46:26 +00:00
msgid "Let's assume we initialize a table as in the example given above::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:783
2016-10-30 09:46:26 +00:00
msgid "Now we plug :class:`Row` in::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:815
2016-10-30 09:46:26 +00:00
msgid "Exceptions"
msgstr "Exceptions"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:819
2016-10-30 09:46:26 +00:00
msgid "A subclass of :exc:`Exception`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:823
2016-10-30 09:46:26 +00:00
msgid ""
"The base class of the other exceptions in this module. It is a subclass of :"
"exc:`Exception`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:828
2016-10-30 09:46:26 +00:00
msgid "Exception raised for errors that are related to the database."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:832
2016-10-30 09:46:26 +00:00
msgid ""
"Exception raised when the relational integrity of the database is affected, "
"e.g. a foreign key check fails. It is a subclass of :exc:`DatabaseError`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:837
2016-10-30 09:46:26 +00:00
msgid ""
"Exception raised for programming errors, e.g. table not found or already "
"exists, syntax error in the SQL statement, wrong number of parameters "
"specified, etc. It is a subclass of :exc:`DatabaseError`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:843
2018-06-17 08:43:33 +00:00
msgid ""
"Exception raised for errors that are related to the database's operation and "
"not necessarily under the control of the programmer, e.g. an unexpected "
"disconnect occurs, the data source name is not found, a transaction could "
"not be processed, etc. It is a subclass of :exc:`DatabaseError`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:850
msgid ""
"Exception raised in case a method or database API was used which is not "
"supported by the database, e.g. calling the :meth:`~Connection.rollback` "
"method on a connection that does not support transaction or has transactions "
"turned off. It is a subclass of :exc:`DatabaseError`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:859
2016-10-30 09:46:26 +00:00
msgid "SQLite and Python types"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:863
2016-10-30 09:46:26 +00:00
msgid "Introduction"
msgstr "Introduction"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:865
2016-10-30 09:46:26 +00:00
msgid ""
"SQLite natively supports the following types: ``NULL``, ``INTEGER``, "
"``REAL``, ``TEXT``, ``BLOB``."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:868
2016-10-30 09:46:26 +00:00
msgid ""
"The following Python types can thus be sent to SQLite without any problem:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:871 ../Doc/library/sqlite3.rst:888
2016-10-30 09:46:26 +00:00
msgid "Python type"
msgstr "Type Python"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:871 ../Doc/library/sqlite3.rst:888
2016-10-30 09:46:26 +00:00
msgid "SQLite type"
msgstr "SQLite type"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:873 ../Doc/library/sqlite3.rst:890
2016-10-30 09:46:26 +00:00
msgid ":const:`None`"
msgstr ":const:`None`"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:873 ../Doc/library/sqlite3.rst:890
2016-10-30 09:46:26 +00:00
msgid "``NULL``"
msgstr "``NULL``"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:875 ../Doc/library/sqlite3.rst:892
2016-10-30 09:46:26 +00:00
msgid ":class:`int`"
msgstr ":class:`int`"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:875 ../Doc/library/sqlite3.rst:892
2016-10-30 09:46:26 +00:00
msgid "``INTEGER``"
msgstr "``INTEGER``"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:877 ../Doc/library/sqlite3.rst:894
2016-10-30 09:46:26 +00:00
msgid ":class:`float`"
msgstr ":class:`float`"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:877 ../Doc/library/sqlite3.rst:894
2016-10-30 09:46:26 +00:00
msgid "``REAL``"
msgstr "``REAL``"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:879
2016-10-30 09:46:26 +00:00
msgid ":class:`str`"
msgstr ":class:`str`"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:879 ../Doc/library/sqlite3.rst:896
2016-10-30 09:46:26 +00:00
msgid "``TEXT``"
msgstr "``TEXT``"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:881 ../Doc/library/sqlite3.rst:899
2016-10-30 09:46:26 +00:00
msgid ":class:`bytes`"
msgstr ":class:`bytes`"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:881 ../Doc/library/sqlite3.rst:899
2016-10-30 09:46:26 +00:00
msgid "``BLOB``"
msgstr "``BLOB``"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:885
2016-10-30 09:46:26 +00:00
msgid "This is how SQLite types are converted to Python types by default:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:896
2016-10-30 09:46:26 +00:00
msgid "depends on :attr:`~Connection.text_factory`, :class:`str` by default"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:902
2016-10-30 09:46:26 +00:00
msgid ""
"The type system of the :mod:`sqlite3` module is extensible in two ways: you "
"can store additional Python types in a SQLite database via object "
"adaptation, and you can let the :mod:`sqlite3` module convert SQLite types "
"to different Python types via converters."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:909
2016-10-30 09:46:26 +00:00
msgid "Using adapters to store additional Python types in SQLite databases"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:911
2016-10-30 09:46:26 +00:00
msgid ""
"As described before, SQLite supports only a limited set of types natively. "
"To use other Python types with SQLite, you must **adapt** them to one of the "
"sqlite3 module's supported types for SQLite: one of NoneType, int, float, "
"str, bytes."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:916
2016-10-30 09:46:26 +00:00
msgid ""
"There are two ways to enable the :mod:`sqlite3` module to adapt a custom "
"Python type to one of the supported ones."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:921
2016-10-30 09:46:26 +00:00
msgid "Letting your object adapt itself"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:923
2016-10-30 09:46:26 +00:00
msgid ""
"This is a good approach if you write the class yourself. Let's suppose you "
"have a class like this::"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:930
2016-10-30 09:46:26 +00:00
msgid ""
"Now you want to store the point in a single SQLite column. First you'll "
"have to choose one of the supported types first to be used for representing "
"the point. Let's just use str and separate the coordinates using a "
"semicolon. Then you need to give your class a method ``__conform__(self, "
"protocol)`` which must return the converted value. The parameter *protocol* "
"will be :class:`PrepareProtocol`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:940
2016-10-30 09:46:26 +00:00
msgid "Registering an adapter callable"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:942
2016-10-30 09:46:26 +00:00
msgid ""
"The other possibility is to create a function that converts the type to the "
"string representation and register the function with :meth:"
"`register_adapter`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:947
2016-10-30 09:46:26 +00:00
msgid ""
"The :mod:`sqlite3` module has two default adapters for Python's built-in :"
"class:`datetime.date` and :class:`datetime.datetime` types. Now let's "
"suppose we want to store :class:`datetime.datetime` objects not in ISO "
"representation, but as a Unix timestamp."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:956
2016-10-30 09:46:26 +00:00
msgid "Converting SQLite values to custom Python types"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:958
2016-10-30 09:46:26 +00:00
msgid ""
"Writing an adapter lets you send custom Python types to SQLite. But to make "
"it really useful we need to make the Python to SQLite to Python roundtrip "
"work."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:961
2016-10-30 09:46:26 +00:00
msgid "Enter converters."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:963
2016-10-30 09:46:26 +00:00
msgid ""
"Let's go back to the :class:`Point` class. We stored the x and y coordinates "
"separated via semicolons as strings in SQLite."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:966
2016-10-30 09:46:26 +00:00
msgid ""
"First, we'll define a converter function that accepts the string as a "
"parameter and constructs a :class:`Point` object from it."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:971
2016-10-30 09:46:26 +00:00
msgid ""
"Converter functions **always** get called with a :class:`bytes` object, no "
"matter under which data type you sent the value to SQLite."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:980
2016-10-30 09:46:26 +00:00
msgid ""
"Now you need to make the :mod:`sqlite3` module know that what you select "
"from the database is actually a point. There are two ways of doing this:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:983
2016-10-30 09:46:26 +00:00
msgid "Implicitly via the declared type"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:985
2016-10-30 09:46:26 +00:00
msgid "Explicitly via the column name"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:987
2016-10-30 09:46:26 +00:00
msgid ""
"Both ways are described in section :ref:`sqlite3-module-contents`, in the "
"entries for the constants :const:`PARSE_DECLTYPES` and :const:"
"`PARSE_COLNAMES`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:990
2016-10-30 09:46:26 +00:00
msgid "The following example illustrates both approaches."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:996
2016-10-30 09:46:26 +00:00
msgid "Default adapters and converters"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:998
2016-10-30 09:46:26 +00:00
msgid ""
"There are default adapters for the date and datetime types in the datetime "
"module. They will be sent as ISO dates/ISO timestamps to SQLite."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1001
2016-10-30 09:46:26 +00:00
msgid ""
"The default converters are registered under the name \"date\" for :class:"
"`datetime.date` and under the name \"timestamp\" for :class:`datetime."
"datetime`."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1005
2016-10-30 09:46:26 +00:00
msgid ""
"This way, you can use date/timestamps from Python without any additional "
"fiddling in most cases. The format of the adapters is also compatible with "
"the experimental SQLite date/time functions."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1009
2016-10-30 09:46:26 +00:00
msgid "The following example demonstrates this."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1013
2016-10-30 09:46:26 +00:00
msgid ""
"If a timestamp stored in SQLite has a fractional part longer than 6 numbers, "
"its value will be truncated to microsecond precision by the timestamp "
"converter."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1021
2016-10-30 09:46:26 +00:00
msgid "Controlling Transactions"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1023
2016-10-30 09:46:26 +00:00
msgid ""
"The underlying ``sqlite3`` library operates in ``autocommit`` mode by "
"default, but the Python :mod:`sqlite3` module by default does not."
2016-10-30 09:46:26 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1026
2016-10-30 09:46:26 +00:00
msgid ""
"``autocommit`` mode means that statements that modify the database take "
"effect immediately. A ``BEGIN`` or ``SAVEPOINT`` statement disables "
"``autocommit`` mode, and a ``COMMIT``, a ``ROLLBACK``, or a ``RELEASE`` that "
"ends the outermost transaction, turns ``autocommit`` mode back on."
2016-10-30 09:46:26 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1031
2016-10-30 09:46:26 +00:00
msgid ""
"The Python :mod:`sqlite3` module by default issues a ``BEGIN`` statement "
"implicitly before a Data Modification Language (DML) statement (i.e. "
"``INSERT``/``UPDATE``/``DELETE``/``REPLACE``)."
2016-10-30 09:46:26 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1035
2016-10-30 09:46:26 +00:00
msgid ""
"You can control which kind of ``BEGIN`` statements :mod:`sqlite3` implicitly "
"executes via the *isolation_level* parameter to the :func:`connect` call, or "
"via the :attr:`isolation_level` property of connections. If you specify no "
"*isolation_level*, a plain ``BEGIN`` is used, which is equivalent to "
"specifying ``DEFERRED``. Other possible values are ``IMMEDIATE`` and "
"``EXCLUSIVE``."
2016-10-30 09:46:26 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1042
2017-04-02 20:14:06 +00:00
msgid ""
"You can disable the :mod:`sqlite3` module's implicit transaction management "
"by setting :attr:`isolation_level` to ``None``. This will leave the "
"underlying ``sqlite3`` library operating in ``autocommit`` mode. You can "
"then completely control the transaction state by explicitly issuing "
"``BEGIN``, ``ROLLBACK``, ``SAVEPOINT``, and ``RELEASE`` statements in your "
"code."
2017-04-02 20:14:06 +00:00
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1048
2016-10-30 09:46:26 +00:00
msgid ""
":mod:`sqlite3` used to implicitly commit an open transaction before DDL "
"statements. This is no longer the case."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1054
2016-10-30 09:46:26 +00:00
msgid "Using :mod:`sqlite3` efficiently"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1058
2016-10-30 09:46:26 +00:00
msgid "Using shortcut methods"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1060
2016-10-30 09:46:26 +00:00
msgid ""
"Using the nonstandard :meth:`execute`, :meth:`executemany` and :meth:"
"`executescript` methods of the :class:`Connection` object, your code can be "
"written more concisely because you don't have to create the (often "
"superfluous) :class:`Cursor` objects explicitly. Instead, the :class:"
"`Cursor` objects are created implicitly and these shortcut methods return "
"the cursor objects. This way, you can execute a ``SELECT`` statement and "
"iterate over it directly using only a single call on the :class:`Connection` "
"object."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1072
2016-10-30 09:46:26 +00:00
msgid "Accessing columns by name instead of by index"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1074
2016-10-30 09:46:26 +00:00
msgid ""
"One useful feature of the :mod:`sqlite3` module is the built-in :class:"
"`sqlite3.Row` class designed to be used as a row factory."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1077
2016-10-30 09:46:26 +00:00
msgid ""
"Rows wrapped with this class can be accessed both by index (like tuples) and "
"case-insensitively by name:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1084
2016-10-30 09:46:26 +00:00
msgid "Using the connection as a context manager"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1086
2016-10-30 09:46:26 +00:00
msgid ""
"Connection objects can be used as context managers that automatically commit "
"or rollback transactions. In the event of an exception, the transaction is "
"rolled back; otherwise, the transaction is committed:"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1095
2016-10-30 09:46:26 +00:00
msgid "Common issues"
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1098
2016-10-30 09:46:26 +00:00
msgid "Multithreading"
msgstr "Fils d'exécution"
2016-10-30 09:46:26 +00:00
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1100
2016-10-30 09:46:26 +00:00
msgid ""
"Older SQLite versions had issues with sharing connections between threads. "
"That's why the Python module disallows sharing connections and cursors "
"between threads. If you still try to do so, you will get an exception at "
"runtime."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1104
2016-10-30 09:46:26 +00:00
msgid ""
"The only exception is calling the :meth:`~Connection.interrupt` method, "
"which only makes sense to call from a different thread."
msgstr ""
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1108
2016-10-30 09:46:26 +00:00
msgid "Footnotes"
msgstr "Notes"
2020-05-24 14:31:50 +00:00
#: ../Doc/library/sqlite3.rst:1109
2016-10-30 09:46:26 +00:00
msgid ""
"The sqlite3 module is not built with loadable extension support by default, "
"because some platforms (notably Mac OS X) have SQLite libraries which are "
"compiled without this feature. To get loadable extension support, you must "
"pass --enable-loadable-sqlite-extensions to configure."
msgstr ""