جديد المدونة

دورة MySql5 - الدرس الرابع : String - Data Type



دورة MySql5 - الدرس الرابع :  String - Data Type


هنتكلم النهاردة عن ال string data type في البداية زي ما احنا شايفين في الصورة عندنا انواع شبه ال numeric الي شرحناها في الدرس الي فات 





عندنا ال TinyText , MediumText , LongText  ودول كنا اتكلمنا في الدرس الي فات عن ال numeric وهما نفس الكلام تقريبا مافيش اختلاف ممكن تترجع للدرس من الرابط دا  هنكمل احنا النهاردة باقي انواع ال  string  عندنا هنا بقى حاجة اسمها char وهو اختصار لكلمة character وفي نوع تاني اسمه varchar وهو اختصار ل Variable Character  طب ايه الفرق مابينهم ؟ 

- بيقولك بقى يا سيدي ان char  دا بيخزن قيمة ثابتة  Store Fixed Value يعني لو عندي في الداتا بيز حقل احنا عارفين القيمة او عدد الحروف الي هيتخزن فيه وليكن مثلا 50 حرف او ارقام في الحالة دي انا متأكد ان القيمة دي او العدد دا ثابت ومش هيزيد او يقل فبستخدم النوع دا الي هو char  اما النوع التاني الي هو varchar فدا بنسختدمه مع القيم المتغيرة Store Variable Value  يعني لو عندي مثلا اسماء منتجات او اشخاص او اي حاجة انا عارف انها قابلة للزيادة او النقصان وغير ثابتة في الحالة دي اختار ال varchar 

- عندك برضو ال char دا اقصى عدد حروف ليه هو 255 لكن في ال varchar كان في ال mysql الاصدار 5.0.3 اقصى عدد للحروف هو 255 اما في الاصدارات الاحدث من 5.0.3 اقصى عدد للحروف هو 65.535 طب ازاي تعرف اصدار الmysql الي انت شغال عليه هتلاقي في الصورة دي مكان الاصدار الي موجود عندك 



- ال char برضو بيكون اسرع من ال varchar  لانه بيستخدم static memory لكن ال varchar بيستخدم dynamic memory يعني ال char هو عارف هيتعامل مع كام حرف قيمة محددة لكن ال varchar مش عارف وهيحدد على اساس القيمة الي هتخزنها فيه عشان كدة بيكون اسرع منه .

- النوع الي بعدة كدة هو ال TEXT  وفي برضو نوع اسمه BLOB بالنسبة لل text فدا بيخزن نص كبير Store String  اما ال blob فهو Binary Large Object  يعني ال text دا ليه ترميز وبستخدمه لما اكون عايز اخزن نص كبير لو مثلا هخزن تفاصيل منتج او خبر جديد ومحتاج حقل يخزن البيانات الكتيرة دي , اما بالنسبة لل blob  فدا مالوش ترميز بيخزن البيانات على شكل binary  وبيكون استخدامه مثلا لما اكون عايز اخزن مثلا صورة او ملف ككود binary  فهو هنا بيخزن الصورة كلها على بعضها مش اللينك بتاعها لان اللينك بتاعها يعتبر string . 
طبعا في عندنا برضو ال TinyText , MediumText, LongText وهما طبعا نفس القصة الي اتكلمنا فيها في الدرس الي فات انهم احجام مختلفة وبتختار الحجم المناسب ليك وفي برضو ال TinyBlOB , MediumBLOB , LongBLOB .

- اخر حاجة عندنا هي ال Enum وال SET  الEnum دي اختصار ل Enumeration وهي عبارة عن مجموعة بيانات انت بتختار منها زي الصورة دي 


زي ما انتو شايفين حطيت انواع اللابات الي عندي مثلا وبامكانك تزود الاختيارات لو دوست على زرار Add Values وتحدد عدد القيم الي انت عايز تزودها .

طبعا في الحقل دا لو جيت تدخل اي قيمة غير القيم الي انت حددتها مش هيتم ادخالها وهيضيف مكانها قيمة فاضية , يعني لازم القيمة الي هتخزنها في الخقل دا تكون واحدة من الي انت حددتهم وماينفعش تدخل اكتر من قيمة لازم تكون قيمة واحدة لكن في النوع ال SET فهو نفس ال Enum لكن بامكانك انك تختار اكتر من قيمة في نفس الوقت وانت بتدخل القيم ودا الاختلاف الي بينهم وبنستخدمهم لما نكون عايزين نخلي المستخدم يلنزم باختيارات معينة ما يدخلش اي قيمة تانية 


وبكدة بنكون انتهينا من Sting DataType  وهنكمل باقي الانواع وفي الدروس القادمة ان شاء الله .




 صفحتنا على الفيس بوك 




ليست هناك تعليقات:

إرسال تعليق

البرمجة حياة Designed by Templateism.com Copyright © 2014

صور المظاهر بواسطة Bim. يتم التشغيل بواسطة Blogger.