📊 تعلم إنشاء الجداول في SQL بأمر CREATE TABLE

مرحباً بك في درس جديد من دروس SQL! اليوم سنتعلم واحدة من أهم الأوامر الأساسية في لغة SQL وهي أمر CREATE TABLE الذي يستخدم لإنشاء جداول جديدة في قاعدة البيانات.


🎯 ما هو جدول SQL؟

الجداول هي المكون الأساسي في قواعد البيانات العلائقية. تخيل الجدول كجدول إكسل يحتوي على:

  • أعمدة (Columns) تمثل خصائص البيانات
  • صفوف (Rows) تمثل السجلات الفعلية

📝 بناء جملة CREATE TABLE الأساسي

أبسط صيغة لإنشاء جدول هي:

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype
);
  • CREATE TABLE: الأمر الرئيسي
  • table_name: اسم الجدول الذي تريد إنشاءه
  • column1, column2, ...: أسماء الأعمدة
  • datatype: نوع البيانات لكل عمود

📋 أنواع البيانات الشائعة في SQL

هذه بعض أنواع البيانات الأساسية التي ستستخدمها:

CREATE TABLE employees (
    id INT,                -- أعداد صحيحة
    name VARCHAR(100),     -- نصوص بطول متغير
    salary DECIMAL(10,2),  -- أعداد عشرية
    hire_date DATE,        -- تاريخ
    is_active BOOLEAN      -- قيمة منطقية (صحيح/خطأ)
);

🔐 إضافة القيود (Constraints) الأساسية

القيود تساعد في الحفاظ على صحة البيانات:

CREATE TABLE students (
    student_id INT PRIMARY KEY,          -- مفتاح رئيسي
    first_name VARCHAR(50) NOT NULL,     -- لا يمكن أن يكون فارغاً
    email VARCHAR(100) UNIQUE,           -- يجب أن يكون فريداً
    age INT CHECK (age >= 18)           -- شرط محدد
);

🏗️ مثال عملي لإنشاء جدول

لننشئ جدول "المنتجات" مع تطبيق ما تعلمناه:

CREATE TABLE products (
    product_id INT PRIMARY KEY,
    product_name VARCHAR(100) NOT NULL,
    price DECIMAL(10,2) NOT NULL,
    category VARCHAR(50),
    in_stock BOOLEAN DEFAULT TRUE
);

هذا الجدول يحتوي على:

  • معرف منتج (مفتاح رئيسي)
  • اسم المنتج (إجباري)
  • السعر (إجباري)
  • التصنيف (اختياري)
  • حالة التوفر (قيمة افتراضية: متوفر)

💡 نصائح مهمة للمبتدئين

  1. اختر أسماء واضحة ووصفية للجداول والأعمدة
  2. استخدم أنواع البيانات المناسبة لكل عمود
  3. حدد القيود الضرورية لحماية بياناتك
  4. ابدأ بجداول بسيطة ثم تطورها تدريجياً

❌ الأخطاء الشائعة التي يجب تجنبها

  • نسيان الفاصلة بين الأعمدة
  • استخدام مسافات في أسماء الجداول (استخدم _ بدلاً منها)
  • اختيار أنواع بيانات غير مناسبة
  • نسيان تحديد القيود المهمة مثل NOT NULL