Se should be:
cursor.execute ("""
UPDATE tblTableName
SET Year=%s, Month=%s, Day=%s, Hour=%s, Minute=%s
WHERE Server=%s
""", (Year, Month, Day, Hour, Minute, ServerID))
Usted puede también hacerlo con la manipulación básica de cuerdas,
cursor.execute ("UPDATE tblTableName SET Year=%s, Month=%s, Day=%s, Hour=%s, Minute=%s WHERE Server='%s' " % (Year, Month, Day, Hour, Minute, ServerID))
pero this way is discouraged because it leaves you open for SQL Injection. Como es tan fácil (y similar) hacerlo forma correctatm. Hazlo correctamente
Lo único que debe tener cuidado, es que algunos servidores de bases de datos no siguen la misma convención para el reemplazo de cadenas (se le viene a la mente SQLite).
Paolo's answer is better. http://stackoverflow.com/questions/1307378/python-mysql-update-statement/1307413#1307413 – voyager
Pero este funcionará con cada back-end. Esta versión no hace ninguna validación en la entrada, mientras que la forma de Paolo se asegurará de escapar el contenido de las variables. – voyager
No * hágalo de esta manera. Te dejas abierto a los ataques de inyección de SQL. Paulo tiene la respuesta correcta, ya que asegura que los valores se escapen adecuadamente antes de pasarlos a la base de datos. –