title: mysql.connector.errors.ProgrammingError: 1210 - whenever I do a 2-digit query - works fine with 1 digits
body: <p>My code:</p>
  <pre><code>import threading
  import tkinter as tk
  import pip
  import time
  import mysql.connector
  from time import sleep
  global score
  global countdown
  
  en = 1
  score = 0
  countdown = 1
  print(&quot;Hiya!&quot;)
  
  mydb = mysql.connector.connect(
      host=&quot;&quot;,
      user=&quot;&quot;,
      password=&quot;&quot;,
      database='',
      auth_plugin='mysql_native_password'
  )
  
  mycursor = mydb.cursor(prepared=True)
  #MYSQL Commands!
  
  #Læser en af de 3 værdier fra MYSQL-databasen
  def læsVærdi(command):
      mycursor.execute(command)
      råVærdi = mycursor.fetchone()
      værdi = float(&quot;{}&quot;.format('%.2f' % råVærdi))
      return værdi
  
  #De Tre læs-MySQL-værdi-commands
  læsTidMål = &quot;SELECT tidMål FROM bois WHERE id = 1&quot; #Læser Timerens Slutmål
  læsTidScoreNu = &quot;SELECT tidSCoreNu FROM bois WHERE id = 1&quot;
  læsStopKnap = &quot;SELECT stopKnap FROM bois WHERE id = 1&quot; #Læser hvilket stadie knappen er i (start/stop)
  
  
  
  #Opdaterer en af de 2 værdier fra MYSQL-databasen
  def opdaterVærdi(command,id,nyeVærdi):
      nyeVærdi = float(nyeVærdi)
      mycursor.execute(command,(nyeVærdi,id))
      mydb.commit()
  
  #De To opdater-MySQL-værdi-commands
  opdaterTidScoreNu = &quot;UPDATE bois SET tidScoreNu = %s WHERE id = %s&quot;
  opdaterSlutScore = &quot;UPDATE bois SET score = %s WHERE id = %s&quot;
  
  
  #Tjekker om pinkoden matcher, returnerer 1 hvis den gør, returnerer 0, hvis ikke.
  def pinkodeTester(pinkode):
      pinkode = str(pinkode)
      mycursor.execute(&quot;select id,adresse,name,pinkode_brugt,score FROM bois where id= %s&quot;,(pinkode))
      myresult = mycursor.fetchall() #Henter alle rows, hvor id = pinkoden
      row_count = mycursor.rowcount #Tjekker hvor mange, der er
      print(row_count)
  
      if pinkode == 1:
          print(&quot;da id 1 bliver brug til at gemme tiden, kan den desværre ikke bruges&quot;)
      elif row_count == 1:
          return(1)
      elif row_count != 1:
          return(0)
  
  def timer(id):  # id er den bruger, der skal have gemt sin score på sig,tælder op mod tidsmålet og returnerer scoren til sidst
      f = pinkodeTester(id)
      if f == 1:
          tidsMål = læsVærdi(læsTidMål)
          stopKnap = læsVærdi(læsStopKnap)
          i = 0
          while (i != tidsMål) and (i &lt;= tidsMål) and (stopKnap != 0): #mangler en function, der læser fra arduinoen og ser, om der er blevet trykket på knappen
              i = float(i + 0.01)
              tidsMål = læsVærdi(læsTidMål)
              stopKnap = læsVærdi(læsStopKnap)
              score = str(&quot;{}&quot;.format('%.2f' % i))  # Omdanner i til en string, der har 2 decimaler, så den kan bruges i kommanden
              opdaterVærdi(opdaterTidScoreNu, 1, i)  # Gemmer score's værdi på databasen - admin portalen (og timeren) bruger dette til at tælde ned
              time.sleep(0.01)
          if (i != tidsMål):  # hvis spillet stoppes, sendes scoren tilbage or funktionen stoppes
              return (score)
          else:  # Ellers, returneres scoren også
              return (score)
  
  
  
  a = pinkodeTester(10)
  print(a)
  </code></pre>
  <p>The problem is with the pinkodeTester funktion.</p>
  <p>I have 10 rows with ID's going from 1-10, where 1 is used for permanent storage.</p>
  <p>Whenever I use pinkodeTester(2-9) it works fine, but at exactly 10 it doesn't work. I have tried with other 2 digit values, and it returns the same error message.</p>
  <p>Full error message:</p>
  <pre><code>Traceback (most recent call last):
    File &quot;C:/Users/Mandem/Downloads/Test-uden-admin-i-servo (1).py&quot;, line 87, in &lt;module&gt;
      a = pinkodeTester(10)
    File &quot;C:/Users/Mandem/Downloads/Test-uden-admin-i-servo (1).py&quot;, line 55, in pinkodeTester
      mycursor.execute(&quot;select id,adresse,name,pinkode_brugt,score FROM bois where id= %s&quot;,(pinkode))
    File &quot;C:\Users\Mandem\AppData\Local\Programs\Python\Python38-32\lib\site-packages\mysql\connector\cursor.py&quot;, line 1208, in execute
      raise errors.ProgrammingError(
  mysql.connector.errors.ProgrammingError: 1210: Incorrect number of arguments executing prepared statement
  </code></pre>
  <p>The prepared statement is of course</p>
  <p>&quot;SELECT id,adresse,name,pinkode_brugt,score FROM bois WHERE id = %s&quot;</p>
  <p>Now is it possible, that it for some reasons interprets the double digits as two single characters? Or something alike? If not, I simply cannot think of what could be the problem if it functions with single digit queries.</p>