diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2022-03-24 21:30:52 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@ci3.zzzcomputing.com> | 2022-03-24 21:30:52 +0000 |
| commit | 221aff778e1eb3c3aa8f8a1f72629177442694bc (patch) | |
| tree | 5f668dd290cce756f4bfc1e60a0ec3c59b0951c8 /lib/sqlalchemy/engine | |
| parent | 1c1c925fe3a77581f4879f6b6fe0bb6b6158cc3d (diff) | |
| parent | 6f02d5edd88fe2475629438b0730181a2b00c5fe (diff) | |
| download | sqlalchemy-221aff778e1eb3c3aa8f8a1f72629177442694bc.tar.gz | |
Merge "pep484 - SQL internals" into main
Diffstat (limited to 'lib/sqlalchemy/engine')
| -rw-r--r-- | lib/sqlalchemy/engine/base.py | 5 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/default.py | 16 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/mock.py | 3 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/reflection.py | 1 |
4 files changed, 11 insertions, 14 deletions
diff --git a/lib/sqlalchemy/engine/base.py b/lib/sqlalchemy/engine/base.py index 6a79cdf02..db6d1ef3f 100644 --- a/lib/sqlalchemy/engine/base.py +++ b/lib/sqlalchemy/engine/base.py @@ -73,6 +73,7 @@ if typing.TYPE_CHECKING: from ..sql.functions import FunctionElement from ..sql.schema import ColumnDefault from ..sql.schema import HasSchemaAttr + from ..sql.schema import SchemaItem """Defines :class:`_engine.Connection` and :class:`_engine.Engine`. @@ -2015,7 +2016,7 @@ class Connection(ConnectionEventsTarget, inspection.Inspectable["Inspector"]): def _run_ddl_visitor( self, visitorcallable: Type[Union[SchemaGenerator, SchemaDropper]], - element: DDLElement, + element: SchemaItem, **kwargs: Any, ) -> None: """run a DDL visitor. @@ -2760,7 +2761,7 @@ class Engine( def _run_ddl_visitor( self, visitorcallable: Type[Union[SchemaGenerator, SchemaDropper]], - element: DDLElement, + element: SchemaItem, **kwargs: Any, ) -> None: with self.begin() as conn: diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index 4a833d2e5..d605af3ef 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -54,7 +54,9 @@ from ..sql import expression from ..sql._typing import is_tuple_type from ..sql.compiler import DDLCompiler from ..sql.compiler import SQLCompiler +from ..sql.elements import ColumnClause from ..sql.elements import quoted_name +from ..sql.schema import default_is_scalar if typing.TYPE_CHECKING: from types import ModuleType @@ -1164,7 +1166,7 @@ class DefaultExecutionContext(ExecutionContext): return () @util.memoized_property - def returning_cols(self) -> Optional[Sequence[Column[Any]]]: + def returning_cols(self) -> Optional[Sequence[ColumnClause[Any]]]: if TYPE_CHECKING: assert isinstance(self.compiled, SQLCompiler) return self.compiled.returning @@ -1778,15 +1780,11 @@ class DefaultExecutionContext(ExecutionContext): # to avoid many calls of get_insert_default()/ # get_update_default() for c in insert_prefetch: - if c.default and not c.default.is_sequence and c.default.is_scalar: - if TYPE_CHECKING: - assert isinstance(c.default, ColumnDefault) + if c.default and default_is_scalar(c.default): scalar_defaults[c] = c.default.arg for c in update_prefetch: - if c.onupdate and c.onupdate.is_scalar: - if TYPE_CHECKING: - assert isinstance(c.onupdate, ColumnDefault) + if c.onupdate and default_is_scalar(c.onupdate): scalar_defaults[c] = c.onupdate.arg for param in self.compiled_parameters: @@ -1817,9 +1815,7 @@ class DefaultExecutionContext(ExecutionContext): ) = self.compiled_parameters[0] for c in compiled.insert_prefetch: - if c.default and not c.default.is_sequence and c.default.is_scalar: - if TYPE_CHECKING: - assert isinstance(c.default, ColumnDefault) + if c.default and default_is_scalar(c.default): val = c.default.arg else: val = self.get_insert_default(c) diff --git a/lib/sqlalchemy/engine/mock.py b/lib/sqlalchemy/engine/mock.py index a0ba96603..c94dd1032 100644 --- a/lib/sqlalchemy/engine/mock.py +++ b/lib/sqlalchemy/engine/mock.py @@ -32,6 +32,7 @@ if typing.TYPE_CHECKING: from ..sql.ddl import SchemaDropper from ..sql.ddl import SchemaGenerator from ..sql.schema import HasSchemaAttr + from ..sql.schema import SchemaItem class MockConnection: @@ -55,7 +56,7 @@ class MockConnection: def _run_ddl_visitor( self, visitorcallable: Type[Union[SchemaGenerator, SchemaDropper]], - element: DDLElement, + element: SchemaItem, **kwargs: Any, ) -> None: kwargs["checkfirst"] = False diff --git a/lib/sqlalchemy/engine/reflection.py b/lib/sqlalchemy/engine/reflection.py index e1281365e..b8ece2b1d 100644 --- a/lib/sqlalchemy/engine/reflection.py +++ b/lib/sqlalchemy/engine/reflection.py @@ -317,7 +317,6 @@ class Inspector(inspection.Inspectable["Inspector"]): with an already-given :class:`_schema.MetaData`. """ - with self._operation_context() as conn: tnames = self.dialect.get_table_names( conn, schema, info_cache=self.info_cache |
