'It keeps outputing error: Not all parameters were used in the SQL statement
def getLevels(userName, levelID, levelName, levelLength, coins, starStars, amognus):
try:
statement = "SELECT userName, levelID, levelName, levelLength, coins, starStars, amognus FROM levels WHERE userName=%s AND levelID=%s AND levelName=%s AND coins=%s AND amognus=%0s AND NOT starStars=%0s"
data = (userName, levelID, levelName, levelLength, coins, starStars, amognus,)
cursor.execute(statement, data)
for (userName, levelID, levelName, levelLength, coins, starStars) in cursor:
print(f"Got records of level {userName}, {levelID}, {levelLength}, {coins}, {starStars}")
except database.Error as e:
print(f"Error retrieving entry from database: {e}")
getLevels("%s", "%s", "%s", "%s", "%s", "%s", "%s")
Solution 1:[1]
def getLevels(userName, levelID, levelName, levelLength, coins, starStars=0, amognus=0):
try:
statement = "SELECT userName, levelID, levelName, levelLength, coins, starStars, amognus FROM levels WHERE userName=%s AND levelID=%s AND levelName=%s AND levelLength=%s AND coins=%s AND NOT starStars=%s AND amognus=%s"
data = (userName, levelID, levelName, levelLength, coins, starStars, amognus,)
cursor.execute(statement, data)
for (userName, levelID, levelName, levelLength, coins, starStars) in cursor:
print(f"Got records of level {userName}, {levelID}, {levelLength}, {coins}, {starStars}")
except database.Error as e:
print(f"Error retrieving entry from database: {e}")
if you not passing dynamic params to startStart and amognus from your function those fill dynamicly as params 0.
getLevels("%s", "%s", "%s", "%s", "%s", "%s", "%s")
to
getLevels(userName='coin_', levelID=1, levelName=1, levelLength=1, coins=...., starStars, amognus)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 |