123456789101112131415161718192021222324252627282930313233343536 |
- from sqlalchemy import create_engine ,Integer,String,Column
- from sqlalchemy.orm import sessionmaker
- from sqlalchemy.ext.declarative import declarative_base
- from contextlib import contextmanager
- HOST = 'rm-bp1k5853td1r25g3n690.mysql.rds.aliyuncs.com'
- PORT = '3306'
- DATABASE = 'devops'
- USERNAME = 'devops'
- PASSWORD = 'devops@123456'
- MYSQL_URI = "mysql+pymysql://{username}:{password}@{host}:{port}/{db}?charset=utf8".format(username=USERNAME,
- password=PASSWORD,
- host=HOST, port=PORT,
- db=DATABASE)
- Base = declarative_base()
- engine = create_engine(MYSQL_URI)
- session_factory = sessionmaker(bind=engine)
- @contextmanager
- def session_maker(session=None):
- try:
- if session is None:
- session = session_factory()
- yield session
- except:
- session.rollback()
- raise
- else:
- session.commit()
- finally:
- session.close()
|