Как подставить переменную в sql-запрос на mysql?

Пользователь

от amaya_bahringer , в категории: SQL , 7 месяцев назад

Как подставить переменную в sql-запрос на mysql?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jakayla , 7 месяцев назад

@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 – значение переменной. Обратите внимание, что вместо кортежа мы передаем словарь, где ключ – имя плейсхолдера, а значение – значение переменной.