| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 | 
							- # 导入:
 
- from hashlib import md5
 
- from sqlalchemy.orm import sessionmaker
 
- from sqlalchemy.ext.declarative import declarative_base
 
- from sqlalchemy import Column, Integer, String,DateTime,Text,create_engine,and_
 
- from datetime import datetime
 
- from urllib import parse
 
- # 创建对象的基类:
 
- Base = declarative_base()
 
- passowrd = parse.quote_plus('hcst@2020')
 
- # 定义User对象:
 
- class Task(Base):
 
-     # 表的名字:
 
-     __tablename__ = 'tb_asr_result'
 
-     # 表的结构:
 
-     md5 =  Column(String(100))
 
-     task_id = Column(Integer, primary_key=True)
 
-     task_status = Column(Integer)
 
-     task_result = Column(Text)
 
-     word_text = Column(Text)
 
-     word_split = Column(Text)
 
-     create_time = Column(DateTime, nullable=True, default=datetime.now)
 
-     update_time = Column(DateTime)
 
- # 初始化数据库连接:
 
- engine = create_engine('mysql+mysqlconnector://hcst:'+passowrd+'@139.186.165.84:3306/db_ai_word')
 
- # 创建DBSession类型:
 
- DBSession = sessionmaker(bind=engine)
 
- def query(md5,task_status,task_id):
 
-     condition = (1==1)
 
-     if md5 != None:
 
-         condition = and_(condition, Task.md5 == md5)
 
-     if task_status != None:
 
-         condition = and_(condition, Task.task_status == task_status)
 
-     if task_id != None:
 
-         condition = and_(condition, Task.task_id == task_id)
 
-     # 创建Session:
 
-     session = DBSession()
 
-     # 创建Query查询,filter是where条件,最后调用one()返回唯一行,如果调用all()则返回所有行:
 
-     task = session.query(Task).filter(condition).order_by(Task.create_time.desc()).all()
 
-     # 关闭Session:
 
-     print(task)
 
-     session.close()
 
-     return task
 
- def insert(task:Task):
 
-     # 创建session对象:
 
-     session = DBSession()
 
-     # 添加到session:
 
-     session.add(task)
 
-     session.flush()
 
-     # 提交即保存到数据库:
 
-     session.commit()
 
-     # 关闭session:
 
-     session.close()
 
-     return task
 
- def update(task):
 
-     # 创建session对象:
 
-     session = DBSession()
 
-     taskdb = session.query(Task).filter(Task.task_id==task.task_id).one()
 
-     taskdb.task_status = task.task_status
 
-     taskdb.word_text = task.word_text
 
-     taskdb.word_split = task.word_split
 
-     taskdb.task_result = task.task_result
 
-     # 提交即保存到数据库:
 
-     session.commit()
 
-     # 关闭session:
 
-     session.close()
 
- if __name__ == '__main__':
 
-     print('test query')
 
-     # task = Task(task_id = '3',task_status=1,md5='dx')
 
-     # task = insert(task)
 
-     task = query(None,None,1)[0]
 
-     print(task.md5)
 
-     #update(task)
 
 
  |