تقييم الموضوع :
  • 1 أصوات - بمعدل 5
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] [طلب] كود حذف السجل الحالي+جميع السجلات
#1
Smile 
بسم الله الرحمن الرحيم

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

اخوتي احبتي اساتذتي الكرام حياكم الله وبياكم وللجنة سهل الله خطاكم 
الكتاب واضح من عنوانه  Blush
محتاج كود لحذف البسجل الحالي على ان يعمل على الحذف السجل وتحديث قاعدة البيانات مباشرة دون الحاجة الى اغلاق واعادة تشغيل البرنامج لتنفيذ الامر.
بالاضافة الى كود لحذف جميع السجلات + كود لإعادة ترقيم السجلات لان مثل ماتعرفون حضراتكم انه عند حذف سجل معين ليكن مثلا رقم 2 سيكون مكانه فارغ اي التسلسل سوف يصبح 1 3 4 5 وهكذا ولتلافي الامر نعيد ترقيم السجلات من جديد 
تفضلوا هذا المثال جزاكم الله خير 

بالأنتظار جزاكم الله خير
الرد }}}}
تم الشكر بواسطة:
#2
اخي الكريم اكواد الحذف يتم تنفيذها فور اجرائها  .. لكن الذي سبب لك الارباك هو كون اجراء جلب البيانات ليس مستقلا
فلقد كتبت عدة امثلة استخدمها لكن يبدو انك لم تفطن لها
مثلا اجراء gd
نكتب
PHP كود :
private sub gd()

هنا اكواد جلب البيانات وربطها
end sub 

PHP كود :
وهنا في اي حدث مثلا حدث تحميل الفورم نكتب فقط gd() 
فبعد الاضافة او الحذف او التعديل تنادي الاجراء gd() هذا هو الحل
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
#3
(10-08-15, 01:14 AM)سعود كتب : اخي الكريم اكواد الحذف يتم تنفيذها فور اجرائها  .. لكن الذي سبب لك الارباك هو كون اجراء جلب البيانات ليس مستقلا
فلقد كتبت عدة امثلة استخدمها لكن يبدو انك لم تفطن لها
مثلا اجراء gd
نكتب
PHP كود :
private sub gd()

هنا اكواد جلب البيانات وربطها
end sub 

PHP كود :
وهنا في اي حدث مثلا حدث تحميل الفورم نكتب فقط gd() 
فبعد الاضافة او الحذف او التعديل تنادي الاجراء gd() هذا هو الحل
السلام عليكم ورحمة الله وبركاته 
تقريباً موجود مثل ماقلت دالة جلب البيانات  Blush
لكن المشكلة تم عرض البيانات عن طريق الكمبوبوكس :Smile
هل يتم الحذف من الكومبوبوكس ام من القاعدة مباشرةً
جزاكـ الله خير
الرد }}}}
تم الشكر بواسطة:
#4
اللي انصح بيه اخواني .. في حال التجربة والتعلم ان لا يتطرقوا لامثلة كبيرة معقدة وانما فقط اشياء صغيرة حتى يتمكن من حل كل الاشكالات التي تواجهه بعد ذلك يستطيع تضخيم مشروعه الى اكبر ما يمكن.
اطلعت على المثال المرفق (لا ادري يبدو لاني البارحة مرهق) فلم اتمكن من الاستمرار بالنظر اليه.
باذن الله اما سعود او غيره يكتب الحل ان سهل الله ويسر.
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة: مبرمج بلا حدود
#5
يفترض أن لا يتم إعادة ترقيم السجلات، لأنه عند حذف سجل قديم مثلاً ... ربما يكون هناك سجلات في جداول أخرى مرتبطة بها السجل اعتماداً على رقم ID السجل، وإعادة الترقيم سيخلط السجلات، بحيث سترتبط بالسجل الخطأ.
الرد }}}}
تم الشكر بواسطة: سعود , مبرمج بلا حدود
#6
(10-08-15, 12:03 PM)أبوبكر سويدان كتب : يفترض أن لا يتم إعادة ترقيم السجلات، لأنه عند حذف سجل قديم مثلاً  ... ربما يكون هناك سجلات في جداول أخرى مرتبطة بها السجل اعتماداً على رقم ID السجل، وإعادة الترقيم سيخلط السجلات، بحيث سترتبط بالسجل الخطأ.

أحسنت اخي .. بارك الله بيك .. هذا امر قليل من يفطن له.

