L'indicatore del parametro è %s non %d .
add_user = """INSERT INTO DB.tbluser
(username, department, startyear, currentpos, link)
VALUES (%s, %s, %s, %s, %s)"""
Tieni presente che i marcatori di parametro
utilizzato da mysql.connector potrebbe avere lo stesso aspetto di %s utilizzato nella formattazione delle stringhe Python ma la relazione è solo casuale. Alcuni adattatori di database come oursql e sqlite3 utilizzare ? come indicatore di parametro invece di %s .