Prevent empty keyvalues arg to simple_delete raising db exception

This commit is contained in:
Andrew Morgan 2022-08-04 15:26:59 +01:00
parent 1777a21d12
commit 452fc33646

View file

@ -2112,11 +2112,15 @@ class DatabasePool:
Args: Args:
table: string giving the table name table: string giving the table name
keyvalues: dict of column names and values to select the row with keyvalues: dict of column names and values to select the row with. If empty,
no rows will be deleted.
Returns: Returns:
The number of deleted rows. The number of deleted rows.
""" """
if not keyvalues:
return 0
sql = "DELETE FROM %s WHERE %s" % ( sql = "DELETE FROM %s WHERE %s" % (
table, table,
" AND ".join("%s = ?" % (k,) for k in keyvalues), " AND ".join("%s = ?" % (k,) for k in keyvalues),