إنشاء بنود MySQL آمنة مع القوائم
عند العمل مع قواعد بيانات MySQL وPython، قد يكون من المفيد إنشاء قائمة لاستخدامها في جملة IN. ومع ذلك، فمن الضروري القيام بذلك بشكل آمن لمنع ثغرات حقن SQL.
بدلاً من إنشاء سلسلة تحتوي على قائمة القيم يدويًا، فإن الطريقة المفضلة هي استخدام آلية معلمة الاستعلام. يسمح لك هذا بتمرير القائمة مباشرة إلى برنامج تشغيل قاعدة البيانات دون الحاجة إلى التعامل مع أي اقتباس أو هروب.
إليك كيفية تحقيق ذلك:
format_strings = ','.join(['%s'] * len(list_of_ids)) cursor.execute("DELETE FROM foo.bar WHERE baz IN (" format_strings ")", tuple(list_of_ids))
باستخدام هذه الطريقة، يمكنك تجنب حقن SQL عن طريق السماح لـ MySQL بالتعامل مع معلمات الملف استفسار. سيتم إدراج البيانات مباشرة في الاستعلام دون أي معالجة مسبقة، مما يضمن السلامة والكفاءة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3