sqlspec 0.9.1__py3-none-any.whl → 0.10.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of sqlspec might be problematic. Click here for more details.
- sqlspec/__init__.py +2 -1
- sqlspec/adapters/adbc/__init__.py +2 -1
- sqlspec/adapters/adbc/config.py +7 -13
- sqlspec/adapters/adbc/driver.py +37 -30
- sqlspec/adapters/aiosqlite/__init__.py +2 -1
- sqlspec/adapters/aiosqlite/config.py +10 -12
- sqlspec/adapters/aiosqlite/driver.py +36 -31
- sqlspec/adapters/asyncmy/__init__.py +2 -1
- sqlspec/adapters/asyncmy/driver.py +34 -31
- sqlspec/adapters/asyncpg/config.py +1 -3
- sqlspec/adapters/asyncpg/driver.py +7 -3
- sqlspec/adapters/bigquery/__init__.py +4 -0
- sqlspec/adapters/bigquery/config/__init__.py +3 -0
- sqlspec/adapters/bigquery/config/_common.py +40 -0
- sqlspec/adapters/bigquery/config/_sync.py +87 -0
- sqlspec/adapters/bigquery/driver.py +701 -0
- sqlspec/adapters/duckdb/__init__.py +2 -1
- sqlspec/adapters/duckdb/config.py +17 -18
- sqlspec/adapters/duckdb/driver.py +38 -30
- sqlspec/adapters/oracledb/__init__.py +8 -1
- sqlspec/adapters/oracledb/config/_asyncio.py +7 -8
- sqlspec/adapters/oracledb/config/_sync.py +6 -7
- sqlspec/adapters/oracledb/driver.py +65 -62
- sqlspec/adapters/psqlpy/__init__.py +9 -0
- sqlspec/adapters/psqlpy/config.py +5 -5
- sqlspec/adapters/psqlpy/driver.py +34 -28
- sqlspec/adapters/psycopg/__init__.py +8 -1
- sqlspec/adapters/psycopg/config/__init__.py +10 -0
- sqlspec/adapters/psycopg/config/_async.py +6 -7
- sqlspec/adapters/psycopg/config/_sync.py +7 -8
- sqlspec/adapters/psycopg/driver.py +63 -53
- sqlspec/adapters/sqlite/__init__.py +2 -1
- sqlspec/adapters/sqlite/config.py +12 -11
- sqlspec/adapters/sqlite/driver.py +36 -29
- sqlspec/base.py +1 -66
- sqlspec/exceptions.py +9 -0
- sqlspec/extensions/litestar/config.py +3 -11
- sqlspec/extensions/litestar/handlers.py +2 -1
- sqlspec/extensions/litestar/plugin.py +4 -2
- sqlspec/mixins.py +156 -0
- sqlspec/typing.py +19 -1
- {sqlspec-0.9.1.dist-info → sqlspec-0.10.0.dist-info}/METADATA +8 -3
- sqlspec-0.10.0.dist-info/RECORD +67 -0
- sqlspec-0.9.1.dist-info/RECORD +0 -61
- {sqlspec-0.9.1.dist-info → sqlspec-0.10.0.dist-info}/WHEEL +0 -0
- {sqlspec-0.9.1.dist-info → sqlspec-0.10.0.dist-info}/licenses/LICENSE +0 -0
- {sqlspec-0.9.1.dist-info → sqlspec-0.10.0.dist-info}/licenses/NOTICE +0 -0
|
@@ -1,38 +1,39 @@
|
|
|
1
1
|
from contextlib import asynccontextmanager, contextmanager
|
|
2
2
|
from typing import TYPE_CHECKING, Any, Optional, Union, cast, overload
|
|
3
3
|
|
|
4
|
-
from
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
T,
|
|
10
|
-
)
|
|
11
|
-
from sqlspec.typing import ArrowTable, StatementParameterType
|
|
4
|
+
from oracledb import AsyncConnection, AsyncCursor, Connection, Cursor
|
|
5
|
+
|
|
6
|
+
from sqlspec.base import AsyncDriverAdapterProtocol, SyncDriverAdapterProtocol
|
|
7
|
+
from sqlspec.mixins import AsyncArrowBulkOperationsMixin, SQLTranslatorMixin, SyncArrowBulkOperationsMixin
|
|
8
|
+
from sqlspec.typing import ArrowTable, StatementParameterType, T
|
|
12
9
|
|
|
13
10
|
if TYPE_CHECKING:
|
|
14
11
|
from collections.abc import AsyncGenerator, Generator, Sequence
|
|
15
12
|
|
|
16
|
-
from oracledb import AsyncConnection, AsyncCursor, Connection, Cursor
|
|
17
|
-
|
|
18
|
-
# Conditionally import ArrowTable for type checking
|
|
19
13
|
from sqlspec.typing import ModelDTOT
|
|
20
14
|
|
|
21
|
-
__all__ = ("OracleAsyncDriver", "OracleSyncDriver")
|
|
15
|
+
__all__ = ("OracleAsyncConnection", "OracleAsyncDriver", "OracleSyncConnection", "OracleSyncDriver")
|
|
22
16
|
|
|
17
|
+
OracleSyncConnection = Connection
|
|
18
|
+
OracleAsyncConnection = AsyncConnection
|
|
23
19
|
|
|
24
|
-
|
|
20
|
+
|
|
21
|
+
class OracleSyncDriver(
|
|
22
|
+
SyncArrowBulkOperationsMixin["OracleSyncConnection"],
|
|
23
|
+
SQLTranslatorMixin["OracleSyncConnection"],
|
|
24
|
+
SyncDriverAdapterProtocol["OracleSyncConnection"],
|
|
25
|
+
):
|
|
25
26
|
"""Oracle Sync Driver Adapter."""
|
|
26
27
|
|
|
27
|
-
connection: "
|
|
28
|
+
connection: "OracleSyncConnection"
|
|
28
29
|
dialect: str = "oracle"
|
|
29
30
|
|
|
30
|
-
def __init__(self, connection: "
|
|
31
|
+
def __init__(self, connection: "OracleSyncConnection") -> None:
|
|
31
32
|
self.connection = connection
|
|
32
33
|
|
|
33
34
|
@staticmethod
|
|
34
35
|
@contextmanager
|
|
35
|
-
def _with_cursor(connection: "
|
|
36
|
+
def _with_cursor(connection: "OracleSyncConnection") -> "Generator[Cursor, None, None]":
|
|
36
37
|
cursor = connection.cursor()
|
|
37
38
|
try:
|
|
38
39
|
yield cursor
|
|
@@ -47,7 +48,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
47
48
|
parameters: "Optional[StatementParameterType]" = None,
|
|
48
49
|
/,
|
|
49
50
|
*,
|
|
50
|
-
connection: "Optional[
|
|
51
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
51
52
|
schema_type: None = None,
|
|
52
53
|
**kwargs: Any,
|
|
53
54
|
) -> "Sequence[dict[str, Any]]": ...
|
|
@@ -58,7 +59,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
58
59
|
parameters: "Optional[StatementParameterType]" = None,
|
|
59
60
|
/,
|
|
60
61
|
*,
|
|
61
|
-
connection: "Optional[
|
|
62
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
62
63
|
schema_type: "type[ModelDTOT]",
|
|
63
64
|
**kwargs: Any,
|
|
64
65
|
) -> "Sequence[ModelDTOT]": ...
|
|
@@ -68,7 +69,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
68
69
|
parameters: "Optional[StatementParameterType]" = None,
|
|
69
70
|
/,
|
|
70
71
|
*,
|
|
71
|
-
connection: "Optional[
|
|
72
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
72
73
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
73
74
|
**kwargs: Any,
|
|
74
75
|
) -> "Sequence[Union[ModelDTOT, dict[str, Any]]]":
|
|
@@ -106,7 +107,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
106
107
|
parameters: "Optional[StatementParameterType]" = None,
|
|
107
108
|
/,
|
|
108
109
|
*,
|
|
109
|
-
connection: "Optional[
|
|
110
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
110
111
|
schema_type: None = None,
|
|
111
112
|
**kwargs: Any,
|
|
112
113
|
) -> "dict[str, Any]": ...
|
|
@@ -117,7 +118,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
117
118
|
parameters: "Optional[StatementParameterType]" = None,
|
|
118
119
|
/,
|
|
119
120
|
*,
|
|
120
|
-
connection: "Optional[
|
|
121
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
121
122
|
schema_type: "type[ModelDTOT]",
|
|
122
123
|
**kwargs: Any,
|
|
123
124
|
) -> "ModelDTOT": ...
|
|
@@ -127,7 +128,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
127
128
|
parameters: "Optional[StatementParameterType]" = None,
|
|
128
129
|
/,
|
|
129
130
|
*,
|
|
130
|
-
connection: "Optional[
|
|
131
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
131
132
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
132
133
|
**kwargs: Any,
|
|
133
134
|
) -> "Union[ModelDTOT, dict[str, Any]]":
|
|
@@ -166,7 +167,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
166
167
|
parameters: "Optional[StatementParameterType]" = None,
|
|
167
168
|
/,
|
|
168
169
|
*,
|
|
169
|
-
connection: "Optional[
|
|
170
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
170
171
|
schema_type: None = None,
|
|
171
172
|
**kwargs: Any,
|
|
172
173
|
) -> "Optional[dict[str, Any]]": ...
|
|
@@ -177,7 +178,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
177
178
|
parameters: "Optional[StatementParameterType]" = None,
|
|
178
179
|
/,
|
|
179
180
|
*,
|
|
180
|
-
connection: "Optional[
|
|
181
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
181
182
|
schema_type: "type[ModelDTOT]",
|
|
182
183
|
**kwargs: Any,
|
|
183
184
|
) -> "Optional[ModelDTOT]": ...
|
|
@@ -187,7 +188,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
187
188
|
parameters: "Optional[StatementParameterType]" = None,
|
|
188
189
|
/,
|
|
189
190
|
*,
|
|
190
|
-
connection: "Optional[
|
|
191
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
191
192
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
192
193
|
**kwargs: Any,
|
|
193
194
|
) -> "Optional[Union[ModelDTOT, dict[str, Any]]]":
|
|
@@ -221,7 +222,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
221
222
|
parameters: "Optional[StatementParameterType]" = None,
|
|
222
223
|
/,
|
|
223
224
|
*,
|
|
224
|
-
connection: "Optional[
|
|
225
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
225
226
|
schema_type: None = None,
|
|
226
227
|
**kwargs: Any,
|
|
227
228
|
) -> "Any": ...
|
|
@@ -232,7 +233,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
232
233
|
parameters: "Optional[StatementParameterType]" = None,
|
|
233
234
|
/,
|
|
234
235
|
*,
|
|
235
|
-
connection: "Optional[
|
|
236
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
236
237
|
schema_type: "type[T]",
|
|
237
238
|
**kwargs: Any,
|
|
238
239
|
) -> "T": ...
|
|
@@ -242,7 +243,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
242
243
|
parameters: "Optional[StatementParameterType]" = None,
|
|
243
244
|
/,
|
|
244
245
|
*,
|
|
245
|
-
connection: "Optional[
|
|
246
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
246
247
|
schema_type: "Optional[type[T]]" = None,
|
|
247
248
|
**kwargs: Any,
|
|
248
249
|
) -> "Union[T, Any]":
|
|
@@ -270,7 +271,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
270
271
|
parameters: "Optional[StatementParameterType]" = None,
|
|
271
272
|
/,
|
|
272
273
|
*,
|
|
273
|
-
connection: "Optional[
|
|
274
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
274
275
|
schema_type: None = None,
|
|
275
276
|
**kwargs: Any,
|
|
276
277
|
) -> "Optional[Any]": ...
|
|
@@ -281,7 +282,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
281
282
|
parameters: "Optional[StatementParameterType]" = None,
|
|
282
283
|
/,
|
|
283
284
|
*,
|
|
284
|
-
connection: "Optional[
|
|
285
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
285
286
|
schema_type: "type[T]",
|
|
286
287
|
**kwargs: Any,
|
|
287
288
|
) -> "Optional[T]": ...
|
|
@@ -291,7 +292,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
291
292
|
parameters: "Optional[StatementParameterType]" = None,
|
|
292
293
|
/,
|
|
293
294
|
*,
|
|
294
|
-
connection: "Optional[
|
|
295
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
295
296
|
schema_type: "Optional[type[T]]" = None,
|
|
296
297
|
**kwargs: Any,
|
|
297
298
|
) -> "Optional[Union[T, Any]]":
|
|
@@ -320,7 +321,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
320
321
|
parameters: "Optional[StatementParameterType]" = None,
|
|
321
322
|
/,
|
|
322
323
|
*,
|
|
323
|
-
connection: "Optional[
|
|
324
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
324
325
|
**kwargs: Any,
|
|
325
326
|
) -> int:
|
|
326
327
|
"""Insert, update, or delete data from the database.
|
|
@@ -342,7 +343,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
342
343
|
parameters: "Optional[StatementParameterType]" = None,
|
|
343
344
|
/,
|
|
344
345
|
*,
|
|
345
|
-
connection: "Optional[
|
|
346
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
346
347
|
schema_type: None = None,
|
|
347
348
|
**kwargs: Any,
|
|
348
349
|
) -> "dict[str, Any]": ...
|
|
@@ -353,7 +354,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
353
354
|
parameters: "Optional[StatementParameterType]" = None,
|
|
354
355
|
/,
|
|
355
356
|
*,
|
|
356
|
-
connection: "Optional[
|
|
357
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
357
358
|
schema_type: "type[ModelDTOT]",
|
|
358
359
|
**kwargs: Any,
|
|
359
360
|
) -> "ModelDTOT": ...
|
|
@@ -363,7 +364,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
363
364
|
parameters: "Optional[StatementParameterType]" = None,
|
|
364
365
|
/,
|
|
365
366
|
*,
|
|
366
|
-
connection: "Optional[
|
|
367
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
367
368
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
368
369
|
**kwargs: Any,
|
|
369
370
|
) -> "Optional[Union[dict[str, Any], ModelDTOT]]":
|
|
@@ -396,7 +397,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
396
397
|
parameters: "Optional[StatementParameterType]" = None,
|
|
397
398
|
/,
|
|
398
399
|
*,
|
|
399
|
-
connection: "Optional[
|
|
400
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
400
401
|
**kwargs: Any,
|
|
401
402
|
) -> str:
|
|
402
403
|
"""Execute a script.
|
|
@@ -417,7 +418,7 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
417
418
|
parameters: "Optional[StatementParameterType]" = None,
|
|
418
419
|
/,
|
|
419
420
|
*,
|
|
420
|
-
connection: "Optional[
|
|
421
|
+
connection: "Optional[OracleSyncConnection]" = None,
|
|
421
422
|
**kwargs: Any,
|
|
422
423
|
) -> "ArrowTable": # pyright: ignore[reportUnknownVariableType]
|
|
423
424
|
"""Execute a SQL query and return results as an Apache Arrow Table.
|
|
@@ -433,19 +434,21 @@ class OracleSyncDriver(SyncArrowBulkOperationsMixin["Connection"], SyncDriverAda
|
|
|
433
434
|
|
|
434
435
|
|
|
435
436
|
class OracleAsyncDriver(
|
|
436
|
-
AsyncArrowBulkOperationsMixin["
|
|
437
|
+
AsyncArrowBulkOperationsMixin["OracleAsyncConnection"],
|
|
438
|
+
SQLTranslatorMixin["OracleAsyncConnection"],
|
|
439
|
+
AsyncDriverAdapterProtocol["OracleAsyncConnection"],
|
|
437
440
|
):
|
|
438
441
|
"""Oracle Async Driver Adapter."""
|
|
439
442
|
|
|
440
|
-
connection: "
|
|
443
|
+
connection: "OracleAsyncConnection"
|
|
441
444
|
dialect: str = "oracle"
|
|
442
445
|
|
|
443
|
-
def __init__(self, connection: "
|
|
446
|
+
def __init__(self, connection: "OracleAsyncConnection") -> None:
|
|
444
447
|
self.connection = connection
|
|
445
448
|
|
|
446
449
|
@staticmethod
|
|
447
450
|
@asynccontextmanager
|
|
448
|
-
async def _with_cursor(connection: "
|
|
451
|
+
async def _with_cursor(connection: "OracleAsyncConnection") -> "AsyncGenerator[AsyncCursor, None]":
|
|
449
452
|
cursor = connection.cursor()
|
|
450
453
|
try:
|
|
451
454
|
yield cursor
|
|
@@ -460,7 +463,7 @@ class OracleAsyncDriver(
|
|
|
460
463
|
parameters: "Optional[StatementParameterType]" = None,
|
|
461
464
|
/,
|
|
462
465
|
*,
|
|
463
|
-
connection: "Optional[
|
|
466
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
464
467
|
schema_type: None = None,
|
|
465
468
|
**kwargs: Any,
|
|
466
469
|
) -> "Sequence[dict[str, Any]]": ...
|
|
@@ -471,7 +474,7 @@ class OracleAsyncDriver(
|
|
|
471
474
|
parameters: "Optional[StatementParameterType]" = None,
|
|
472
475
|
/,
|
|
473
476
|
*,
|
|
474
|
-
connection: "Optional[
|
|
477
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
475
478
|
schema_type: "type[ModelDTOT]",
|
|
476
479
|
**kwargs: Any,
|
|
477
480
|
) -> "Sequence[ModelDTOT]": ...
|
|
@@ -481,7 +484,7 @@ class OracleAsyncDriver(
|
|
|
481
484
|
parameters: "Optional[StatementParameterType]" = None,
|
|
482
485
|
/,
|
|
483
486
|
*,
|
|
484
|
-
connection: "Optional[
|
|
487
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
485
488
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
486
489
|
**kwargs: Any,
|
|
487
490
|
) -> "Sequence[Union[ModelDTOT, dict[str, Any]]]":
|
|
@@ -513,7 +516,7 @@ class OracleAsyncDriver(
|
|
|
513
516
|
parameters: "Optional[StatementParameterType]" = None,
|
|
514
517
|
/,
|
|
515
518
|
*,
|
|
516
|
-
connection: "Optional[
|
|
519
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
517
520
|
schema_type: None = None,
|
|
518
521
|
**kwargs: Any,
|
|
519
522
|
) -> "dict[str, Any]": ...
|
|
@@ -524,7 +527,7 @@ class OracleAsyncDriver(
|
|
|
524
527
|
parameters: "Optional[StatementParameterType]" = None,
|
|
525
528
|
/,
|
|
526
529
|
*,
|
|
527
|
-
connection: "Optional[
|
|
530
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
528
531
|
schema_type: "type[ModelDTOT]",
|
|
529
532
|
**kwargs: Any,
|
|
530
533
|
) -> "ModelDTOT": ...
|
|
@@ -534,7 +537,7 @@ class OracleAsyncDriver(
|
|
|
534
537
|
parameters: "Optional[StatementParameterType]" = None,
|
|
535
538
|
/,
|
|
536
539
|
*,
|
|
537
|
-
connection: "Optional[
|
|
540
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
538
541
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
539
542
|
**kwargs: Any,
|
|
540
543
|
) -> "Union[ModelDTOT, dict[str, Any]]":
|
|
@@ -565,7 +568,7 @@ class OracleAsyncDriver(
|
|
|
565
568
|
parameters: "Optional[StatementParameterType]" = None,
|
|
566
569
|
/,
|
|
567
570
|
*,
|
|
568
|
-
connection: "Optional[
|
|
571
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
569
572
|
schema_type: None = None,
|
|
570
573
|
**kwargs: Any,
|
|
571
574
|
) -> "Optional[dict[str, Any]]": ...
|
|
@@ -576,7 +579,7 @@ class OracleAsyncDriver(
|
|
|
576
579
|
parameters: "Optional[StatementParameterType]" = None,
|
|
577
580
|
/,
|
|
578
581
|
*,
|
|
579
|
-
connection: "Optional[
|
|
582
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
580
583
|
schema_type: "type[ModelDTOT]",
|
|
581
584
|
**kwargs: Any,
|
|
582
585
|
) -> "Optional[ModelDTOT]": ...
|
|
@@ -586,7 +589,7 @@ class OracleAsyncDriver(
|
|
|
586
589
|
parameters: "Optional[StatementParameterType]" = None,
|
|
587
590
|
/,
|
|
588
591
|
*,
|
|
589
|
-
connection: "Optional[
|
|
592
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
590
593
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
591
594
|
**kwargs: Any,
|
|
592
595
|
) -> "Optional[Union[ModelDTOT, dict[str, Any]]]":
|
|
@@ -620,7 +623,7 @@ class OracleAsyncDriver(
|
|
|
620
623
|
parameters: "Optional[StatementParameterType]" = None,
|
|
621
624
|
/,
|
|
622
625
|
*,
|
|
623
|
-
connection: "Optional[
|
|
626
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
624
627
|
schema_type: None = None,
|
|
625
628
|
**kwargs: Any,
|
|
626
629
|
) -> "Any": ...
|
|
@@ -631,7 +634,7 @@ class OracleAsyncDriver(
|
|
|
631
634
|
parameters: "Optional[StatementParameterType]" = None,
|
|
632
635
|
/,
|
|
633
636
|
*,
|
|
634
|
-
connection: "Optional[
|
|
637
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
635
638
|
schema_type: "type[T]",
|
|
636
639
|
**kwargs: Any,
|
|
637
640
|
) -> "T": ...
|
|
@@ -641,7 +644,7 @@ class OracleAsyncDriver(
|
|
|
641
644
|
parameters: "Optional[StatementParameterType]" = None,
|
|
642
645
|
/,
|
|
643
646
|
*,
|
|
644
|
-
connection: "Optional[
|
|
647
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
645
648
|
schema_type: "Optional[type[T]]" = None,
|
|
646
649
|
**kwargs: Any,
|
|
647
650
|
) -> "Union[T, Any]":
|
|
@@ -669,7 +672,7 @@ class OracleAsyncDriver(
|
|
|
669
672
|
parameters: "Optional[StatementParameterType]" = None,
|
|
670
673
|
/,
|
|
671
674
|
*,
|
|
672
|
-
connection: "Optional[
|
|
675
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
673
676
|
schema_type: None = None,
|
|
674
677
|
**kwargs: Any,
|
|
675
678
|
) -> "Optional[Any]": ...
|
|
@@ -680,7 +683,7 @@ class OracleAsyncDriver(
|
|
|
680
683
|
parameters: "Optional[StatementParameterType]" = None,
|
|
681
684
|
/,
|
|
682
685
|
*,
|
|
683
|
-
connection: "Optional[
|
|
686
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
684
687
|
schema_type: "type[T]",
|
|
685
688
|
**kwargs: Any,
|
|
686
689
|
) -> "Optional[T]": ...
|
|
@@ -690,7 +693,7 @@ class OracleAsyncDriver(
|
|
|
690
693
|
parameters: "Optional[StatementParameterType]" = None,
|
|
691
694
|
/,
|
|
692
695
|
*,
|
|
693
|
-
connection: "Optional[
|
|
696
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
694
697
|
schema_type: "Optional[type[T]]" = None,
|
|
695
698
|
**kwargs: Any,
|
|
696
699
|
) -> "Optional[Union[T, Any]]":
|
|
@@ -719,7 +722,7 @@ class OracleAsyncDriver(
|
|
|
719
722
|
parameters: "Optional[StatementParameterType]" = None,
|
|
720
723
|
/,
|
|
721
724
|
*,
|
|
722
|
-
connection: "Optional[
|
|
725
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
723
726
|
**kwargs: Any,
|
|
724
727
|
) -> int:
|
|
725
728
|
"""Insert, update, or delete data from the database.
|
|
@@ -741,7 +744,7 @@ class OracleAsyncDriver(
|
|
|
741
744
|
parameters: "Optional[StatementParameterType]" = None,
|
|
742
745
|
/,
|
|
743
746
|
*,
|
|
744
|
-
connection: "Optional[
|
|
747
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
745
748
|
schema_type: None = None,
|
|
746
749
|
**kwargs: Any,
|
|
747
750
|
) -> "dict[str, Any]": ...
|
|
@@ -752,7 +755,7 @@ class OracleAsyncDriver(
|
|
|
752
755
|
parameters: "Optional[StatementParameterType]" = None,
|
|
753
756
|
/,
|
|
754
757
|
*,
|
|
755
|
-
connection: "Optional[
|
|
758
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
756
759
|
schema_type: "type[ModelDTOT]",
|
|
757
760
|
**kwargs: Any,
|
|
758
761
|
) -> "ModelDTOT": ...
|
|
@@ -762,7 +765,7 @@ class OracleAsyncDriver(
|
|
|
762
765
|
parameters: "Optional[StatementParameterType]" = None,
|
|
763
766
|
/,
|
|
764
767
|
*,
|
|
765
|
-
connection: "Optional[
|
|
768
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
766
769
|
schema_type: "Optional[type[ModelDTOT]]" = None,
|
|
767
770
|
**kwargs: Any,
|
|
768
771
|
) -> "Optional[Union[dict[str, Any], ModelDTOT]]":
|
|
@@ -795,7 +798,7 @@ class OracleAsyncDriver(
|
|
|
795
798
|
parameters: "Optional[StatementParameterType]" = None,
|
|
796
799
|
/,
|
|
797
800
|
*,
|
|
798
|
-
connection: "Optional[
|
|
801
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
799
802
|
**kwargs: Any,
|
|
800
803
|
) -> str:
|
|
801
804
|
"""Execute a script.
|
|
@@ -816,7 +819,7 @@ class OracleAsyncDriver(
|
|
|
816
819
|
parameters: "Optional[StatementParameterType]" = None,
|
|
817
820
|
/,
|
|
818
821
|
*,
|
|
819
|
-
connection: "Optional[
|
|
822
|
+
connection: "Optional[OracleAsyncConnection]" = None,
|
|
820
823
|
**kwargs: Any,
|
|
821
824
|
) -> "ArrowTable": # pyright: ignore[reportUnknownVariableType]
|
|
822
825
|
"""Execute a SQL query asynchronously and return results as an Apache Arrow Table.
|
|
@@ -6,7 +6,7 @@ from typing import TYPE_CHECKING, Any, Optional, Union
|
|
|
6
6
|
|
|
7
7
|
from psqlpy import Connection, ConnectionPool
|
|
8
8
|
|
|
9
|
-
from sqlspec.adapters.psqlpy.driver import PsqlpyDriver
|
|
9
|
+
from sqlspec.adapters.psqlpy.driver import PsqlpyConnection, PsqlpyDriver
|
|
10
10
|
from sqlspec.base import AsyncDatabaseConfig, GenericPoolConfig
|
|
11
11
|
from sqlspec.exceptions import ImproperConfigurationError
|
|
12
12
|
from sqlspec.typing import Empty, EmptyType, dataclass_to_dict
|
|
@@ -94,7 +94,7 @@ class PsqlpyPoolConfig(GenericPoolConfig):
|
|
|
94
94
|
|
|
95
95
|
|
|
96
96
|
@dataclass
|
|
97
|
-
class PsqlpyConfig(AsyncDatabaseConfig[
|
|
97
|
+
class PsqlpyConfig(AsyncDatabaseConfig[PsqlpyConnection, ConnectionPool, PsqlpyDriver]):
|
|
98
98
|
"""Configuration for psqlpy database connections, managing a connection pool.
|
|
99
99
|
|
|
100
100
|
This configuration class wraps `PsqlpyPoolConfig` and manages the lifecycle
|
|
@@ -105,7 +105,7 @@ class PsqlpyConfig(AsyncDatabaseConfig[Connection, ConnectionPool, PsqlpyDriver]
|
|
|
105
105
|
"""Psqlpy Pool configuration"""
|
|
106
106
|
driver_type: type[PsqlpyDriver] = field(default=PsqlpyDriver, init=False, hash=False)
|
|
107
107
|
"""Type of the driver object"""
|
|
108
|
-
connection_type: type[
|
|
108
|
+
connection_type: type[PsqlpyConnection] = field(default=PsqlpyConnection, init=False, hash=False)
|
|
109
109
|
"""Type of the connection object"""
|
|
110
110
|
pool_instance: Optional[ConnectionPool] = field(default=None, hash=False)
|
|
111
111
|
"""The connection pool instance. If set, this will be used instead of creating a new pool."""
|
|
@@ -204,7 +204,7 @@ class PsqlpyConfig(AsyncDatabaseConfig[Connection, ConnectionPool, PsqlpyDriver]
|
|
|
204
204
|
|
|
205
205
|
return _create()
|
|
206
206
|
|
|
207
|
-
def create_connection(self) -> "Awaitable[
|
|
207
|
+
def create_connection(self) -> "Awaitable[PsqlpyConnection]":
|
|
208
208
|
"""Create and return a new, standalone psqlpy connection using the configured parameters.
|
|
209
209
|
|
|
210
210
|
Returns:
|
|
@@ -222,7 +222,7 @@ class PsqlpyConfig(AsyncDatabaseConfig[Connection, ConnectionPool, PsqlpyDriver]
|
|
|
222
222
|
return _create()
|
|
223
223
|
|
|
224
224
|
@asynccontextmanager
|
|
225
|
-
async def provide_connection(self, *args: "Any", **kwargs: "Any") -> "AsyncGenerator[
|
|
225
|
+
async def provide_connection(self, *args: "Any", **kwargs: "Any") -> "AsyncGenerator[PsqlpyConnection, None]":
|
|
226
226
|
"""Acquire a connection from the pool.
|
|
227
227
|
|
|
228
228
|
Yields:
|