جاري التحميل
الرئيسية عني خدماتي أعمالي المدونة المجتمع اتصل بي دخول إنشاء حساب English وظّفني
العودة للمدونة
Database

تصميم قواعد البيانات: أخطاء شائعة وكيف تتجنبها

22 Mar 2026 461 مشاهدة

ليه تصميم قاعدة البيانات مهم؟

تصميم قاعدة البيانات الغلط هو أكتر سبب لمشاكل الأداء في المشاريع الكبيرة. تغيير الـ Schema بعدين بيكون مؤلم جداً لو التطبيق شغال.

خطأ 1: عدم تطبيق Normalization

-- غلط: تخزين بيانات متكررة
users: id | name | city_name | country_name

-- صح: Normalized
users:     id | name | city_id
cities:    id | name | country_id
countries: id | name | code

خطأ 2: استخدام VARCHAR(255) في كل حاجة

-- غلط
status VARCHAR(255)

-- صح
status ENUM('active', 'inactive', 'pending')
is_active TINYINT(1)

خطأ 3: نسيان الـ Foreign Keys والـ Indexes

Schema::create('posts', function (Blueprint $table) {
    $table->id();
    $table->foreignId('user_id')->constrained()->cascadeOnDelete();
    $table->string('slug')->unique();
    $table->enum('status', ['draft', 'published'])->index();
    $table->index(['user_id', 'status', 'created_at']);
});

خطأ 4: تخزين JSON لكل حاجة

-- غلط: علاقات جوه JSON
products: id | name | tags (JSON) | categories (JSON)

-- صح: Pivot Tables
product_tag:      product_id | tag_id
product_category: product_id | category_id

خطأ 5: عدم التخطيط للـ Soft Delete

// في الـ Model
use SoftDeletes;

// في الـ Migration
$table->softDeletes();

قاعدة ذهبية

فكر في تصميم الـ Database قبل ما تكتب أي كود. الوقت اللي بتصرفه في التصميم هيوفر عليك أضعافه في المستقبل.

تفاعل مع المقال:

التعليقات

لا توجد تعليقات بعد، كن الأول!

يجب تسجيل الدخول للتعليق

انضم للمجتمع وشارك رأيك في المقالات

مشاركة المقال

WhatsApp Telegram Twitter
كل المقالات
🤖

المساعد الذكي

اسألني عن محمود نصر

مرحباً! أنا مساعد ذكي لمحمود نصر. يمكنني الإجابة عن مهاراته وخبراته وأعماله. 👋
🗑️

تأكيد الحذف