@@ -336,7 +336,11 @@ Connection Objects
336
336
statements under the function name *name *. *num_params * is the number of
337
337
parameters the function accepts (if *num_params * is -1, the function may
338
338
take any number of arguments), and *func * is a Python callable that is
339
- called as the SQL function.
339
+ called as the SQL function. If *deterministic * is true, the created function
340
+ is marked as `deterministic <https://sqlite.org/deterministic.html >`_, which
341
+ allows SQLite to perform additional optimizations. This flag is supported by
342
+ SQLite 3.8.3 or higher, :exc: `NotSupportedError ` will be raised if used
343
+ with older versions.
340
344
341
345
The function can return any of the types supported by SQLite: bytes, str, int,
342
346
float and ``None ``.
@@ -771,6 +775,13 @@ Exceptions
771
775
disconnect occurs, the data source name is not found, a transaction could
772
776
not be processed, etc. It is a subclass of :exc: `DatabaseError `.
773
777
778
+ .. exception :: NotSupportedError
779
+
780
+ Exception raised in case a method or database API was used which is not
781
+ supported by the database, e.g. calling the :meth: `~Connection.rollback `
782
+ method on a connection that does not support transaction or has
783
+ transactions turned off. It is a subclass of :exc: `DatabaseError `.
784
+
774
785
775
786
.. _sqlite3-types :
776
787
0 commit comments