Commit a6a359d8 authored by 张晓彤's avatar 张晓彤

数据库自动切换

parent 3d3adff7
......@@ -21,10 +21,31 @@ json_file = os.path.join(relative_path, "config.json")
# json_file = "config.json"
with open(json_file) as f:
mysql_config = json.load(f)["mysql"]
load_vale = json.load(f)
postgre_config = load_vale["postgresql"]
if "mysql" in load_vale:
mysql_config = load_vale["mysql"]
else:
mysql_config = None
if "mssql" in load_vale:
sqlserver_config = load_vale["mssql"]
else:
sqlserver_config = None
# with open(json_file) as f:
# load_vale = json.load(f)
# if "mssql" in json.load(f):
# sqlserver_config = json.load(f)["mssql"]
# else:
# sqlserver_config = None
#
# with open(json_file) as f:
# postgre_config = json.load(f)["postgresql"]
with open(json_file) as f:
postgre_config = json.load(f)["postgresql"]
# logger = get_logger("zxt.tables")
......@@ -62,38 +83,31 @@ with open(json_file) as f:
# 创建对象的基类:
Base = declarative_base()
sql_str = str("mysql+mysqlconnector://" + mysql_config["user"] + ":%s@" + mysql_config["host"] + \
if mysql_config is not None:
sql_str = str("mysql+mysqlconnector://" + mysql_config["user"] + ":%s@" + mysql_config["host"] + \
":" + mysql_config["port"] + "/" + mysql_config["database"])
elif sqlserver_config is not None:
sql_str = str("mssql+pymssql://" + sqlserver_config["user"] + ":%s@" + sqlserver_config["host"] + \
":" + sqlserver_config["port"] + "/" + sqlserver_config["database"])
postgre_str = str("postgresql://" + postgre_config["user"] + ":%s@" + postgre_config["host"] + \
":" + postgre_config["port"] + "/" + postgre_config["database"])
# try:
engine_mysql = create_engine(
# "mysql+mysqlconnector://root:%s@192.168.28.111:3306/waytous"
# % quote("Huituo@123")
# "mysql+mysqlconnector://" + mysql_config["user"] + ":" + mysql_config["password"] + "@" + mysql_config[
# "host"] + ":" + mysql_config["port"] + "/" + mysql_config["database"]
sql_str % quote(mysql_config["password"])
)
engine_postgre = create_engine(
# "postgresql://postgres:%s@192.168.28.111:5432/shenbao_2021520"
# % quote("Huituo@123")
# "postgresql://" + postgre_config["user"] + ":" + postgre_config["password"] + "@" + postgre_config[
# "host"] + ":" + postgre_config["port"] + "/" + postgre_config["database"]
engine_mysql = create_engine(sql_str % quote(mysql_config["password"]))
postgre_str % quote(postgre_config["password"])
)
engine_postgre = create_engine(postgre_str % quote(postgre_config["password"]))
# 创建DBsession_mysql类型:
# mysql
DBsession_mysql = sessionmaker(bind=engine_mysql)
DBsession_mysql = scoped_session(DBsession_mysql)
# postgre
DBsession_postgre = sessionmaker(bind=engine_postgre)
DBsession_postgre = scoped_session(DBsession_postgre)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment