首页 > 解决方案 > Python 和 SQL - 检查 Row 是否存在的最有效方法 - 如果不存在,则插入它

问题描述

我想检查什么是最有效的 Python 方法(因为性能)如何检查 SQL 中是否存在某些行,如果不存在,则插入它。我想检查某个值是否存在于表中,如果不存在则插入它。我是这样做的,但我想知道是否有更好的方法。

  insertValue="test"        
  mycursor.execute("SELECT * from CUSTOMERS where name ="+'insertValue')
  myresult2 = mycursor.fetchall()
  if not myresult2:
    print 'Row does not EXIST'
    mycusrsor.execute(.....INSERT part for insertValue in table TABLE_2.....)

这是Python执行(代码优化)的最佳方法,还是可以以更有效的方式完成(从Python代码优化的角度)谢谢

标签: pythonmysqlpython-2.7insert

解决方案


从使用的标签看来,您正在使用“MYSQL”。它提供了一个“INSERT IGNORE”选项,这意味着如果该键已经存在,它不会抛出执行错误,而是会移动到下一行。

这将被证明是最有效的方法,并且代码非常少。


推荐阅读