Mengambil semula Pertanyaan SQL Mentah, Tersusun daripada Ungkapan SQLAlchemy
Antara muka pertanyaan SQLAlchemy menyediakan abstraksi yang berkuasa untuk membina pertanyaan pangkalan data. Walau bagaimanapun, mengakses pernyataan SQL yang mendasari boleh mencabar. Untuk mendapatkan pertanyaan SQL mentah yang disusun dengan parameter terikat, pertimbangkan pilihan berikut:
menggunakan argumen literal_binds
Dokumentasi mencadangkan penggunaan literal_binds untuk mencetak pertanyaan q dengan parameter:
print(q.statement.compile(compile_kwargs={"literal_binds": True}))
Kaveat
Amaran Dokumentasi
Dokumentasi memberi amaran bahawa anda tidak seharusnya menggunakan kaedah ini dengan data daripada sumber yang tidak dipercayai seperti borang web. Mekanisme SQLAlchemy untuk menukar nilai Python kepada nilai rentetan SQL tidak mengendalikan data yang tidak dipercayai dengan selamat dan tidak menyemak jenis data yang dihantar.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Kueri SQL Mentah, Disusun daripada Ungkapan SQLAlchemy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!