Подстановочный код MySQL Python LIKE

Я хочу сделать запрос Python MySQL, например:

cursor = connection.cursor() sql = "select text \ from steps \ where text like '%start%'" cursor.execute(sql) 

Но% не рассматривается как подстановочный знак, он ожидает переменную, я думаю. Я получаю сообщение об ошибке:

 TypeError: not enough arguments for format string 

Ничто не работает. Было бы неплохо, если бы я мог использовать переменную вместо «% start%»,

Я предполагаю, что вы используете python db-api.

Вы можете попробовать экранировать % как %% .

Что касается передачи параметров, то существует несколько способов, например:

 cursor = connection.cursor() sql = """select text from steps where text like %s""" cursor.execute(sql, (('%' + 'start' + '%',)) 

Вы можете увидеть примеры других способов передачи параметров в этом блоге в разделе «Интерфейс modułu». Не все из них работают со всеми разъемами.