منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : مساعده في قاعدة بيانات بالفيجوال
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم 
في المرفقات البرنامج اللي اشتغل عليه 
سويت كل شئ تمام بس في الحذف والاضافه والتعديل 
ابي هذه الاوامر اذا سويتها تغير بقاعدة البيانات الاساسيه 
انا بالكود خليتها تعدل على الجريد فيو بس ماعرفت اخليها تعدل على قاعدة البيانات الاساسيه الموجوده  Huh Huh
اولا
يجب التدقيق في نوع بيانات كل عمود،
فالرقم يتم تحديده ب int
والنصي يتم تحديده ب nvarchar وليس nchar
والعملة ب money
والتاريخ فقط ب date وليس datetime الا إذا كان المقصود أن يشمل الوقت

ثانيا
القيام بتعديل خصائص الروابط وذلك فتح Diagram1 في قاعدة البيانات
ثم تحديد كل رابط ومن خلال خصائصه يتم توسعة الخاصية INSERT And UPDATE
فتظهر لها خاصيتين Delete Rule وUpdate Rule يتم تغيير قيمتهما إلى Cascade
يتم تكرار العملية لكل رابط
ملاحظة هامة جداً ****
وهي أنه الجدول Orders مرتبط به الجدول OrderDetails،
وفي حالة الحذف سيتم أيضاً حذف أي سطر في جدول OrderDetails مرتبط بأي سطر في جدول Orders الذي تم حذفه،
في حالة عدم الرغبة في ذلك فيتم بدلاً من وضع Cascade يتم وضع No Action،
ولكن هنا لا يمكن حذف أي سطر في جدول Orders ارتبط به سطر في جدول OrderDetails.

ثالثا
عند الضغط على Insert وبعد القيام بتعبئة البيانات الجديدة لابد من ضغط زر update.


لاحظت في جدول Orders أن هناك عمود باسم CustomerID ليس له جدول مرتبط به.


التعديل في المرفقات
(23-04-17, 09:13 PM)عبـدالله كتب : [ -> ]اولا
يجب التدقيق في نوع بيانات كل عمود،
فالرقم يتم تحديده ب int
والنصي يتم تحديده ب nvarchar وليس nchar
والعملة ب money
والتاريخ فقط ب date وليس datetime الا إذا كان المقصود أن يشمل الوقت

ثانيا
القيام بتعديل خصائص الروابط وذلك فتح Diagram1 في قاعدة البيانات
ثم تحديد كل رابط ومن خلال خصائصه يتم توسعة الخاصية INSERT And UPDATE
فتظهر لها خاصيتين Delete Rule وUpdate Rule يتم تغيير قيمتهما إلى Cascade
يتم تكرار العملية لكل رابط
ملاحظة هامة جداً ****
وهي أنه الجدول Orders مرتبط به الجدول OrderDetails،
وفي حالة الحذف سيتم أيضاً حذف أي سطر في جدول OrderDetails مرتبط بأي سطر في جدول Orders الذي تم حذفه،
في حالة عدم الرغبة في ذلك فيتم بدلاً من وضع Cascade يتم وضع No Action،
ولكن هنا لا يمكن حذف أي سطر في جدول Orders ارتبط به سطر في جدول OrderDetails.

ثالثا
عند الضغط على Insert وبعد القيام بتعبئة البيانات الجديدة لابد من ضغط زر update.


لاحظت في جدول Orders أن هناك عمود باسم CustomerID ليس له جدول مرتبط به.


التعديل في المرفقات

وضحت لي الفكره الان اكثر يعطيك العافيه اخوي 
صحيح جربت الحذف لم يتم حذف اي صف مرتبط ب OrderDetails 
لكن الاضافة الى الان لم تضبط ابي اضيف اي صف يضاف فقط في الجدول عند عمل ديباقنيج لكن مايضيف شيئ في قاعدة البايانات الاساسية  Huh
تتم الإضافة كما أوضحت في ثالثا
الطريقة هنا يتم الضغط على Insert ثم إداخل البيانات ثم الضغط على update

