شرح صفوف ومحتوى الفقرة
اربط شروط التصفية where قبل استدعاء دالة update لتعديل صفوف محددة والحصول على عدد السجلات المتأثرة. ولزيادة العدادات بأمان دون تضارب، استخدم دالتي increment و decrement، أو استخدم دالة upsert لإدراج الصفوف الجديدة وتحديث الموجودة في عملية واحدة.
- تحديث الصفوف (update): تعديل قيم الأعمدة للسجلات المطابقة للشرط وإرجاع عدد الصفوف المعدلة.
- الدمج الذكي (upsert): إضافة السجلات غير الموجودة وتحديث السجلات المتطابقة في المفتاح الفريد باستعلام واحد.
- العدادات الذرية (increment & decrement): زيادة أو إنقاص القيم الرقمية داخل القاعدة مباشرة لمنع تضارب الطلبات المتزامنة.
PHP
DB::table('products')->where('id', 5)
->increment('stock', 10);
DB::table('inventory')->upsert(
[['sku' => 'KB-01', 'qty' => 25]],
['sku'],
['qty']
);