Skip to content

Commit 0bb5400

Browse files
committed
Fix for #51 and Cursor.description
- Fix for #51 - Fixed problem with DECFLOAT and TZ DATE/TIMESTAMP in Cursor.description
1 parent 2ed1050 commit 0bb5400

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

src/firebird/driver/core.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1799,7 +1799,8 @@ def __del__(self):
17991799
warn("Connection disposed without prior close()", ResourceWarning)
18001800
self._close()
18011801
self._close_internals()
1802-
self._att.detach()
1802+
with contextlib.suppress:
1803+
self._att.detach()
18031804
def __enter__(self) -> Self:
18041805
return self
18051806
def __exit__(self, exc_type, exc_value, traceback) -> None:
@@ -4278,7 +4279,8 @@ def description(self) -> tuple[DESCRIPTION]:
42784279
elif meta.datatype == SQLDataType.INT64:
42794280
vtype = int
42804281
dispsize = 20
4281-
elif meta.datatype in (SQLDataType.FLOAT, SQLDataType.D_FLOAT, SQLDataType.DOUBLE):
4282+
elif meta.datatype in (SQLDataType.FLOAT, SQLDataType.D_FLOAT, SQLDataType.DOUBLE,
4283+
SQLDataType.DEC16, SQLDataType.DEC34):
42824284
# Special case, dialect 1 DOUBLE/FLOAT
42834285
# could be Fixed point
42844286
if (self._stmt._dialect < 3) and meta.scale:
@@ -4291,13 +4293,13 @@ def description(self) -> tuple[DESCRIPTION]:
42914293
vtype = str if meta.subtype == 1 else bytes
42924294
scale = meta.subtype
42934295
dispsize = 0
4294-
elif meta.datatype == SQLDataType.TIMESTAMP:
4296+
elif meta.datatype in (SQLDataType.TIMESTAMP, SQLDataType.TIMESTAMP_TZ, SQLDataType.TIMESTAMP_TZ_EX):
42954297
vtype = datetime.datetime
42964298
dispsize = 22
42974299
elif meta.datatype == SQLDataType.DATE:
42984300
vtype = datetime.date
42994301
dispsize = 10
4300-
elif meta.datatype == SQLDataType.TIME:
4302+
elif meta.datatype in (SQLDataType.TIME, SQLDataType.TIME_TZ, SQLDataType.TIME_TZ_EX):
43014303
vtype = datetime.time
43024304
dispsize = 11
43034305
elif meta.datatype == SQLDataType.ARRAY:

0 commit comments

Comments
 (0)