1# __init__.py
2# Copyright (C) 2005-2024 the SQLAlchemy authors and contributors
3# <see AUTHORS file>
4#
5# This module is part of SQLAlchemy and is released under
6# the MIT License: https://www.opensource.org/licenses/mit-license.php
7
8from __future__ import annotations
9
10from typing import Any
11
12from . import util as _util
13from .engine import AdaptedConnection as AdaptedConnection
14from .engine import BaseRow as BaseRow
15from .engine import BindTyping as BindTyping
16from .engine import ChunkedIteratorResult as ChunkedIteratorResult
17from .engine import Compiled as Compiled
18from .engine import Connection as Connection
19from .engine import create_engine as create_engine
20from .engine import create_mock_engine as create_mock_engine
21from .engine import create_pool_from_url as create_pool_from_url
22from .engine import CreateEnginePlugin as CreateEnginePlugin
23from .engine import CursorResult as CursorResult
24from .engine import Dialect as Dialect
25from .engine import Engine as Engine
26from .engine import engine_from_config as engine_from_config
27from .engine import ExceptionContext as ExceptionContext
28from .engine import ExecutionContext as ExecutionContext
29from .engine import FrozenResult as FrozenResult
30from .engine import Inspector as Inspector
31from .engine import IteratorResult as IteratorResult
32from .engine import make_url as make_url
33from .engine import MappingResult as MappingResult
34from .engine import MergedResult as MergedResult
35from .engine import NestedTransaction as NestedTransaction
36from .engine import Result as Result
37from .engine import result_tuple as result_tuple
38from .engine import ResultProxy as ResultProxy
39from .engine import RootTransaction as RootTransaction
40from .engine import Row as Row
41from .engine import RowMapping as RowMapping
42from .engine import ScalarResult as ScalarResult
43from .engine import Transaction as Transaction
44from .engine import TwoPhaseTransaction as TwoPhaseTransaction
45from .engine import TypeCompiler as TypeCompiler
46from .engine import URL as URL
47from .inspection import inspect as inspect
48from .pool import AssertionPool as AssertionPool
49from .pool import AsyncAdaptedQueuePool as AsyncAdaptedQueuePool
50from .pool import NullPool as NullPool
51from .pool import Pool as Pool
52from .pool import PoolProxiedConnection as PoolProxiedConnection
53from .pool import PoolResetState as PoolResetState
54from .pool import QueuePool as QueuePool
55from .pool import SingletonThreadPool as SingletonThreadPool
56from .pool import StaticPool as StaticPool
57from .schema import BaseDDLElement as BaseDDLElement
58from .schema import BLANK_SCHEMA as BLANK_SCHEMA
59from .schema import CheckConstraint as CheckConstraint
60from .schema import Column as Column
61from .schema import ColumnDefault as ColumnDefault
62from .schema import Computed as Computed
63from .schema import Constraint as Constraint
64from .schema import DDL as DDL
65from .schema import DDLElement as DDLElement
66from .schema import DefaultClause as DefaultClause
67from .schema import ExecutableDDLElement as ExecutableDDLElement
68from .schema import FetchedValue as FetchedValue
69from .schema import ForeignKey as ForeignKey
70from .schema import ForeignKeyConstraint as ForeignKeyConstraint
71from .schema import Identity as Identity
72from .schema import Index as Index
73from .schema import insert_sentinel as insert_sentinel
74from .schema import MetaData as MetaData
75from .schema import PrimaryKeyConstraint as PrimaryKeyConstraint
76from .schema import Sequence as Sequence
77from .schema import Table as Table
78from .schema import UniqueConstraint as UniqueConstraint
79from .sql import ColumnExpressionArgument as ColumnExpressionArgument
80from .sql import NotNullable as NotNullable
81from .sql import Nullable as Nullable
82from .sql import SelectLabelStyle as SelectLabelStyle
83from .sql.expression import Alias as Alias
84from .sql.expression import alias as alias
85from .sql.expression import AliasedReturnsRows as AliasedReturnsRows
86from .sql.expression import all_ as all_
87from .sql.expression import and_ as and_
88from .sql.expression import any_ as any_
89from .sql.expression import asc as asc
90from .sql.expression import between as between
91from .sql.expression import BinaryExpression as BinaryExpression
92from .sql.expression import bindparam as bindparam
93from .sql.expression import BindParameter as BindParameter
94from .sql.expression import bitwise_not as bitwise_not
95from .sql.expression import BooleanClauseList as BooleanClauseList
96from .sql.expression import CacheKey as CacheKey
97from .sql.expression import Case as Case
98from .sql.expression import case as case
99from .sql.expression import Cast as Cast
100from .sql.expression import cast as cast
101from .sql.expression import ClauseElement as ClauseElement
102from .sql.expression import ClauseList as ClauseList
103from .sql.expression import collate as collate
104from .sql.expression import CollectionAggregate as CollectionAggregate
105from .sql.expression import column as column
106from .sql.expression import ColumnClause as ColumnClause
107from .sql.expression import ColumnCollection as ColumnCollection
108from .sql.expression import ColumnElement as ColumnElement
109from .sql.expression import ColumnOperators as ColumnOperators
110from .sql.expression import CompoundSelect as CompoundSelect
111from .sql.expression import CTE as CTE
112from .sql.expression import cte as cte
113from .sql.expression import custom_op as custom_op
114from .sql.expression import Delete as Delete
115from .sql.expression import delete as delete
116from .sql.expression import desc as desc
117from .sql.expression import distinct as distinct
118from .sql.expression import except_ as except_
119from .sql.expression import except_all as except_all
120from .sql.expression import Executable as Executable
121from .sql.expression import Exists as Exists
122from .sql.expression import exists as exists
123from .sql.expression import Extract as Extract
124from .sql.expression import extract as extract
125from .sql.expression import false as false
126from .sql.expression import False_ as False_
127from .sql.expression import FromClause as FromClause
128from .sql.expression import FromGrouping as FromGrouping
129from .sql.expression import func as func
130from .sql.expression import funcfilter as funcfilter
131from .sql.expression import Function as Function
132from .sql.expression import FunctionElement as FunctionElement
133from .sql.expression import FunctionFilter as FunctionFilter
134from .sql.expression import GenerativeSelect as GenerativeSelect
135from .sql.expression import Grouping as Grouping
136from .sql.expression import HasCTE as HasCTE
137from .sql.expression import HasPrefixes as HasPrefixes
138from .sql.expression import HasSuffixes as HasSuffixes
139from .sql.expression import Insert as Insert
140from .sql.expression import insert as insert
141from .sql.expression import intersect as intersect
142from .sql.expression import intersect_all as intersect_all
143from .sql.expression import Join as Join
144from .sql.expression import join as join
145from .sql.expression import Label as Label
146from .sql.expression import label as label
147from .sql.expression import LABEL_STYLE_DEFAULT as LABEL_STYLE_DEFAULT
148from .sql.expression import (
149 LABEL_STYLE_DISAMBIGUATE_ONLY as LABEL_STYLE_DISAMBIGUATE_ONLY,
150)
151from .sql.expression import LABEL_STYLE_NONE as LABEL_STYLE_NONE
152from .sql.expression import (
153 LABEL_STYLE_TABLENAME_PLUS_COL as LABEL_STYLE_TABLENAME_PLUS_COL,
154)
155from .sql.expression import lambda_stmt as lambda_stmt
156from .sql.expression import LambdaElement as LambdaElement
157from .sql.expression import Lateral as Lateral
158from .sql.expression import lateral as lateral
159from .sql.expression import literal as literal
160from .sql.expression import literal_column as literal_column
161from .sql.expression import modifier as modifier
162from .sql.expression import not_ as not_
163from .sql.expression import Null as Null
164from .sql.expression import null as null
165from .sql.expression import nulls_first as nulls_first
166from .sql.expression import nulls_last as nulls_last
167from .sql.expression import nullsfirst as nullsfirst
168from .sql.expression import nullslast as nullslast
169from .sql.expression import Operators as Operators
170from .sql.expression import or_ as or_
171from .sql.expression import outerjoin as outerjoin
172from .sql.expression import outparam as outparam
173from .sql.expression import Over as Over
174from .sql.expression import over as over
175from .sql.expression import quoted_name as quoted_name
176from .sql.expression import ReleaseSavepointClause as ReleaseSavepointClause
177from .sql.expression import ReturnsRows as ReturnsRows
178from .sql.expression import (
179 RollbackToSavepointClause as RollbackToSavepointClause,
180)
181from .sql.expression import SavepointClause as SavepointClause
182from .sql.expression import ScalarSelect as ScalarSelect
183from .sql.expression import Select as Select
184from .sql.expression import select as select
185from .sql.expression import Selectable as Selectable
186from .sql.expression import SelectBase as SelectBase
187from .sql.expression import SQLColumnExpression as SQLColumnExpression
188from .sql.expression import StatementLambdaElement as StatementLambdaElement
189from .sql.expression import Subquery as Subquery
190from .sql.expression import table as table
191from .sql.expression import TableClause as TableClause
192from .sql.expression import TableSample as TableSample
193from .sql.expression import tablesample as tablesample
194from .sql.expression import TableValuedAlias as TableValuedAlias
195from .sql.expression import text as text
196from .sql.expression import TextAsFrom as TextAsFrom
197from .sql.expression import TextClause as TextClause
198from .sql.expression import TextualSelect as TextualSelect
199from .sql.expression import true as true
200from .sql.expression import True_ as True_
201from .sql.expression import try_cast as try_cast
202from .sql.expression import TryCast as TryCast
203from .sql.expression import Tuple as Tuple
204from .sql.expression import tuple_ as tuple_
205from .sql.expression import type_coerce as type_coerce
206from .sql.expression import TypeClause as TypeClause
207from .sql.expression import TypeCoerce as TypeCoerce
208from .sql.expression import UnaryExpression as UnaryExpression
209from .sql.expression import union as union
210from .sql.expression import union_all as union_all
211from .sql.expression import Update as Update
212from .sql.expression import update as update
213from .sql.expression import UpdateBase as UpdateBase
214from .sql.expression import Values as Values
215from .sql.expression import values as values
216from .sql.expression import ValuesBase as ValuesBase
217from .sql.expression import Visitable as Visitable
218from .sql.expression import within_group as within_group
219from .sql.expression import WithinGroup as WithinGroup
220from .types import ARRAY as ARRAY
221from .types import BIGINT as BIGINT
222from .types import BigInteger as BigInteger
223from .types import BINARY as BINARY
224from .types import BLOB as BLOB
225from .types import BOOLEAN as BOOLEAN
226from .types import Boolean as Boolean
227from .types import CHAR as CHAR
228from .types import CLOB as CLOB
229from .types import DATE as DATE
230from .types import Date as Date
231from .types import DATETIME as DATETIME
232from .types import DateTime as DateTime
233from .types import DECIMAL as DECIMAL
234from .types import DOUBLE as DOUBLE
235from .types import Double as Double
236from .types import DOUBLE_PRECISION as DOUBLE_PRECISION
237from .types import Enum as Enum
238from .types import FLOAT as FLOAT
239from .types import Float as Float
240from .types import INT as INT
241from .types import INTEGER as INTEGER
242from .types import Integer as Integer
243from .types import Interval as Interval
244from .types import JSON as JSON
245from .types import LargeBinary as LargeBinary
246from .types import NCHAR as NCHAR
247from .types import NUMERIC as NUMERIC
248from .types import Numeric as Numeric
249from .types import NVARCHAR as NVARCHAR
250from .types import PickleType as PickleType
251from .types import REAL as REAL
252from .types import SMALLINT as SMALLINT
253from .types import SmallInteger as SmallInteger
254from .types import String as String
255from .types import TEXT as TEXT
256from .types import Text as Text
257from .types import TIME as TIME
258from .types import Time as Time
259from .types import TIMESTAMP as TIMESTAMP
260from .types import TupleType as TupleType
261from .types import TypeDecorator as TypeDecorator
262from .types import Unicode as Unicode
263from .types import UnicodeText as UnicodeText
264from .types import UUID as UUID
265from .types import Uuid as Uuid
266from .types import VARBINARY as VARBINARY
267from .types import VARCHAR as VARCHAR
268
269__version__ = "2.1.0b1"
270
271
272def __go(lcls: Any) -> None:
273 _util.preloaded.import_prefix("sqlalchemy")
274
275 from . import exc
276
277 exc._version_token = "".join(__version__.split(".")[0:2])
278
279
280__go(locals())
281
282
283def __getattr__(name: str) -> Any:
284 if name == "SingleonThreadPool":
285 _util.warn_deprecated(
286 "SingleonThreadPool was a typo in the v2 series. "
287 "Please use the correct SingletonThreadPool name.",
288 "2.0.24",
289 )
290 return SingletonThreadPool
291 raise AttributeError(f"module {__name__!r} has no attribute {name!r}")