في الدقيقة 41:05 الجدول الثالث بأسم "Project Technologies " اعتقد انه الاصح يكون فيه عمود من عندنا لل primary key بدل من استخدام Composite key مكون من رقم البروجيكت ورقم التكنولوجي والسبب انه لو فكرنا في المستقبل جالنا نفس البروجيكت تاني نشتغل عليه من جديد نعمله تحديث او ايا كان وقتها مش هنقدر نسجله تاني ونعتبر انه بروجيكت جديد كلامي ممكن يبان اوضح في مثال اخر زي لو عندنا جدول للكورسات وجدول للطلاب والعلاقة بينهم many to many وقتها لو عملنا جدول تالت فيه رقم الطالب ورقم الكورس اللي مسجل فيه واخدنا الخانتين علي انهم Composite Key وحصل في المستقبل انه طالب رسب بكورس وحب يسجل فيه تاني مش هنعرف نسجل الطالب دا او هنسجله كطالب جديد (ودا خطأ), فالحل وقتها برضو اننا نزود عمود جديد من عندنا لل primary Key لانه ال Composite key ممكن يسببلنا مشاكل في سيناريو معين زي ماوضحت دلوقتي
يعطيك الف عافية على مجهودك وجعله الله في ميزان حسناتك ومن تحب لدي ملاحظة في الدقيقة 50:00 في حل مشكلة BCNF Normal Form وجود حقل (NPA) Provider لا يقوم بتحديد أو اشتقاق جزء من المفتاح الاساسي وهو (PA) Technology لأن ل provider هو من يعتمد على ال Technonlogy أي ال Technology هي من خلالها نقوم بتحديد ال provider ...... وذلك لأن ل provider لديه أكثر من تكنولوجي والتكنولوجيا الواحدة تابعة ل Provider واحد ..... // خلاصة القول هنا انك عندما اضفت حقل ل provider الى جدول Project Technonlogies لم يحصل لدينا مشكلة في BCNF أي لم يصبح لدينا اعتمادية مثل هذه (NPA) Provider------> (PA) Technology حتى نطبق BCNF // ولكن أصبح لدينا اعتمادية جزئية partial dependency كالتالي (PA) PRJ# , (PA) Technology -------> (NPA) Provider (PA) Technology -------> (NPA) Provider وهنا (NPA) Provider يعتمد على جزء من المفتاح الأساسي المركب وهنا كأننا في النموذج التاني من التطبيع 2NFيجب التخلص من ال partial dependency فهنا يفترض أن يتم اخراج ل provider و ال Technology في جدول منفصل مع النظر للعلاقة بينهما : - كل provider يمتلك أكثر من Technology - كل Technology تتبع ل Provider واحد * فهناك سيكون لدينا جدول لل Technologeis منفصل وهو موجود مسبقا وفيه المفتاح الأساسي Id يحتوي على حقل ل ProviderId ك مفتاح أجنبي F.K وحقل TechnonlogyName *سيكون لدينا جدول Providers منفصل ومفتاحه الاساسي Id وحقل آخر ProviderName وسيكون ال Id مفتاحا اجنبيا في جدول ال Technonlogeis وذلك لتجنب التكرار العمودي لاسم الProvider في جدول ال Technologeis // ملاحظتي الثانية الجدول الذي يحمل اسم TechnologyProvider كما في الدقيقة 50 :00 هناك تكرار عمودي في اسم ال provider وهذا يؤدي لمشكلة في التحديث فعندها اخراج ال provider في جدول منفصل هو الحل وجعل مفتاحه الاساسي اجنبي في جدول ال Technologeis الموجود مسبقا وبذلك نصل الى نفس النتيجة وتكون الجداول جميعها في BCNF فجميع الجدوال : 1. تحتوي على قيم منفردة Atomic value 2. كل حقل له بيانات من نفس النوع Same Data Type or Domain 3. لا يوجد حقول مركبة 4. كل جدول يحتوي على مفتاح رئيسي فريد P.K Unique 5. جميع الجداول لا يوجد بها اعتمادية وظيفية جزئية Partial functional dependency فجميع الحقول لكل جدول تعتمد اعتمادا كليا على المفتاح الأساسي p.k 6. جميع الجداول لا تحتوي على تكرارات عمودية لا داعي لها فالتكرار فقط يكون للمفتاح الأجنبي قدر الامكان فهنا تجنبنا ال update Anomaly فالتحديث يتم في مكان واحد في جدول منفصل ويسمع في بقية الجداول المرتبطة عن طريق مفتاح اجنبي 7. جميع الجداول لا يوجد بها اعتمادية وظيفية متعدية transitive functional dependency فجميع الحقول لكل جدول تعتمد فقط على المفتاح الأساسي p.k not (NPA) ----determine----> (NPA) only (PA) ----determine----> (NPA) 8.جميع الجداول تحقق : not (NPA) ----determine----> (PA) 9. جميع الجداول ذات العلاقة مع بعضها البعض مرتبطة عبر المفاتيح الاجنبية فهناك تكامل وتناسقية للبيانات ################################################################################## // الجدوال النهائية// جدول المشاريع Projects Table
ربنا يباركلك والله يابشمهندس فعلا والله انا مكنتش متخيل كمية المعلومات والاستفادة اللى استفدتها من الدرس ده وفعلا المعلومات دى انا مشوفتهاش ف الكورسات المدفوعة ربنا يكرمك ويجازيك كل خير والله كالعادة شرح ممتاز وبسيط دام تألقك ♥
شرح اكثر من رائع.. ياريت حضرتك تتطرق لجزئية ال Collation وتفاصيلها ومشاكلها و ال Compatibility level وعند نقل الداتا ببس تم انشاءها على سيرفر بفيرجن معين الى سيرفر اخر بفيرجن اخر مختلف وكيف يمكن تفادي المشاكل او معالجة المشكلة في حال وجودها؟ تحياتي استاذنا الكريم..
الله يسعدك ويعطيك الف عافية. انا متخرج جامعة هندسة معلوماتية بسوريا .كمية المعلومات الجديدة يلي بحياتي مو سمعانن محترمة جدا . انا المفروض اني شاطر بلغة الsql . بهلق اكتشفت انو مافي اساسات بلمرة. الله يستر من الفيدوهات يلي جاي يمكن قلك انا مو شاطر بلمرة 😂
ما شاء الله تسلم على الشرح المفصل والرائع وسؤال لو سمحت في حال عندي قاعدة بيانات وحبيت انقلها الى سيرفر ثاني ما هي أفضل طريقة لعمل ذلك وهل يشترط نقل ملف log ايضا؟
عندي سؤال ف الدرس هو في مثال ال 3NF ازاي في تكرار في اسم الشركة بالرغم ان من شروط ال 2NF ان ميحصلش vertical redundancy وده مش تشابه اسماء لأن هي نفس الشركة
لو كان النظام عندك انت متاكد انه نفس الشئ معناه اعتبره تكرار نفس الشئ على اسم الشارع مثلا في اميريكا وكندا ممكن تلاقي نفس اسم الشارع في اكثر من مقاطعة فكله بيعتمد على النظام اللي انت بتبننيه والسياق العملي له
ربنا يجازيك خير على مجهودك يا بشمهندس عصام.... ولكن انا تبعت اول فيديوهين وحاسس ان كثير من الاشياء مفهمتهاش كويس فهل الافضل ان يكون عندي خلفيه عن السيكوال وبعد كده اخد الكورس ولا ده يناسب ايضا اللي معندوش اي خلفيه لاني فيه مصطلحات كتيره اتقالت مفهمتهاش او معدتش عليا قبل كده وجزاكم الله خيرا
دعمنا بالتعليقات والإشتراك يعني الكثير ويعني أننا سنستمر في تقديم الأفضل
في الدقيقة 41:05
الجدول الثالث بأسم "Project Technologies " اعتقد انه الاصح يكون فيه عمود من عندنا لل primary key بدل من استخدام Composite key مكون من رقم البروجيكت ورقم التكنولوجي
والسبب انه لو فكرنا في المستقبل جالنا نفس البروجيكت تاني نشتغل عليه من جديد نعمله تحديث او ايا كان وقتها مش هنقدر نسجله تاني ونعتبر انه بروجيكت جديد
كلامي ممكن يبان اوضح في مثال اخر زي
لو عندنا جدول للكورسات وجدول للطلاب والعلاقة بينهم many to many وقتها لو عملنا جدول تالت فيه رقم الطالب ورقم الكورس اللي مسجل فيه واخدنا الخانتين علي انهم Composite Key وحصل في المستقبل انه طالب رسب بكورس وحب يسجل فيه تاني مش هنعرف نسجل الطالب دا او هنسجله كطالب جديد (ودا خطأ), فالحل وقتها برضو اننا نزود عمود جديد من عندنا لل primary Key لانه ال Composite key ممكن يسببلنا مشاكل في سيناريو معين زي ماوضحت دلوقتي
أفضل شرح موجود بجد علي اليوتيوب وبيدل علي الخبره الكبيره إلي عندك
تسلم يا غالي
عندي معلومات كافية عن سيكوال سيرفر ولكن بمحاضراتك المعلومة علمية وعملية بنفس الوقت , محاضرة ممتعة ومليئة بالمعلومات المفيدة والقيمة, شكراً لحضرتك
الحلقة بجد جبارة وخدت مني مجهود كبير عشان استوعبها وافهمها كويس بس، فمش متخيل كمية المجهود الي محطوط في صناعتها
شكرا جدا❤❤
مجهود رائع تشكر عليه مهندس عصام
شكرا اخي الكريم
عمل رائع بارك الله فيك مهندس عصام جزاك الله خيرا
keep going engineer Issam
بارك الله فيك و جعلها في ميزان حسناتك يا أستاذ
جزاك الله كل خير يا بشمهندس معلومات قيمة جدا جدا
جزاك الله حيرا استمر يا باشمهندس في انتظار محاضرات الدوت نت
نسال الله التوفيق وجزاكم الله خير الجزاء
لنا اجمعين صديقي العزيز
لحلقة بجد جبارة
يعطيك الف عافية على مجهودك وجعله الله في ميزان حسناتك ومن تحب
لدي ملاحظة في الدقيقة 50:00 في حل مشكلة BCNF Normal Form
وجود حقل (NPA) Provider لا يقوم بتحديد أو اشتقاق جزء من المفتاح الاساسي وهو (PA) Technology لأن ل provider هو من يعتمد
على ال Technonlogy أي ال Technology هي من خلالها نقوم بتحديد ال provider ...... وذلك لأن ل provider لديه أكثر من تكنولوجي
والتكنولوجيا الواحدة تابعة ل Provider واحد .....
// خلاصة القول هنا انك عندما اضفت حقل ل provider الى جدول Project Technonlogies لم يحصل لدينا مشكلة في BCNF
أي لم يصبح لدينا اعتمادية مثل هذه
(NPA) Provider------> (PA) Technology
حتى نطبق BCNF
// ولكن أصبح لدينا اعتمادية جزئية partial dependency كالتالي
(PA) PRJ# , (PA) Technology -------> (NPA) Provider
(PA) Technology -------> (NPA) Provider
وهنا (NPA) Provider يعتمد على جزء من المفتاح الأساسي المركب
وهنا كأننا في النموذج التاني من التطبيع 2NFيجب التخلص من ال partial dependency
فهنا يفترض أن يتم اخراج ل provider و ال Technology في جدول منفصل مع النظر للعلاقة بينهما :
- كل provider يمتلك أكثر من Technology
- كل Technology تتبع ل Provider واحد
* فهناك سيكون لدينا جدول لل Technologeis منفصل وهو موجود مسبقا وفيه المفتاح الأساسي Id يحتوي على
حقل ل ProviderId ك مفتاح أجنبي F.K وحقل TechnonlogyName
*سيكون لدينا جدول Providers منفصل ومفتاحه الاساسي Id وحقل آخر ProviderName وسيكون ال Id مفتاحا اجنبيا في جدول
ال Technonlogeis وذلك لتجنب التكرار العمودي لاسم الProvider في جدول ال Technologeis
// ملاحظتي الثانية الجدول الذي يحمل اسم TechnologyProvider كما في الدقيقة 50 :00
هناك تكرار عمودي في اسم ال provider وهذا يؤدي لمشكلة في التحديث
فعندها اخراج ال provider في جدول منفصل هو الحل وجعل مفتاحه الاساسي اجنبي في
جدول ال Technologeis الموجود مسبقا وبذلك نصل الى نفس النتيجة
وتكون الجداول جميعها في BCNF
فجميع الجدوال :
1. تحتوي على قيم منفردة Atomic value
2. كل حقل له بيانات من نفس النوع Same Data Type or Domain
3. لا يوجد حقول مركبة
4. كل جدول يحتوي على مفتاح رئيسي فريد P.K Unique
5. جميع الجداول لا يوجد بها اعتمادية وظيفية جزئية Partial functional dependency
فجميع الحقول لكل جدول تعتمد اعتمادا كليا على المفتاح الأساسي p.k
6. جميع الجداول لا تحتوي على تكرارات عمودية لا داعي لها فالتكرار فقط يكون للمفتاح الأجنبي قدر الامكان
فهنا تجنبنا ال update Anomaly فالتحديث يتم في مكان واحد في جدول منفصل ويسمع في بقية الجداول
المرتبطة عن طريق مفتاح اجنبي
7. جميع الجداول لا يوجد بها اعتمادية وظيفية متعدية transitive functional dependency
فجميع الحقول لكل جدول تعتمد فقط على المفتاح الأساسي p.k
not (NPA) ----determine----> (NPA)
only (PA) ----determine----> (NPA)
8.جميع الجداول تحقق : not (NPA) ----determine----> (PA)
9. جميع الجداول ذات العلاقة مع بعضها البعض مرتبطة عبر المفاتيح الاجنبية فهناك تكامل وتناسقية للبيانات
##################################################################################
// الجدوال النهائية//
جدول المشاريع Projects Table
(PROJ#(P.K), Title , ManagerId(F.K), StartDate , InitialCost , Parked ,CRN#(F.K))
##################################################################################
جدول المدراء Managers Table
(Id(P.K), Email)
##################################################################################
جدول الشركات Companies Table
(CRN#(P.K), CompanyName)
##################################################################################
جدول مزودي التقنيات Providers Table
(Id(P.K), ProviderName )
##################################################################################
جدول التقنيات Technologeis Table
(Id(P.K), TechnologyName , ProviderId(F.K))
##################################################################################
جدول التقنيات_المشاريع Projects_Technologeis Table
(PROJ#(F.K), TechnologyId(F.K))
المفتاحان الأجنبيان معا هما مفتاح اساسي مركب Composite primary Key
##################################################################################
أنا سعيد اني لقيتك عن طريق لينكدين أشكرك للشرح
شكرا على وقتك ومجهودك
تسلم اخي
بارك الله فيك وجزاك خيراً وزادك علماً🫶🏻
الله يفتح عليك
الله عليك يا مبدع ... بتشرح بطريقة رائعه سهله
تسلم يا برنس
جزاك الله عنا خير يا باشمهندس
عظمه على عظمه والله... تسلم يا هندسه علي الابداع إللي اثريت بيه المحتوى العربي ❤🌹
والله انت اللي غظمة على غظمة غلى غظمة ... نسال الله التوفيق وجزاكم الله خير الجزاء
جميل مهندس عصام ، شكرا
شرح عالمى كالعادة... جزاك الله كل خير ❤❤❤
محاضرة قيمة جدا
شكرا شكرا
شرح ابدااااااعي
شكرا اخي ان شاء الله نكون عند حسن الظن
تسلم ايد حضرتك يا هندسه
استمر مستني اللي جي
باذن الله
ربنا يباركلك والله يابشمهندس فعلا والله
انا مكنتش متخيل كمية المعلومات والاستفادة اللى استفدتها من الدرس ده
وفعلا المعلومات دى انا مشوفتهاش ف الكورسات المدفوعة ربنا يكرمك ويجازيك كل خير والله
كالعادة شرح ممتاز وبسيط دام تألقك ♥
بارك الله فيكم
وفيك اخي الحبيب
wish you all the best
ربنا يبارك فيك و يجازيك خير على تعبك دا محتوى استثنائي ❤❤❤
الدقايق الأولى تحكي نفس القصة الحاصلة معي وتعبت المطور معي لكن حمد الله كان صبور
ابداااااع
تسلم علي المحتوي الرائع
شكرا اخي بارك الله فيك
جزاك الله الخير استاذ❤❤..
الله يعطيك العافية
انت فنان . ربنا يبارك فيك وفي علمك . مبدع
ممتاز الله يبارك فيك ننتظر المزيد
ربنا يبارك فيك يابشمهندس
جميل جدا! شكرا لك
شكرا
جزاك الله خيراَ أستاذ.
محتوى عالي ما شاء الله، استمرأستاذ.
شكراا اخي وبارك الله بك
such a great content. I am lucky to find you
شرح ممتاز ربنا يكرمك ويوفقك
شرح اكثر من رائع..
ياريت حضرتك تتطرق لجزئية ال
Collation وتفاصيلها ومشاكلها
و ال
Compatibility level
وعند نقل الداتا ببس تم انشاءها على سيرفر بفيرجن معين الى سيرفر اخر بفيرجن اخر مختلف وكيف يمكن تفادي المشاكل او معالجة المشكلة في حال وجودها؟
تحياتي استاذنا الكريم..
شكرا عزيزي اخذت الملاحظة وان شاء الله يكون شرح لهذه الامور في قادم الايام
جزاك الله خير والى الامام .....
متابعينك اول ب اول
جازانا واياك كل الخير
موفق يارب دايما
بارك الله فيك ونفع بك
جزاكم الله خيراً
ممكن بعد اذنك يابشمهندس عصام ترشح لنا كتاب يكون مرجع نذاكر منه المعلومات دي وتفاصيل اكتر وجزاك الله عنا كل خير
انا أحييك 🎉
❤ SQL SERVER DB AND SSMS ❤
جزاك الله خيرا..
ربنا يزيدك من علمه يا هندسه بستفيد من حضرتك كل فديو عن اللي قبله ❤❤
thank you. amazing content as always 🙏
الله يجزيك الخير
شكرا على مجهودك
جزاك الله خيرا
very informative
Glad you liked it
جزاك الله خير
عظييييييييييم
شكرا ...
جزاك الله خيراا
جميل، استمر
فى ملاحظة بسيطة بلاش كلمة اخلق table
ممكن ننشئ
ربنا يباركلك
الله يسعدك ويعطيك الف عافية.
انا متخرج جامعة هندسة معلوماتية بسوريا .كمية المعلومات الجديدة يلي بحياتي مو سمعانن محترمة جدا .
انا المفروض اني شاطر بلغة الsql .
بهلق اكتشفت انو مافي اساسات بلمرة.
الله يستر من الفيدوهات يلي جاي يمكن قلك انا مو شاطر بلمرة 😂
الحمد لله وربي يوفقك
الحلقة تحتاج لتركيز شديد كمية المعلومات رهيبة 😊، بارك الله فيك
بشمهندس
بعد اذنك هى ال Repliction
اللى موجوده دى وظيفتها ايه واشتغل بيها متى وازاى ؟؟؟
شرح ممتاز احسنت 👏👏ياريت يبشمهندس لو ف تكمله للكورس تنزله قريب ✨
ان شاء الله في المرحلة الحالية تم رفع 6 دروس ل database
وفي قادم الايام وعند عمل المشروع سنقوم برفع حلقات جديدة على هذه القائمة
thanks so much
17:38 يفترض تبقي candidate key صح ام خطأ ؟
ممكن اعرف ماهو الجهاز او طريقة الشرح وكتابة علي الشاشة
ما شاء الله تسلم على الشرح المفصل والرائع وسؤال لو سمحت في حال عندي قاعدة بيانات وحبيت انقلها الى سيرفر ثاني ما هي أفضل طريقة لعمل ذلك وهل يشترط نقل ملف log ايضا؟
باذن الله في الدروس القادمة سيتم استهداف هذه المواضيع
@@Metigator
ان شاء الله وبالتوفيق يا رب بس ممكن اعرف حضرتك من وين جبت قالب البوربوينت اللي شغال عليه؟
@@adnangharbi8982 microsoft whiteboard موجود عندك في windows 10 او حمله من windows store
@@Metigator
شكرا لك
just adding comments l2ano btstahel ya mohandesna
nice nice nice
Thanks
عندي سؤال ف الدرس هو في مثال ال 3NF ازاي في تكرار في اسم الشركة بالرغم ان من شروط ال 2NF ان ميحصلش vertical redundancy وده مش تشابه اسماء لأن هي نفس الشركة
لو كان النظام عندك انت متاكد انه نفس الشئ معناه اعتبره تكرار
نفس الشئ على اسم الشارع مثلا في اميريكا وكندا ممكن تلاقي نفس اسم الشارع في اكثر من مقاطعة
فكله بيعتمد على النظام اللي انت بتبننيه والسياق العملي له
مهندسنا بارك الله فيك
كمبتدئ أول مرة اعرف شيئ عن الداتابيز عموماً
هل الكورس ده كافي ؟
منتظر رد حضرتك يا بشمهندس
امكانية عالية
شكرا اخي
ربنا يجازيك خير على مجهودك يا بشمهندس عصام.... ولكن انا تبعت اول فيديوهين وحاسس ان كثير من الاشياء مفهمتهاش كويس فهل الافضل ان يكون عندي خلفيه عن السيكوال وبعد كده اخد الكورس ولا ده يناسب ايضا اللي معندوش اي خلفيه لاني فيه مصطلحات كتيره اتقالت مفهمتهاش او معدتش عليا قبل كده وجزاكم الله خيرا
بالعكس السلسة بتبدأ من تحت ، ولكن لو عندك مشكلة في المتابعة انصحك بمتابعة كورس
Harvard CS50
: )
شكرا
بارك الله فيك
جزاكم الله خيرا و بارك الله فيكم
جزاك الله كل الخير
جزاكم الله خيرا
جزاك الله خيرا