No todos los parámetros se usaron en la statement SQL (Python, MySQL)

Recibo un error en el siguiente código de Python:

import mysql.connector cnx = mysql.connector.connect(user='root', password='', host='127.0.0.1', database='DB') cursor = cnx.cursor() Name = "James" Department = "Finance" StartYear = 2001 CurrentPos = 2001 Link = "" add_user = ("INSERT INTO DB.tbluser " "(username, department, startyear, currentpos, link) " "VALUES (%s, %s, %d, %d, %s)") data_user = (Name, Department, StartYear, CurrentPos, Link) cursor.execute(add_user, data_user) cnx.commit() cursor.close() cnx.close() 

El mensaje de error es

 mysql.connector.errors.ProgrammingError: Not all parameters were used in the SQL statement 

¿Entiendes por qué?

El marcador de parámetro es %s no %d .

 add_user = """INSERT INTO DB.tbluser (username, department, startyear, currentpos, link) VALUES (%s, %s, %s, %s, %s)""" 

Tenga en cuenta que los marcadores de parámetros utilizados por mysql.connector pueden tener el mismo aspecto que los %s utilizados en el formateo de cadenas de Python, pero la relación es solo una coincidencia. ¿Algunos adaptadores de base de datos como oursql y sqlite3 usan ? como el marcador de parámetro en lugar de %s .