Strzelam, że oto chodzi:
- https://dev.mysql.com/doc/dev/mysqlsh-api-python/param_binding.html
- http://stackoverflow.com/questions/675010/what-is-the-question-marks-significance-in-mysql-at-where-column
Chodzi o bindowanie.
Poczytaj najlepiej oficjalną dokumentację:
- https://dev.mysql.com/doc/refman/5.7/en/sql-syntax-prepared-statements.html
- Google
Może szybki przykład z tego tutoriala: http://www.mysqlab.net/knowledge/kb/detail/topic/sql/id/5931
Tabela MySQL o nazwie gruszki:
id |
ilosc |
kolor |
1 |
100 |
zielone |
2 |
47 |
zolte |
3 |
78 |
rozowe |
Teraz wpisz taki kod i zobacz co się stanie:
PREPARE stmt_name from "SELECT kolor from gruszki where ilosc = ? ";
set @test_parm=47;
execute stmt_name using @test_parm;
deallocate prepare stmt_name;
Wyświetli się taka tabela:
Teraz już chyba powinieneś wiedzieć jak to działa. Szczególne podziękowania dla tego tutoriala, pozmieniałem co nie co i napisałem lekko zmodyfikowany kod w opraciu o tę wyżej zbudowaną tabelę.