1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- '''
- 定义表的结构,并在数据库中创建对应的数据表
- '''
- __author__ = 'lmstack'
- from sqlalchemy.ext.declarative import declarative_base
- from sqlalchemy import Column, String, create_engine, Integer, DateTime, BigInteger, FLOAT, TIMESTAMP, func
- from urllib import parse
- Base = declarative_base()
- class DrivingRangeResult(Base):
- __tablename__ = "driving_range_result"
- __table_args__ = ({'comment': '每5分钟计算一次续驶里程结果'}) # 添加索引和表注释
- id = Column(Integer, primary_key=True, autoincrement=True, comment="主键")
- add_time = Column(TIMESTAMP(True), server_default=func.now(), comment='记录创建时间') # 创建时间
- update_time = Column(TIMESTAMP(True), nullable=False, server_default=func.now(), onupdate=func.now(), comment='记录更新时间') # 更新时间
- sn = Column(String(64), comment="sn")
- time = Column(DateTime, comment="时间")
- soc = Column(FLOAT, comment="soc")
- a0 = Column(FLOAT, comment="系数")
- a1 = Column(FLOAT, comment="系数")
- a2 = Column(FLOAT, comment="系数")
- a3 = Column(FLOAT, comment="系数")
- a4 = Column(FLOAT, comment="系数")
- vehelecrng = Column(FLOAT, comment="续驶里程")
- def __init__(self, sn, time, soc, a0, a1, a2, a3, a4, vehelecrng):
- self.sn = sn
- self.time = time
- self.soc = soc
- self.a0 = a0
- self.a1 = a1
- self.a2 = a2
- self.a3 = a3
- self.a4 = a4
- self.vehelecrng = vehelecrng
- # 执行该文件,创建表格到对应的数据库中
- if __name__ == "__main__":
- host = 'rm-bp10j10qy42bzy0q77o.mysql.rds.aliyuncs.com'
- port = 3306
- user = 'qx_cas'
- password = parse.quote_plus('Qx@123456')
- database = 'qx_cas'
-
- db_engine = create_engine(
- "mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8".format(
- user, password, host, port, database
- ))
- Base.metadata.create_all(db_engine)
|