إنتقال للمحتوى

  • تسجيل الدخول عبر الفيس بوك تسجيل الدخول عبر تويتر Log In with LinkedIn Log In with Google      تسجيل دخول    
  • إنشاء حساب

صورة
- - - - -

اسئلة تحتاج الى اجوبة


5 رد (ردود) على هذا الموضوع

#1 mr.dreamer

mr.dreamer

    مشترك

  • الأعضــاء
  • 52 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 02 November 2013 - 01:42 AM

السلام عليكم ياشباب

 

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

 

 

 

ايه الفرق بي Char , Varchar2 

 

ما الفرق بين PK , Unique

 

ما الفرق بين Drop , Delete

 

هل الاسرع فى التنفيذ in ام exist

 

مافائدة ال index

 

 

امتى استدعى ال Function , ال Triger

 

وماهو ال Triger وهل هو فى ال sql ام فى ال pl-sql



#2 ميسم الكرام

ميسم الكرام

    مشرفة

  • فريق الإشراف
  • 2,162 مشاركة
  • الاسم الأول:-
  • اسم العائلة:-
  • البـلـد: Country Flag

تاريخ المشاركة 02 November 2013 - 08:18 AM

وعليكم السلام ورحمة الله وبركاته ...سأجيب بشكل مبسط للغاية لنوضح المفهوم ..إن شاء الله

 

الفرق Char , Varchar2

 

هي من اسمها واضحة

 char  يعني fixed length      يعني ثابتة لاتتغير ...

Varchar2     يعني variable length متغيرة بالطول

 

يعني بعبارة اخرى إذا كان لدي متغير وتم تعريفه على اساس char كالاتي

 

x char(60);

يعني انا حجزت حجم للمتغير x بالذاكرة 60 لكن في العمل لم استخدم سوى 20 وحدة من الذاكرة ..

حسناً إذن انا ضيعت 40 وحدة خزنية من الذاكرة ضاعت بدون الاستفادة منها ..يعني هو حجز مكان طوله 60 كما عُرف به ....(ثابت) وانتهى ...سواء تم استخدامه بأكمله ام لا 

 

لكن اذا عرفت المتغير x  على اساس  varchar2  كما في الصيغة التالية

 

x varchar2(60);

وفي العمل استخدمت 20 وحدة خزنية من الذاكرة ...إذن ال 40 المتبقية سوف ترجع للذاكرة ولا اخسرها ..

إذن تغير الحجم من 60 الى 20 حسب ماتم استخدامه فعلاً .... وليس هنالك مساحة خزنية ضائعة مني لسوء تعريف متغير ولهذا سمي بانه variable char او varchar2  لإنه يتغير ولا يبقى ثابت 

 

ما الفرق بين  PK , Unique

 

الpk   يجب أن لا يكون null  ويجب ان يكون unique وحيد

يعني    ((PRIMARY KEY = UNIQUE KEY + Not Null )).....

لانه سوف يستخدم للإشارة أو الربط مع جدول آخر فلا يمكن أن ياخذ null كقيمة

 

بينما الUnique  هو ليس pk  لذلك يمكن ان يأخذ ال null  كقيمة لكن لمرة واحدة فقط ,

أو بالاحرى قيمه لا تتكرر يعني يأخذ القيمة مرة واحدة وحيدة ..لذلك سمي Unique

يعني يأخذ مرة واحدة قيمة =2 ومرة واحدة قيمة = 5 ...... يعني القيم عنده لاتتكرر وللتوضيح أكثر شاهد هذا الرابط الذي يوضح الفرق بينهما

http://sqlhints.com/...-in-sql-server/

 

 

ما الفرق بين Drop , Delete

الفرق الاول الdrop   هو من ضمن ايعازات الDDL - Data Definition Language يعني الايعازات على قاعدة البيانات

بينما ال delete هو ضمن ايعازات الDML - Data Manipulation Language يعني الايعازات على table , view 

ال drop  هو لحذف الكائن بشكل مطلق  ..ماذا نقصد بشكل مطلق ...يعني حذفه بأكمله من ال database

يعني عبارة أدق وأوضح ...قلع الكائن من جذوره ......

يعني عندما أكتب الايعاز

drop user hr;

فأنا بهذا الايعاز حذفت ال user  بما يحتويه من جداول وبما تحتويه الجداول من بيانات ....يعني لم يعد وجود أصلاً لمستخدم إسمه  hr 

 

وعندما أكتب

drop table emp;

فانا أحذف الجدول بهيكليته وبمحتوياته ...الجدول بكل الصفوف وبما تحتوي الصفوف من  بيانات..يعني (structure + contents) للجدول ... ولم يعد وجود اصلا لهذا الجدول في قاعدة البيانات

بينما لو كتبت الايعاز

delete * from table emp;

 انا حذفت محتويات الجدول (بياناته) فقط (contents only) لكن (structure) هيكلة الجدول موجودة على قاعدة البيانات....

يعني أقصد كجدول فيه أعمدة وكل عمود له إسم ونوع بيانات   data type  موجود أنا عملت تفريغ للبيانات فقط.... حذفتها

 

