sqlalchemy

# -*- coding:utf-8 -*-    
# Date: 2018/10/16 10:30

from datetime import datetime
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.dialects.mysql import INTEGER
from sqlalchemy import String, Column, Integer, TIMESTAMP, Date, text, DateTime, Boolean

COMPANY_LINK_INFO = 'mysql+pymysql://{}:{}@{}/{}?charset={}'.format(USER_NAME, PASS_WORD,IP, DATABASE, CHARSET)


engine = create_engine(COMPANY_LINK_INFO, max_overflow=5, pool_recycle=3600, pool_pre_ping=True)
Session = sessionmaker(bind=engine)
Base = declarative_base()

class ScadaPage(Base):
    __tablename__ = 'company_info'
    __table_args__ = {
        'mysql_engine': 'InnoDB',
        'mysql_charset': 'utf8'
    }
    id = Column(Integer(), primary_key=True, autoincrement=True)
    name = Column(String(30), nullable=False, comment='公司名稱')
    link = Column(String(50), nullable=False, comment='公司鏈接')
    tax_num = Column(Integer(), nullable=False,default='-', comment='稅號')
    address= Column(String(50), nullable=False, default='-',comment='地址')
    phone_num = Column(Integer(), nullable=False,default='-', comment='電話號碼')
    bank_name = Column(String(20), nullable=False,default='-', comment='開戶銀行')
    bank_count = Column(Integer(), nullable=False, default='-',comment='銀行賬戶')
    add_time = Column(DateTime, nullable=False, default=datetime.now(), server_default='1970-01-01 00:00:00',comment='創建時間') #server_default 是創建表時,統一寫入默認值,default是寫入數據爲空時,採用默認值
    update_time = Column(TIMESTAMP, nullable=False, server_default=text('NOW()'), comment=u'更新時間')
    def __init__(self, **kwargs):
        super(ScadaPage, self).__init__(**kwargs)

    def __repr__(self):
        return '<ScadaPage id: {}>'.format(self.id)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章