Sqlachemy的警告SAWarning: The IN-predicate on "sns_object.BIZ_ID" was invoked with an empty sequence. This results in a contradiction, which nonetheless can be expensive to evaluate.
我在使用db_session.query,查询的时候idlist是个空值时候,执行下面的语句就会出现警告。
其中后面delete(synchronize_session=False)是删除前面的一堆查询相当于查出符合条件的数据。
synchronize_session用于query在进行delete or update操作时,对session的同步策略。False - 不对session进行同步,直接进行delete or update操作。
db_session.query(CommentInfo).filter(CommentInfo.BIZ_ID.in_(idlist)).filter(CommentInfo.MEDIA_TYPE=="INS").delete(synchronize_session=False)
def delete_exist_bizid(self,dics): idlist=dics.get("BIZ_ID") db_session.query(CommentInfo).filter(CommentInfo.BIZ_ID.in_(idlist)).filter(CommentInfo.MEDIA_TYPE=="INS").delete(synchronize_session=False) db_session.commit()
if __name__=="__main__": dics={"BIZ_ID":[]} SaveData().delete_exist_bizid(dics)