aboutsummaryrefslogtreecommitdiffstats
path: root/python/db.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/db.py')
-rw-r--r--python/db.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/python/db.py b/python/db.py
index 32c4ea38..96b8ca61 100644
--- a/python/db.py
+++ b/python/db.py
@@ -1,9 +1,24 @@
+import datetime
import psycopg2
from psycopg2.extras import DictCursor
from psycopg2 import IntegrityError
+from psycopg2.extensions import register_adapter
from sqlalchemy import create_engine
import numpy as np
+class InfDateAdapter:
+ def __init__(self, wrapped):
+ self.wrapped = wrapped
+ def getquoted(self):
+ if self.wrapped == datetime.date.max:
+ return b"'infinity'::date"
+ elif self.wrapped == datetime.date.min:
+ return b"'-infinity'::date"
+ else:
+ return psycopg2.extensions.DateFromPy(self.wrapped).getquoted()
+
+register_adapter(datetime.date, InfDateAdapter)
+
def dbconn(dbname):
if dbname == 'etdb':
dbname = 'ET'