zoukankan      html  css  js  c++  java
  • SQLAlchemy使用merge

    介绍

    有一些场景需要我们即做添加操作有要做修改操作,我们就可以来使用 merge 来操作这里,一下代码就是查看 key 值是否一致,如果一致则进行修改,如果不一致则进行添加。

    使用

        def loophole_proof(proof, company_name, pg_con=None):
            try:
                pg_con = pg_con if pg_con else g.pg_db
                filesStore = pg_con.query(FilesStore).filter(
                    and_(FilesStore.company_name == company_name, FilesStore.files_path == "1")).first()
                if not filesStore:
                    # 如果数据库不存在, 重新new一个新对象
                    filesStore = FilesStore()
                    filesStore.company_name = company_name
                    filesStore.files_path = "1"
                filesStore.files_name = proof
                pg_con.merge(filesStore)
                pg_con.commit()
                return True
            except Exception, e:
                logging.error('class path: %s;function name: %s;error message:%s' % (
                    __name__, sys._getframe().f_code.co_name, e.message), exc_info=True)
                return False
  • 相关阅读:
    1066 Bash 游戏
    1070 Bash 游戏 V4
    codevs 2928 你缺什么
    分块、线段树练习
    Father Christmas flymouse
    codevs 2494 Vani和Cl2捉迷藏
    codevs 2144 砝码称重2
    国王游戏
    codevs 1664 清凉冷水
    2015ACM/ICPC亚洲区沈阳站 Pagodas
  • 原文地址:https://www.cnblogs.com/shangwei/p/14415382.html
Copyright © 2011-2022 走看看