هل الاسرع فى التنفيذ in ام  exist

الاسرع هي  exist

 

مافائدة ال index

الindex   هو دليل يساعد في عملية الاستعلام والبحث ..يعني تخيل لو قلت إبحث ....فسيكون الجواب بسؤال ..أبحث عن ماذا؟؟

فلو ذكرت الامر المراد البحث عنه سيكون البحث أسهل وأسرع وهذه هي الفكرة من ال index 

فال index  يعمل له create  على الجدول ليسهل عملية البحث والاستعلام 

 

 

اما ما يخص السؤال الاخير...فهل المقصود على مستوى الفورم ...ام حضرتك تقصد على مستوى نافذةSQL

إن شاء الله اكون قد وفقت في توضيح الفكرة لكل منهما بما لدي من معلومة ...شكراً


  • programmer_it معجب بهذا

#3 mr.dreamer

mr.dreamer

    مشترك

  • الأعضــاء
  • 52 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 02 November 2013 - 12:10 PM

ماشاء الله فعلا العلم نور وحضرتك ازلتى ظلمة جهلى باجاباتك

 

اشكرررررررررك بشدة على الاجابة النموذجية المبسطة والتفصيل بالامثلة والشرح الاكثر من رائع

 

بالنسبة للسؤال الاخير اقصده على مستوى ال sql فقط



#4 ميسم الكرام

ميسم الكرام

    مشرفة

  • فريق الإشراف
  • 2,162 مشاركة
  • الاسم الأول:-
  • اسم العائلة:-
  • البـلـد: Country Flag

تاريخ المشاركة 02 November 2013 - 02:49 PM

حسناً ..بقي الاجابة على السؤال الاخير ..وأجلته لإني أردت توضيح اكثر للسؤال ....وأن شاء الله تكون الاجابة واضحة أيضاً

 

امتى استدعى ال Function , ال Triger

 

 قبل ان نعرف متى نستدعى كلاً منهما... علينا ان نعرف ما هما؟؟ وما الفرق بينهما ؟؟؟ ثم نتعرف متى نستدعي كلا منهما وهذا ربما سيتضح بمجرد ان نعرف كلا منهما 

حسناً ماهو  ال trigger  وماهي الfunction

الفرق الاول بينهما  ان ال trigger هو أجراء من نوع خاص (procedure special Kind) مخزون بقاعدة البيانات (database)

 يتم عمله على أحد الجداول الموجودة في قاعدة البيانات  ينفذ بشكل ألي (automatically executes)   عند حدوث الحدث المكتوب عنده ...يعني ماذا نقصد بحدوث  الحدث المكتوب عنده ؟؟

حسناً ال trigger يكتب عند نوعين من الايعازات وهما

1- ايعازات الDDL - Data Definition Language

وتشمل   create, alter,drop الايعازات على قاعدة البيانات

2-  ايعازات الDML - Data Manipulation Language

 وتشمل ايعازات insert,update,delete  الايعازات على الجداول 

فعند حدوث هذه الاحداث ...يعني عند حدوث ( إنشاء أو تغيير أو حذف نهايئياً لل table او view) ينفذ هذه ال trigger وينفذ بشكل آلي  (automatically executes) ومباشرةً ..يعني بدون استدعاء... لايتطلب منا استدعاء

أو عند حدوث هذه الاحداث التي هي النوع الثاني التي تطرقنا عليه وتشمل (الحذف والاضافة والتعديل على بيانات الجدول) سوف ينفذ هذه ال trigger وينفذ بشكل آلي (automatically executes) يعني مباشرةً ....بدون استدعاء ....

طبعاً حسب الصيغة المكتوب بها يعني after أو before

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

وأنما هي ببساطة تؤدي وظيفة معينة كإن تقوم بعمليه حسابية معقدة ...أو لمعالجة نصوص ..وترجع لنا قيمة ...وعندما نريد تنفيذها نقوم بإستدعائها

إن شاء الله وضحت الاجابة  بما اعرف....شكراً

ولزيادة المعرفة والمعلومة شاهد الرابط التالي ..

http://hpsqtp.blogsp...-procedure.html


  • anas.soft و programmer_it معجبون بهذا

#5 mr.dreamer

mr.dreamer

    مشترك

  • الأعضــاء
  • 52 مشاركة
  • البـلـد: Country Flag

تاريخ المشاركة 02 November 2013 - 09:46 PM

والله انا مستمتع بشرح حضرتك لانك تبسطى المعلومة والحمد لله فهمت اجابة كل سؤال من اول مرة

 

ربنا يزيدك من العلم النافع شكرا جزيلا على المعلومات القيمة والمهمة


  • ميسم الكرام معجب بهذا

#6 ميسم الكرام

ميسم الكرام

    مشرفة

  • فريق الإشراف
  • 2,162 مشاركة
  • الاسم الأول:-
  • اسم العائلة:-
  • البـلـد: Country Flag

تاريخ المشاركة 01 February 2016 - 09:25 AM

بالتوفيق للجميع إن شاء الله