إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

5-خصائص اضافية لأنواع الحقول Databases Column Characteristics (دورة MySql )

تقليص
هذا الموضوع مغلق.
X
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • 5-خصائص اضافية لأنواع الحقول Databases Column Characteristics (دورة MySql )

    [frame="12 98"]السلام عليكم ورحمة الله وبركاته

    خصائص اضافية لأنواع الحقول Databases Column Characteristics
    --------------------------------------------------------------------------------


    عندما تختار نوع الحقل الذى ستستخدمه

    ]فى قاعدة البيانات (كما شرحنا بالدرس السابق

    تحدد الحقل اذا كان رقمى, او نصى, او وقت وتاريخ.

    هناك ايضا خصائص اضافية لهذه الحقول يجب فهمها لأنها لا غنى عنها

    اول هذه الخصائص هى الخاصية AUTO_INCREMENT

    ماذا تعنى هذه الخاصية؟

    هذه الخاصية توضع للحقول الرقمية فقط. يعنى لا يمكن لحقل من النوع TEXT ان تضع احد خصائصه AUTO_INCREMENT

    حسنا. ماهو عمله هذه الخاصية؟

    اتتذكر الدرس الثانى عندما تحدثنا عن الـ Primary Key ؟

    (ولاحظ Primary Key وليس Foreign Key )

    احرص دائما عندما تجعل احد الحقول هو الـ Primary Key ان يكون له الخاصية AUTO_INCREMENT

    وهى تعنى الزيادة التلقائية.

    تخيل معى ان لديك الجدول التالى

    •ID (هذا هو الحقل الـ Primary Key)

    •username

    •password

    •email


    عندما تقوم بإضافة تسجيل (للمرة الأولى) جديد وتدخل بهذا التسجيل البيانات التالية كامثال

    •ID (نتركه فارغا ولا نكتب شئ)

    •username = Ahmed (كامثال)

    •password = secret

    •email = email@example.com


    ما الذى سيحدث عندما نقوم بإدخال هذه البيانات؟ (بالطبع فى حالة ان الجدول له الخاصية AUTO_INCREMENT)

    سيتم وضع الرقم 1 داخل الحقل ID

    وعندما نقم بإضافة بيانات مستخدم اخر, بنفس الطريقة سيتم وضع الرقم 2 فى حقل الـ ID

    نستخلص من هذا, ان الخاصية AUTO_INCREMENT

    تقوم بإضافة اول اكبر رقم صحيح بعد اخر رقم ID موجود بالجدول.

    بمعنى اننا اذا اضفنا (اتحدث عن مثال جدول "المستخدمين" الموجود بهذا الموضوع)

    بيانات اربع مستخدمين, سيكون اول مستخدم له الهوية 1 (الهوية تعنى الـ id)

    وثانى مستخدم تم اضافته له الهوية 2 والثالث له الهوية 3 والرابع له الهوية 4, وهكذا.

    ماذا اذا قمنا بحذف ثانى مستخدم تم اضافته؟ والذى كانت هويته هى 2 ؟

    لا يوجد اى مشكلة فى هذا سيصبح تسلسل ارقام الهوية بالشكل التالى


    1 و 3 و 4

    وعندما تقوم بإضافة مستخدم خامس سيكون له الهوية 5.

    لكن سيكون هناك مشكلة اذا حاولت اصلاح الترتيب التسلسلى. (كما ذكرنا عن الـ Primary Key لا يجب ان نغيره بعد ان تم اضافته).

    هناك ايضا الخواص التالية الإضافية للحقول وسنشرحهم جميعا فى هذا الدرس بإذن الله.

    •UNSIGNED

    •ZEROFILL

    •DEFAULT

    •NOT NULL



    اول خاصيتين يتم يستخدموا ايضا مع الحقول الرقمية فقط.

    الخاصية UNSIGNED تعنى ان الحقل لا يقبل القيم السالبة. يعنى لا يقبل ارقام مثل -5 مثلا

    واذا حاولت ان تضف به قيمة سالبة سينتج عن هذا خطأ فى الإدخال.
    وهذا الخاصية ايضا انصح بشدة ان تستخدمها ايضا لحقول الـ Primary Key

    (ملحوظة سريعة, سوف ارمز للـ Primary key من الأن بالرمز PK اتمنى ان تتذكر هذه الملحوظة اثناء متابعتك للدورة)

    الخاصية الثانية ZEROFILL
    هذه الخاصية نادرا ماتستخدم لكنها ضرورية فى بعض الأحيان.
    وهى ايضا للحقول الرقمية فقط
    عندما تعطى لأحد الحقول الخاصية ZEROFILL

    هذا يعنى ان هذا الحقل يمكنه الإحتفاظ بالأرقام التى تحتوى على صفر بالجهة اليسرى
    لنفترض ان لدينا حقل يتم حفظ عناوين مكتب البريد به او مايعرف بالـ ZIP code
    هناك بعض هذه الأكواد تبدأ بـ 0 وبما ان صفر على اليسار لا يعنى اى شئ بالنسبة للأرقام فإنه يتم حذف تلقائيا. لكن اذا اضفنا خاصية الـ ZEROFILL
    لهذا الحقل. سوف يتم حفظ هذا الصفر بدون مشاكل.

    يعنى ببساطة هذا الرقم 01211 اذا ادخلته بحقل ليس له الخاصية ZEROFILL

    سوف يحفظ هكذا 1211 لكن اذا كان الحقل له الخاصية ZEROFILL سوف يتم حفظ الرقم كما تم ادخاله 01211

    الخاصية DEFAULT

    وهى تعنى الإفتراضى.

    لشرح هذا المعنى, اتتذكر نوع الحقل ENUM الذى شرحناه بالدرس السابق؟
    والذى يوضع به عدة اختيارات وعند ادخال اى سجل جديد له نحدد واحد فقط من هذه الإختيارات؟
    لنفرض ان لدينا الحقل Gender والذى يعنى النوع ذكر او انثى او Male, female

    هنا نستخدم الخاصية DEFAULT
    مع الحقل ENUM

    ليكون بالشكل التالى

    كود:

    كود:
    ENUM('male', 'female') DEFAULT 'male'
    (الرجال اولا :P )

    هذا يعنى ان هذا الحقل يتم وضع احد القيمتين له male او female

    واذا لم يتم تحديد القيمة سوف يتم تلقائيا وضع القيمة male

    بالنسبة لأخر خاصية, خاصية NOT NULL

    اولا معنى كلمة NULL يعنى قيمة مجهولة, ليست رقم وليست 0 وليست نص فارغ تماما
    وليس حتى مسافة فارغة. هذا افضل تعريف يمكن ان نعرف به معنى كلمة NULL

    لذلك اذا اردنا احد الخقول (وهذا يكون مع اغلب الحقول) ان لا يتم اضافة سجل جديد دون ان يتم تعيين قيمة له, يجب ان نجعله NOT NULL

    كاحقل اسم المستخدم مثلا, هل يمكن ان تضيف مستخدم جديد بقاعدة البيانات دون ان يكون له اسم مستخدم؟ بالطبع لا. وعليه حقل اسم المستخدم يجب ان يكون NUT NULL

    لكن هناك حقول اخرى يمكن ان لا نضع لها هذه الخاصية وهذا يعنى انه يمكن ان تكون NULL

    مثل حقل موقع العضو مثلا, ليس كل الأعضاء الذين يقوموا بالتسجيل يمتلكوا مواقع. بالتالى لا نضيف لهذا الحقل الخاصية NOT NULL بالتالى يمكن تركه فارغا بدون مشاكل.


    وكاملحوظة اضافية بالنسبة لحقول الـ PK يجب ان يكون له كل من الخواص التالية

    •NOT NULL

    •UNSIGNED

    •AUTO_INCREMENT


    اتمنى يكون الدرس بسيط وواضح وزود رصيد معلوماتك حول MySql

    واراكم بالدرس القادم بإذن الله.




    اقرأ ايضا..

    •الدرس السابق انواع الحقول فى قواعد البيانات Database data types

    •الدرس التالى قيود اسماء الجداول والحقول. وانواع محركات الحفظ Storage Engine


    من الدعم العربي[/frame]
    التعديل الأخير تم بواسطة رائد ابو فيصل; الساعة 22-03-2010, 11:27 AM.

  • #2
    رد: 5-خصائص اضافية لأنواع الحقول Databases Column Characteristics (دورة MySql )

    جزاك الله خيرا أخي ابو فيصل

    عساك على القوة دائما


    تحياتي لك

    .
    التعديل الأخير تم بواسطة رائد ابو فيصل; الساعة 22-03-2010, 11:28 AM.

    تعليق


    • #3
      رد: 5-خصائص اضافية لأنواع الحقول Databases Column Characteristics (دورة MySql )

      جزاك الله خيراً أخى رائد

      تعليق


      • #4
        رد: 5-خصائص اضافية لأنواع الحقول Databases Column Characteristics (دورة MySql )

        بارك الله فيك أخى ابا فيصل

        درس رائع وهام

        لك أجمل تحية على هذا الجهد والعطاء

        تعليق


        • #5
          رد: 5-خصائص اضافية لأنواع الحقول Databases Column Characteristics (دورة MySql )

          السلام عليكم ورحمة الله وبركاته

          حياك الله اخي العزيز ابوفيصل

          ماشاء الله دورات متتاليه ومستمره بكل جداره

          مأكد نتواصل وإياك وباقي الأخوه بالمتابعه والاستفاده

          جزاك الله عنا كل خير



          .

          تعليق

          مواضيع تهمك

          تقليص

          المنتدى: القسم العام نشرت بواسطة: Reem2Rabeh الوقت: 04-23-2025 الساعة 04:27 PM
          المنتدى: ضبط وتوكيد الجودة نشرت بواسطة: HeaD Master الوقت: 04-15-2025 الساعة 09:30 AM
          المنتدى: التصنيع والانتاج نشرت بواسطة: HeaD Master الوقت: 04-11-2025 الساعة 01:08 PM
          المنتدى: القسم العام نشرت بواسطة: نوال الخطيب الوقت: 03-19-2025 الساعة 03:07 AM
          المنتدى: الكمبيوتر والإنترنت نشرت بواسطة: عوض السوداني الوقت: 03-18-2025 الساعة 07:22 AM
          يعمل...
          X