Skip to content

Commit 790129a

Browse files
committed
TYP: add return types to read_sql|read_sql_query|read_sql_table
1 parent 1722c05 commit 790129a

File tree

1 file changed

+133
-9
lines changed

1 file changed

+133
-9
lines changed

pandas/io/sql.py

Lines changed: 133 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from datetime import date, datetime, time
88
from functools import partial
99
import re
10+
from typing import Iterator, Optional, Union, overload
1011
import warnings
1112

1213
import numpy as np
@@ -162,6 +163,7 @@ def execute(sql, con, cur=None, params=None):
162163
# -- Read and write to DataFrames
163164

164165

166+
@overload
165167
def read_sql_table(
166168
table_name,
167169
con,
@@ -170,8 +172,49 @@ def read_sql_table(
170172
coerce_float=True,
171173
parse_dates=None,
172174
columns=None,
173-
chunksize=None,
174-
):
175+
chunksize: None = None,
176+
) -> DataFrame:
177+
...
178+
179+
180+
@overload
181+
def read_sql_table(
182+
table_name,
183+
con,
184+
schema=None,
185+
index_col=None,
186+
coerce_float=True,
187+
parse_dates=None,
188+
columns=None,
189+
chunksize: int = 1,
190+
) -> Iterator[DataFrame]:
191+
...
192+
193+
194+
@overload
195+
def read_sql_table(
196+
table_name,
197+
con,
198+
schema=None,
199+
index_col=None,
200+
coerce_float=True,
201+
parse_dates=None,
202+
columns=None,
203+
chunksize: Optional[int] = None,
204+
) -> Union[DataFrame, Iterator[DataFrame]]:
205+
...
206+
207+
208+
def read_sql_table(
209+
table_name,
210+
con,
211+
schema=None,
212+
index_col=None,
213+
coerce_float=True,
214+
parse_dates=None,
215+
columns=None,
216+
chunksize: Optional[int] = None,
217+
) -> Union[DataFrame, Iterator[DataFrame]]:
175218
"""
176219
Read SQL database table into a DataFrame.
177220
@@ -210,7 +253,7 @@ def read_sql_table(
210253
211254
Returns
212255
-------
213-
DataFrame
256+
DataFrame or Iterator[DataFrame]
214257
A SQL table is returned as two-dimensional data structure with labeled
215258
axes.
216259
@@ -257,15 +300,54 @@ def read_sql_table(
257300
raise ValueError(f"Table {table_name} not found", con)
258301

259302

303+
@overload
260304
def read_sql_query(
261305
sql,
262306
con,
263307
index_col=None,
264308
coerce_float=True,
265309
params=None,
266310
parse_dates=None,
267-
chunksize=None,
268-
):
311+
chunksize: int = 1,
312+
) -> DataFrame:
313+
...
314+
315+
316+
@overload
317+
def read_sql_query(
318+
sql,
319+
con,
320+
index_col=None,
321+
coerce_float=True,
322+
params=None,
323+
parse_dates=None,
324+
chunksize: None = None,
325+
) -> Iterator[DataFrame]:
326+
...
327+
328+
329+
@overload
330+
def read_sql_query(
331+
sql,
332+
con,
333+
index_col=None,
334+
coerce_float=True,
335+
params=None,
336+
parse_dates=None,
337+
chunksize: Optional[int] = None,
338+
) -> Union[DataFrame, Iterator[DataFrame]]:
339+
...
340+
341+
342+
def read_sql_query(
343+
sql,
344+
con,
345+
index_col=None,
346+
coerce_float=True,
347+
params=None,
348+
parse_dates=None,
349+
chunksize: Optional[int] = None,
350+
) -> Union[DataFrame, Iterator[DataFrame]]:
269351
"""
270352
Read SQL query into a DataFrame.
271353
@@ -308,7 +390,7 @@ def read_sql_query(
308390
309391
Returns
310392
-------
311-
DataFrame
393+
DataFrame or Iterator[DataFrame]
312394
313395
See Also
314396
--------
@@ -331,6 +413,7 @@ def read_sql_query(
331413
)
332414

333415

416+
@overload
334417
def read_sql(
335418
sql,
336419
con,
@@ -339,8 +422,49 @@ def read_sql(
339422
params=None,
340423
parse_dates=None,
341424
columns=None,
342-
chunksize=None,
343-
):
425+
chunksize: None = None,
426+
) -> DataFrame:
427+
...
428+
429+
430+
@overload
431+
def read_sql(
432+
sql,
433+
con,
434+
index_col=None,
435+
coerce_float=True,
436+
params=None,
437+
parse_dates=None,
438+
columns=None,
439+
chunksize: int = 1,
440+
) -> Iterator[DataFrame]:
441+
...
442+
443+
444+
@overload
445+
def read_sql(
446+
sql,
447+
con,
448+
index_col=None,
449+
coerce_float=True,
450+
params=None,
451+
parse_dates=None,
452+
columns=None,
453+
chunksize: Optional[int] = None,
454+
) -> Union[DataFrame, Iterator[DataFrame]]:
455+
...
456+
457+
458+
def read_sql(
459+
sql,
460+
con,
461+
index_col=None,
462+
coerce_float=True,
463+
params=None,
464+
parse_dates=None,
465+
columns=None,
466+
chunksize: Optional[int] = None,
467+
) -> Union[DataFrame, Iterator[DataFrame]]:
344468
"""
345469
Read SQL query or database table into a DataFrame.
346470
@@ -391,7 +515,7 @@ def read_sql(
391515
392516
Returns
393517
-------
394-
DataFrame
518+
DataFrame or Iterator[DataFrame]
395519
396520
See Also
397521
--------

0 commit comments

Comments
 (0)