18- كورس Node.js بالعربي – MySQL Delete

شرح MySQL Delete في Node.js

شرح MySQL Delete في Node.js

[شركة برمجة مصرية]

تعتبر MySQL واحدة من أكثر قواعد البيانات شيوعًا في تطوير التطبيقات، وغالبًا ما يتم استخدامها مع Node.js لإنشاء تطبيقات ويب قوية وفعالة. أحد الوظائف الأساسية التي يمكن تنفيذها باستخدام MySQL هي عملية الحذف، والتي تتيح للمطورين إزالة البيانات غير المرغوب فيها أو غير الضرورية من الجداول. في هذا المقال، سنقوم بشرح كيفية استخدام MySQL لتنفيذ عملية الحذف في بيئة Node.js مع تقديم أمثلة متعددة لتوضيح الفكرة.

إعداد الاتصال بقاعدة البيانات

قبل أن نبدأ في عملية الحذف، يجب علينا أولاً إعداد الاتصال بقاعدة البيانات MySQL. يمكننا القيام بذلك باستخدام مكتبة mysql المتاحة في Node.js. بعد تثبيت المكتبة باستخدام npm، يمكننا إنشاء اتصال بقاعدة البيانات كما يلي:

const mysql = require('mysql');

const connection = mysql.createConnection({
    host: 'localhost',
    user: 'username',
    password: 'password',
    database: 'database_name'
});

connection.connect((err) => {
    if (err) {
        console.error('خطأ في الاتصال بقاعدة البيانات: ' + err.stack);
        return;
    }
    console.log('تم الاتصال بقاعدة البيانات بنجاح');
});

تنفيذ عملية الحذف باستخدام DELETE

بعد إعداد الاتصال بقاعدة البيانات، يمكننا الآن تنفيذ عملية الحذف. يتم استخدام جملة DELETE في SQL لحذف السجلات من الجدول. إليك كيفية تنفيذ عملية الحذف في Node.js:

// حذف سجل بناءً على معرف محدد
const deleteQuery = 'DELETE FROM users WHERE id = ?';
const userId = 1;

connection.query(deleteQuery, [userId], (error, results, fields) => {
    if (error) {
        console.error('خطأ أثناء حذف السجل: ' + error.stack);
        return;
    }
    console.log('تم حذف السجل بنجاح. عدد السجلات المحذوفة: ' + results.affectedRows);
});

في المثال أعلاه، نقوم بحذف سجل من جدول users حيث يكون id مساويًا لـ 1. يتم استخدام علامة الاستفهام ? كعنصر نائب يتم استبداله بالقيمة الحقيقية، مما يساعد في حماية [شركة برمجة مصرية] التطبيق من هجمات حقن SQL.

حذف سجلات متعددة بشروط مختلفة

يمكن استخدام عبارة DELETE لحذف سجلات متعددة بناءً على شروط معينة. فيما يلي مثال على كيفية حذف جميع المستخدمين الذين لم ينشطوا حساباتهم:

const deleteInactiveUsers = 'DELETE FROM users WHERE active = ?';
const isActive = false;

connection.query(deleteInactiveUsers, [isActive], (error, results, fields) => {
    if (error) {
        console.error('خطأ أثناء حذف السجلات: ' + error.stack);
        return;
    }
    console.log('تم حذف السجلات غير النشطة بنجاح. عدد السجلات المحذوفة: ' + results.affectedRows);
});

في هذا المثال، نقوم بحذف جميع السجلات من جدول users حيث تكون قيمة active تساوي false. هذا يسمح لنا بتنظيف قاعدة البيانات من المستخدمين غير النشطين بشكل فعال.

بما أن عملية الحذف تعتبر عملية حساسة، فمن المهم التأكد من شروط الحذف لتفادي حذف البيانات بشكل غير مقصود. دائمًا يُنصح بأخذ نسخة احتياطية من البيانات قبل تنفيذ عمليات الحذف الواسعة.