@amaya_bahringer
Для подстановки переменной в SQL-запрос на MySQL можно использовать оператор ?
или :имя_переменной
.
Пример использования оператора ?
:
1
|
SELECT * FROM my_table WHERE id = ? |
Здесь ?
является плейсхолдером для переменной. При выполнении запроса нужно указать значение переменной, которое будет подставлено на место плейсхолдера. Для этого нужно передать значение переменной как параметр функции execute()
:
1
|
cursor.execute("SELECT * FROM my_table WHERE id = ?", (my_variable,)) |
Здесь my_variable
– значение переменной, которое будет подставлено в запрос. Обратите внимание на запятую после my_variable
, она необходима, чтобы создать кортеж из одного элемента.
Пример использования оператора :имя_переменной
:
1
|
SELECT * FROM my_table WHERE id = :my_variable |
Здесь :my_variable
является именованным плейсхолдером. При выполнении запроса нужно указать значение переменной с помощью словаря:
1
|
cursor.execute("SELECT * FROM my_table WHERE id = :my_variable", {'my_variable': my_variable}) |
Здесь 'my_variable'
– имя плейсхолдера, а my_variable
– значение переменной. Обратите внимание, что вместо кортежа мы передаем словарь, где ключ – имя плейсхолдера, а значение – значение переменной.