إذا تم التعديل في الكود ستلاحظ أن قاعدة البيانات عادة كما كانت وكأن شيئاً لم يعدل أو يحذف أو يضاف وهذا طبيعي أثناء العمل من داخل المشروع.
(23-04-17, 10:06 PM)عبـدالله كتب : [ -> ]تتم الإضافة كما أوضحت في ثالثا
الطريقة هنا يتم الضغط على Insert ثم إداخل البيانات ثم الضغط على update

إذا تم التعديل في الكود ستلاحظ أن قاعدة البيانات عادة كما كانت وكأن شيئاً لم يعدل أو يحذف أو يضاف وهذا طبيعي أثناء العمل من داخل المشروع.

ايه مشيت على نفس خطواتك لكن تضاف فقط في الجدول الموجود في الفورم انا اريد التغيير ايضا في قاعدة البيانات 
ممكن من الصورة تفهم ماذا اقصد  Sad
إن الاضافة أو التعديل أو الحذف لا تتم في ملف قاعدة البيانات التي في المشروع ولكن تتم في نسخة ملف قاعدة البيانات في مجلد Debug والذي يظهر بياناته في الجدول الموجود في الفورم.
(23-04-17, 10:18 PM)عبـدالله كتب : [ -> ]إن الاضافة أو التعديل أو الحذف لا تتم في ملف قاعدة البيانات التي في المشروع ولكن تتم في نسخة ملف قاعدة البيانات في مجلد Debug والذي يظهر بياناته في الجدول الموجود في الفورم.

يعني من المستحيل ان تتغير قاعدة البيانات في المشروع الاساسي ؟ 
فقط تتم التغيرات في النسخه ؟
هل من الممكن ان ارى التغيرات في مكان اخر غير الفورم ؟
يمكنك من مجلد debug نسخ ملف البرنامج exe مع ملف قاعدة البيانات ووضعهم في مجلد جديد خارج المشروع وتشغيله.
(23-04-17, 10:12 PM)a_abdullah كتب : [ -> ]
(23-04-17, 10:06 PM)عبـدالله كتب : [ -> ]تتم الإضافة كما أوضحت في ثالثا
الطريقة هنا يتم الضغط على Insert ثم إداخل البيانات ثم الضغط على update

إذا تم التعديل في الكود ستلاحظ أن قاعدة البيانات عادة كما كانت وكأن شيئاً لم يعدل أو يحذف أو يضاف وهذا طبيعي أثناء العمل من داخل المشروع.

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

انا معي نفس المشكله عملة الاكواد صح وقمة بالربط بقاعدة البيانات صح
بس عند التنفيذ وعند زر الاضافه يضيف صح فdatagredvio فقط وعندما ادخل الاى قاعدة البيانات لا اجد ما قمت باضافته
(23-04-17, 09:13 PM)عبـدالله كتب : [ -> ]اولا
يجب التدقيق في نوع بيانات كل عمود،
فالرقم يتم تحديده ب int
والنصي يتم تحديده ب nvarchar وليس nchar
والعملة ب money
والتاريخ فقط ب date وليس datetime الا إذا كان المقصود أن يشمل الوقت

ثانيا
القيام بتعديل خصائص الروابط وذلك فتح Diagram1 في قاعدة البيانات
ثم تحديد كل رابط ومن خلال خصائصه يتم توسعة الخاصية INSERT And UPDATE
فتظهر لها خاصيتين Delete Rule وUpdate Rule يتم تغيير قيمتهما إلى Cascade
يتم تكرار العملية لكل رابط
ملاحظة هامة جداً ****
وهي أنه الجدول Orders مرتبط به الجدول OrderDetails،
وفي حالة الحذف سيتم أيضاً حذف أي سطر في جدول OrderDetails مرتبط بأي سطر في جدول Orders الذي تم حذفه،
في حالة عدم الرغبة في ذلك فيتم بدلاً من وضع Cascade يتم وضع No Action،
ولكن هنا لا يمكن حذف أي سطر في جدول Orders ارتبط به سطر في جدول OrderDetails.

ثالثا
عند الضغط على Insert وبعد القيام بتعبئة البيانات الجديدة لابد من ضغط زر update.


لاحظت في جدول Orders أن هناك عمود باسم CustomerID ليس له جدول مرتبط به.


التعديل في المرفقات

Please see attached , hope it is ok for you