orderDetailServer = self.db.query(OrderDetailServer).filter_by(id=id).first()
qry = self.db.query(func.max(OrderDetailServer.id).label("max_score"),
func.min(OrderDetailServer.id).label("min_score"),
)
res = qry.one()
max = res.max_score
localTime = time.strftime("%Y%m%d%H%M%S",time.localtime())
orderServerCopy = OrderDetailServer(id=max+1,asset=str(localTime))
orderServerCopy.deviceOrder_id=orderDetailServer.deviceOrder_id
self.db.add(orderServerCopy)
self.db.commit()
异常:
IntegrityError: (IntegrityError) (1062, "Duplicate entry '20141028110823' for key 'asset'")
asset虽然是唯一字段,但是为的asset绝对没有重复呀。而且这个操作虽然抛出了异常,但是却插入新对象成功了。求分析下用scoped_session进行查询,有新建对象插入时的原理