إنشاء الجداول والقيود
لما تصمم نظام جديد، أول شي تبنيه هو الجداول. كل عمود له نوع بيانات، وتقدر تضيف قيود تحمي البيانات من الأخطاء.
| عدد صحيح | INT |
| رقم عشري دقيق (للمبالغ) | DECIMAL(10,2) |
| نص بطول متغير | VARCHAR(100) |
| تاريخ | DATE |
SQL
CREATE TABLE suppliers ( supplier_id INT PRIMARY KEY, name VARCHAR(80) NOT NULL, email VARCHAR(120) UNIQUE, country VARCHAR(50) DEFAULT 'Saudi Arabia' );
NOT NULL تمنع القيمة الفارغة، وUNIQUE تمنع التكرار، وDEFAULT تعطي قيمة افتراضية. والمفتاح الأجنبي يربط الجدول بجدول ثاني:
SQL
CREATE TABLE supplier_products ( supplier_id INT, product_id INT, cost DECIMAL(10,2), PRIMARY KEY (supplier_id, product_id), FOREIGN KEY (supplier_id) REFERENCES suppliers(supplier_id), FOREIGN KEY (product_id) REFERENCES products(product_id) );
في MySQLفي MySQL ترقيم تلقائي للمفتاح:
id INT AUTO_INCREMENT PRIMARY KEY. أما المحرر هنا (SQLite) فيستخدم INTEGER PRIMARY KEY AUTOINCREMENT. وكل جدول في MySQL يفضل يكون ENGINE=InnoDB عشان المفاتيح الأجنبية تشتغل.