Проблема в том, что вы используете mycursor.executemany(sql, val)
, который предназначен для запуска одного и того же оператора SQL с несколькими значениями.
Может показаться, что "test1"
- это всего лишь одно слово, но слово также можетследует рассматривать как последовательность символов, и именно это executemany
интерпретирует как.
Измените его на mycursor.execute(sql, val)
, и оно будет работать, как и ожидалось, с одним значением.