Python和SQL-检查行是否存在的最有效方法-如果不插入它

时间:2018-11-11 10:37:50

标签: python mysql python-2.7 insert

我想检查什么是最有效的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代码优化的角度来看) 谢谢

1 个答案:

答案 0 :(得分:-1)

从使用的标签看,您似乎正在使用“ MYSQL”。它提供了一个“ INSERT IGNORE”选项,这意味着如果该键已经存在,它将不会引发执行错误,并且会继续到下一行。

这将是最有效的方法,并且只需很少的代码。