1# dialects/postgresql/__init__.py
2# Copyright (C) 2005-2026 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# mypy: ignore-errors
8
9from types import ModuleType
10
11from . import array as arraylib # noqa # keep above base and other dialects
12from . import asyncpg # noqa
13from . import base
14from . import pg8000 # noqa
15from . import psycopg # noqa
16from . import psycopg2 # noqa
17from . import psycopg2cffi # noqa
18from .array import All
19from .array import Any
20from .array import ARRAY
21from .array import array
22from .base import BIGINT
23from .base import BOOLEAN
24from .base import CHAR
25from .base import DATE
26from .base import DOMAIN
27from .base import DOUBLE_PRECISION
28from .base import FLOAT
29from .base import INTEGER
30from .base import NUMERIC
31from .base import REAL
32from .base import SMALLINT
33from .base import TEXT
34from .base import UUID
35from .base import VARCHAR
36from .bitstring import BitString
37from .dml import Insert
38from .dml import insert
39from .ext import aggregate_order_by
40from .ext import array_agg
41from .ext import distinct_on
42from .ext import ExcludeConstraint
43from .ext import phraseto_tsquery
44from .ext import plainto_tsquery
45from .ext import to_tsquery
46from .ext import to_tsvector
47from .ext import ts_headline
48from .ext import websearch_to_tsquery
49from .hstore import HSTORE
50from .hstore import hstore
51from .json import JSON
52from .json import JSONB
53from .json import JSONPATH
54from .named_types import CreateDomainType
55from .named_types import CreateEnumType
56from .named_types import DropDomainType
57from .named_types import DropEnumType
58from .named_types import ENUM
59from .named_types import NamedType
60from .ranges import AbstractMultiRange
61from .ranges import AbstractRange
62from .ranges import AbstractSingleRange
63from .ranges import DATEMULTIRANGE
64from .ranges import DATERANGE
65from .ranges import INT4MULTIRANGE
66from .ranges import INT4RANGE
67from .ranges import INT8MULTIRANGE
68from .ranges import INT8RANGE
69from .ranges import MultiRange
70from .ranges import NUMMULTIRANGE
71from .ranges import NUMRANGE
72from .ranges import Range
73from .ranges import TSMULTIRANGE
74from .ranges import TSRANGE
75from .ranges import TSTZMULTIRANGE
76from .ranges import TSTZRANGE
77from .types import BIT
78from .types import BYTEA
79from .types import CIDR
80from .types import CITEXT
81from .types import INET
82from .types import INTERVAL
83from .types import MACADDR
84from .types import MACADDR8
85from .types import MONEY
86from .types import OID
87from .types import REGCLASS
88from .types import REGCONFIG
89from .types import TIME
90from .types import TIMESTAMP
91from .types import TSQUERY
92from .types import TSVECTOR
93
94# Alias psycopg also as psycopg_async
95psycopg_async = type(
96 "psycopg_async", (ModuleType,), {"dialect": psycopg.dialect_async}
97)
98
99base.dialect = dialect = psycopg.dialect
100
101
102__all__ = (
103 "INTEGER",
104 "BIGINT",
105 "SMALLINT",
106 "VARCHAR",
107 "CHAR",
108 "TEXT",
109 "NUMERIC",
110 "FLOAT",
111 "REAL",
112 "INET",
113 "CIDR",
114 "CITEXT",
115 "UUID",
116 "BIT",
117 "MACADDR",
118 "MACADDR8",
119 "MONEY",
120 "OID",
121 "REGCLASS",
122 "REGCONFIG",
123 "TSQUERY",
124 "TSVECTOR",
125 "DOUBLE_PRECISION",
126 "TIMESTAMP",
127 "TIME",
128 "DATE",
129 "BYTEA",
130 "BOOLEAN",
131 "INTERVAL",
132 "ARRAY",
133 "ENUM",
134 "DOMAIN",
135 "dialect",
136 "array",
137 "HSTORE",
138 "hstore",
139 "INT4RANGE",
140 "INT8RANGE",
141 "NUMRANGE",
142 "DATERANGE",
143 "INT4MULTIRANGE",
144 "INT8MULTIRANGE",
145 "NUMMULTIRANGE",
146 "DATEMULTIRANGE",
147 "TSVECTOR",
148 "TSRANGE",
149 "TSTZRANGE",
150 "TSMULTIRANGE",
151 "TSTZMULTIRANGE",
152 "JSON",
153 "JSONB",
154 "JSONPATH",
155 "Any",
156 "All",
157 "BitString",
158 "DropEnumType",
159 "DropDomainType",
160 "CreateDomainType",
161 "NamedType",
162 "CreateEnumType",
163 "ExcludeConstraint",
164 "Range",
165 "aggregate_order_by",
166 "array_agg",
167 "insert",
168 "Insert",
169 "distinct_on",
170)