إقتباس :لكن المشكلة تم عرض البيانات عن طريق الكمبوبوكس
لا فرق اخي الكريم فانت حين تنفذ اي اجراء فانك ستطلب الاجراء الرئيسي الذي يجلب البيانات الى الادوات ومن بينها الكومبوبوكس.
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة: مبرمج بلا حدود , أبوبكر سويدان
#7
السلام عليكم إخواني الأعزاء ورحمة الله وبركاته
ما تفضل به الأخ أبو بكر سويدان هو عين المنطق في التعامل مع السجلات في قواعد البيانات، ولتلافي هذا الأمر يمكن إدراج حقل جديد في الجدول بعنوان Active مثلا ويكون نوع البيانات إما Boolean أو رقمي ونجعل القيمة الإفتراضيه (1) وعند حذف سجل ما يرتبط به سجلات أخرى فإنه سوف يحول القيمة من 1 إلى 0 ، ويكون ذلك من خلال استبدال جملة التنفيذية Delete بـ Update وبعد ذلك يتم استدعاء أو جلب البيانات عند الحدث Load للنموذج بإضافة شرط إلى جملة Select ويكون Where Active =1.
أما قاعدة بيانات SQL فيمكن استخدام Trigger Instead of Delete فإنها أيضا تؤدي نفس الغرض.
أما بالنسبة للكومبوبوكس فأنا مع رأي الأخ أبو بكر سويدان لأنه أعود وأكرر المنطق البرمجي الأدبيات البرمجية القواعد المبادئ سميها ما شئت يجب أن نراعيها.

للأسف لم تفتح قاعدة البيانات عندي ولكن لقد اطلعت على تصميم المشروع وتبين لي أنك قد قمت بالإعلان عن جملة متغيرات منها CurrencyManager التي لها علاقة بالتعامل مع السجلات (التنقل بين السجلات / الحذف / التعديل ...)
أنظر أخي العزيز، لو قمنا بالإعلان عن متغير Dim cm as Currencymanager ثم استخدمنا نفس المتغير لحذف البيانات فأين المشكلة في ذلك، إليك الكود التالي :
حذف السجل الحالي :
PHP كود :
cm.RemoveAt(cm.Position
حذف جميع السجلات:
PHP كود :
For as integer 0 to cm.count -1
cm
.RemoveAt(i)
next 

أما بالنسبة للتحديث فقد وجدت أيضا من جملة المتغيرات CommandBuilder من خلال هذا الكائن يمكن تحديث البيانات بعد الحذف فأين المشكلة في ذلك ؟
فعلى سبيل المثال تحديث البيانات بعد الحذف مباشرة :
PHP كود :
cm.RemoveAt(cm.Position)
cb = new OledbCommandBuilder(da)
da.Update(dt

وهكذا مع حذف جميع البيانات أيضاً.
والسلام عليكم ورحمة الله وبركاته
الرد }}}}
#8
أضيف إلى ما تفضل به الأخ khodor1985 ... أنني في برامجي لا أستعمل الحذف إطلاقاً، بل أخفي السجلات، لأنه مع الخبرة ومعرفة طبيعة الزبائن ... ستندم على الحذف.

أنشيء حقل خاص بالإظهار والإخفاء، وعلى حسب طبيعة العمل المطلوب، مع إمكانية الاسترجاع.



هذه الطريقة وما تحتويه من متاعب أفضل من الحذف والمشاكل المترتبة عليه.
الرد }}}}
تم الشكر بواسطة: khodor1985 , khodor1985 , مبرمج بلا حدود
#9
(13-08-15, 02:48 AM)khodor1985 كتب : السلام عليكم إخواني الأعزاء ورحمة الله وبركاته
ما تفضل به الأخ أبو بكر سويدان هو عين المنطق في التعامل مع السجلات في قواعد البيانات، ولتلافي هذا الأمر يمكن إدراج حقل جديد في الجدول بعنوان Active مثلا ويكون نوع البيانات إما Boolean أو رقمي ونجعل القيمة الإفتراضيه (1)  وعند حذف سجل ما يرتبط به سجلات أخرى فإنه سوف يحول القيمة من 1 إلى 0 ، ويكون ذلك من خلال استبدال جملة التنفيذية Delete  بـ Update وبعد ذلك يتم استدعاء أو جلب البيانات عند الحدث Load للنموذج  بإضافة شرط إلى جملة Select ويكون Where Active =1.
أما قاعدة بيانات SQL فيمكن استخدام Trigger Instead of Delete فإنها أيضا تؤدي نفس الغرض.
أما بالنسبة للكومبوبوكس فأنا مع رأي الأخ أبو بكر سويدان لأنه أعود وأكرر المنطق البرمجي الأدبيات البرمجية القواعد المبادئ سميها ما شئت يجب أن نراعيها.

