xfilokolo
#python #programowanie #mysql
Mireczki pomożecie?

Kierując się tymi informacjami: https://www.w3schools.com/python/python_mysql_select.asp
próbuję puścić do swojej bazy takie zapytanie:

SELECT * FROM tabela WHERE id="IDENTYFIKATOR";

Ale IDENTYFIKATOR jest definiowany wyżej w kodzie pythona. Próbowałem czegoś takiego:

mycursor.execute("SELECT * FROM tabela WHERE id="+"'IDENTYFIKATOR'")

Nie wychodzi mi na żadne sposoby więc postanowiłem zapytać. Nie wiem po prostu jak w tej linijce pythonowej wstawiać zmienną z innego miejsca w programie.

Jakiś dobry mireczek mi pomoże? ( ͡° ͜ʖ ͡°)
0
  • Najlepsze
  • Wszystkie komentarze
morsik
morsik
@xfilokolo: @haka65: @Overthinker: a poprawna odpowiedź to:

mycursor.execute("SELECT * FROM tabela WHERE id=%s", (id,))
Źródło: https://stackoverflow.com/a/7929842/908147
5
O.....r
O.....r
@morsik: tak, SQL Injection. To kolejny etap po poznaniu f-stringów ( ͡º ͜ʖ͡º)
3
O.....r
O.....r
@xfilokolo: nie ma nic za darmo, dej plusa :D
3
haka65
@xfilokolo: mycursor.execute(f"SELECT * FROM tabela WHERE id= {IDENTYFIKATOR}")
2
O.....r
O.....r
@xfilokolo użyj f-stringa. f"Select coś tam skądś tam WHERE id={twoje_id}"
1
xfilokolo
@haka65: @Overthinker: @morsik: @Overthinker:
Bardzo wam dziękuję. Pomogliście
1