summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/dialects/sqlite/dml.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sqlalchemy/dialects/sqlite/dml.py')
-rw-r--r--lib/sqlalchemy/dialects/sqlite/dml.py27
1 files changed, 21 insertions, 6 deletions
diff --git a/lib/sqlalchemy/dialects/sqlite/dml.py b/lib/sqlalchemy/dialects/sqlite/dml.py
index 9284070df..7dee7e3b6 100644
--- a/lib/sqlalchemy/dialects/sqlite/dml.py
+++ b/lib/sqlalchemy/dialects/sqlite/dml.py
@@ -15,11 +15,31 @@ from ...sql.base import ColumnCollection
from ...sql.dml import Insert as StandardInsert
from ...sql.elements import ClauseElement
from ...sql.expression import alias
-from ...util.langhelpers import public_factory
__all__ = ("Insert", "insert")
+
+def insert(table):
+ """Construct a sqlite-specific variant :class:`_sqlite.Insert`
+ construct.
+
+ .. container:: inherited_member
+
+ The :func:`sqlalchemy.dialects.sqlite.insert` function creates
+ a :class:`sqlalchemy.dialects.sqlite.Insert`. This class is based
+ on the dialect-agnostic :class:`_sql.Insert` construct which may
+ be constructed using the :func:`_sql.insert` function in
+ SQLAlchemy Core.
+
+ The :class:`_sqlite.Insert` construct includes additional methods
+ :meth:`_sqlite.Insert.on_conflict_do_update`,
+ :meth:`_sqlite.Insert.on_conflict_do_nothing`.
+
+ """
+ return Insert(table)
+
+
SelfInsert = typing.TypeVar("SelfInsert", bound="Insert")
@@ -151,11 +171,6 @@ class Insert(StandardInsert):
return self
-insert = public_factory(
- Insert, ".dialects.sqlite.insert", ".dialects.sqlite.Insert"
-)
-
-
class OnConflictClause(ClauseElement):
stringify_dialect = "sqlite"