للأسف لم تفتح قاعدة البيانات عندي ولكن لقد اطلعت على تصميم المشروع وتبين لي أنك قد قمت بالإعلان عن جملة متغيرات منها CurrencyManager التي لها علاقة بالتعامل مع السجلات (التنقل بين السجلات / الحذف / التعديل ...)
أنظر أخي العزيز، لو قمنا  بالإعلان عن متغير Dim cm as Currencymanager ثم استخدمنا نفس المتغير لحذف البيانات فأين المشكلة في ذلك، إليك الكود التالي :
حذف السجل الحالي :
PHP كود :
cm.RemoveAt(cm.Position
حذف جميع السجلات:
PHP كود :
For as integer 0 to cm.count -1
cm
.RemoveAt(i)
next 

أما بالنسبة للتحديث فقد وجدت أيضا من جملة المتغيرات CommandBuilder من خلال هذا الكائن يمكن تحديث البيانات بعد الحذف فأين المشكلة في ذلك ؟
فعلى سبيل المثال تحديث البيانات بعد الحذف مباشرة :
PHP كود :
cm.RemoveAt(cm.Position)
cb = new OledbCommandBuilder(da)
da.Update(dt

وهكذا مع حذف جميع البيانات أيضاً.
والسلام عليكم ورحمة الله وبركاته

وعليكم السلام ورحمة الله وبركاته 
جزاكـ الله خير اخي باركـ الله فيكـ 
لكن يعترض على المتغير (cb) 
وفقكـ الله

(13-08-15, 03:14 AM)أبوبكر سويدان كتب : أضيف إلى ما تفضل به الأخ khodor1985 ... أنني في برامجي لا أستعمل الحذف إطلاقاً، بل أخفي السجلات، لأنه مع الخبرة ومعرفة طبيعة الزبائن ... ستندم على الحذف.

أنشيء حقل خاص بالإظهار والإخفاء، وعلى حسب طبيعة العمل المطلوب، مع إمكانية الاسترجاع.



هذه الطريقة وما تحتويه من متاعب أفضل من الحذف والمشاكل المترتبة عليه.

السلام عليكم ورحمة الله وبركاته 
حياكـ الله خير 
جزاكـ الله خير ممكن تعلمني هذه الطريقة كيفية اخفاء البيانات واستدعائها فيما بعد وفقكـ الله
الرد }}}}
تم الشكر بواسطة:
#10
إقتباس :السلام عليكم ورحمة الله وبركاته 
حياكـ الله خير 
جزاكـ الله خير ممكن تعلمني هذه الطريقة كيفية اخفاء البيانات واستدعائها فيما بعد وفقكـ الله
بعد اذن الاخ .. يقصد بالاخفاء اي تضع عمود من نوع نعم/لا  باسم مثلا isshow  وعند الاستعلام تشترط ان القيمة نعم.
وعند الاخفاء تضع القيمة لا.
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة: مبرمج بلا حدود , أبوبكر سويدان


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  تعديل بيانات حقل في جميع السجلات aftfm 2 270 31-05-16, 06:32 PM
آخر رد: Sajad
  [Acces2010] نقل عدد من السجلات من نموذج لاخر gamarat 2 276 28-04-16, 10:43 PM
آخر رد: amgad525
  حساب عدد السجلات و الرقم المتكرر يحسب كأنه سجل واحد ahmed_elwerfalli 0 244 28-12-15, 06:55 PM
آخر رد: ahmed_elwerfalli
Exclamation [VB.NET] مشروع فيجوال بيسيك دوت نت مع قاعدة بيانات اكسس 2007 يعمل على جميع انظمة التشغيل eng.bassel 5 720 16-12-15, 11:35 PM
آخر رد: boudyonline
  عدد السجلات فى الوضع المتصل صالح الشنطى 5 340 08-12-15, 01:55 AM
آخر رد: khodor1985
  [VB.NET] مشكلة حفظ السجلات بقاعدة بيانات kalotibi 2 509 13-08-15, 04:34 PM
آخر رد: مبرمج بلا حدود
  حفظ السجلات عن طريق الداتا قريد فيو aftfm 2 1,220 06-02-15, 11:46 PM
آخر رد: ahmed saba
  اضافة السجلات المختلفة من جدول الي اخر atefkhalf2004 9 1,629 07-06-14, 08:13 PM
آخر رد: atefkhalf2004
  كيف اعدل على جميع السجلات مره واحدة aftfm 2 551 29-05-14, 03:40 PM
آخر رد: aftfm
  البحث عن سجل معين في DATA Grid view السجل الاخر تصاعدي الدريساوي 1 1,822 27-05-14, 01:44 AM
آخر رد: الدريساوي

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم