diff options
Diffstat (limited to 'megapixels/app/models/sql_factory.py')
| -rw-r--r-- | megapixels/app/models/sql_factory.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/megapixels/app/models/sql_factory.py b/megapixels/app/models/sql_factory.py index da95b539..a580f28e 100644 --- a/megapixels/app/models/sql_factory.py +++ b/megapixels/app/models/sql_factory.py @@ -35,7 +35,7 @@ def load_sql_datasets(replace=False, base_model=None): global datasets, loaded, Session if loaded: return datasets - engine = create_engine(connection_url, encoding="utf-8") + engine = create_engine(connection_url, encoding="utf-8", pool_recycle=3600) # db.set_character_set('utf8') # dbc = db.cursor() # dbc.execute('SET NAMES utf8;') @@ -61,7 +61,8 @@ def load_sql_dataset(path, replace=False, engine=None, base_model=None): print('loading dataset {}'.format(fn)) df = pd.read_csv(fn) # fix columns that are named "index", a sql reserved word - df.columns = table.__table__.columns.keys() + df.reindex_axis(sorted(df.columns), axis=1) + df.columns = sorted(table.__table__.columns).keys() df.to_sql(name=table.__tablename__, con=engine, if_exists='replace', index=False) return dataset @@ -76,7 +77,7 @@ class SqlDataset: self.name = name self.tables = {} if base_model is None: - self.engine = create_engine(connection_url) + self.engine = create_engine(connection_url, encoding="utf-8", pool_recycle=3600) base_model = declarative_base(engine) self.base_model = base_model |
