"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية إدراج المتغيرات بأمان في استعلامات SQL باستخدام Python؟

كيفية إدراج المتغيرات بأمان في استعلامات SQL باستخدام Python؟

نشر في 2025-02-06
تصفح:329

How to Safely Insert Variables into SQL Queries Using Python?

إدراج المتغيرات بأمان في استعلامات SQL في Python

عند معالجة استعلامات قاعدة البيانات في بيثون ، عادة ما تحتاج إلى تضمين متغيرات في بيان الاستعلام. ومع ذلك ، تأكد من العمل بطريقة تمنع أخطاء بناء الجملة أو نقاط الضعف في الأمان.

فكر في رمز Python التالي:

cursor.execute("INSERT INTO table VALUES var1, var2, var3")

في هذا الرمز ، var1 هو عدد صحيح ، var2 و var3 هي سلاسل. ومع ذلك ، عندما يحاول Python تضمين الأسماء VAR1 ، var2 ، و

لحل هذه المشكلة ، يمكنك استخدام آلية استبدال العنصر النائب الذي توفره واجهة برمجة تطبيقات قاعدة البيانات. فيما يلي كيفية إعادة كتابة الكود باستخدام العناصر النائبة:

cursor.execute("INSERT INTO table VALUES (%s, %s, %s)", (var1, var2, var3))
في هذا الكود المحسّن:

  • ٪ s يمثل عنصرًا نائبًا لملء القيمة.
  • (var1 ، var2 ، var3) هو tuple تحتوي على القيمة المراد إدراجها.
من خلال تمرير القيم كـ tuples ، فإن واجهة برمجة تطبيقات قاعدة البيانات تعالج المتغيرات الضرورية والمراجع ، مما يضمن توافق قاعدة البيانات ومنع مخاطر الأمان المحتملة.

لاحظ أنه بالنسبة لمعلمة واحدة ، يلزم وجود معلمة واحدة مع فواصل زائدة:

cursor.execute("INSERT INTO table VALUES (%s)", (var1,))
بالإضافة إلى ذلك ، تجنب استخدام مشغل تنسيق السلسلة (٪) لإدراج متغيرات لأنه يمكن أن يسبب نقاط الضعف الأمان ولا يدعمها واجهة برمجة تطبيقات قاعدة البيانات.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3