10-04-19, 09:54 AM
(09-04-19, 03:06 PM)maxruined كتب : حرفياً .. من اكتر الناس اللى بتشرح بطريقه رهيبه .. شكراً جداً
بس فيه مشكلة اخيره
وهى اني لما عملت جدول جديد سميته S.N وحددته بمفتاح علشان ميعملش تكرار للارقام
بس المشكلة انى لو حذفت سطر فى النص مثلاً عندى ارقام من 1 الى 10 لو حذفت الرقم 4 هلاقي زي كدا
1.2.3.5.6.7.8.9.10 من غير رقم 4 .. كنت عايزه يعمل ابديت للارقام بعد ما امسح اى سطر من الداتا بيز
وتانى مره الف مليون شكر
الشكر لله والحمد لله
والحمد لله على كل حال
هذه شهادة اعتز بها
بخصوص عمود الترقيم التلقائي
لا تحتاج الى استخدامه كا استخدام رئيسي فى العرض
او الاستخدام العام فوجود الترقيم التلقائي فقط للتعامل مع التعديل والحذف فقط
بمعنى لنقول ان لديك جدول يخص المستخدمين فطبيعة الحال الاعمدة ستكون
اسم المستخدم - كلمة المرور - ملاحظات [ كمثال ]
فالان عند انشاء الجدول سيكون
PHP كود :
user-pass-note
فبكدة تكون قمت بانشاء الاعمدة الرئيسية
مضافاً عليهم عمود id للترقيم التلقائي
عند الاستعلام سيتم عمل الاستعلام العادي اذا كان من خلال * او تحديد اسماء الاعمدة
ولكن عند عرضها مثلاً فى الداتا جريد او ما شبه ولتجنب الترقيم كما تقول
سيتم استخدام مثل كود التالى
لنقول ان بالبداية ان كود الاستعلام بهذا الشكلكود :
SELECT * FROM usersوتم تعريف قيمة الاستعلام الى DT
وطبعاً كما قلنا كمثال ان الاستعلام سيتم جلب كلاً من
كود :
id-user-pass-noteفلاحظ هنا كود ارسال القيمة DT الى DataGridView
كود :
dataGridView1.DataSource = DT;فقط اسفل هذا السطر قم باضافة هذا الكود
كود :
int ii = 0;
foreach (DataGridViewRow row in dataGridView1.Rows)
{
ii++;
row.Cells["id"].Value = ii;
}ستجد ان الترقيم فى داتا جريد مهما كان عملية البحث او الفلتر
ان الترقيم يبداء من 1 وما اعلى وليس لقيمة id فى جدول قاعدة البيانات
تذكر عند اتمام عملية التعديل والحذف
لا تقوم باخذ القيمة id الداتا جريد فهنا ستحتاج الى القيمة الفعلية للرقم التسلسلى من DT
لان كما انت قلت من الممكن ان يكون الترقيم فى قاعدة البينات بهذا الشكل
كود :
1 - 2 - 4 - 5 - 6حيث ان رقم 3 غير موجود ولكن فى الداتا جريد بهذا الشكل
كود :
1 - 2 - 3 - 4 - 5فطبعاً اذا كنت تريد التعديل على رقم 3 كما فى الداتا جريد فهو غير موجود
لان الرقم الصحيح للترقيمة بقاعدة البيانات هى 4 وليس 3
فهنا سيتم عمل التالى
فى حدث الكل بالداتا جريد او حسب ما تريد لاى حدث فى الداتا جريد
استخدم الكود التالىكود :
id = DT(e.RowIndex)("id");ولا تنسي ان تضع هذا التعريف خارج نطاق اى حدث
كود :
int id;بكده كلما تم تحديد اى سطر من الداتا جريد
من خلال اى خلايا فسيتم ارسال قيمة ID لهذا البيان الفعلى الى المعرف ID المنشئ
فبكده عند اتمام التعديل او الحذف وما شبه سيتم استخدام
كود :
WHERE id = " + idاتمنى ان تكون الصورة وضحت كاملاً
والشرح يكون كاملاً لما قد يخطر ببالك
تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]
ساهم دائماً فى
لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله
▼ شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]
ساهم دائماً فى
لكل من يقوم بالمساهمةفى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله
▼ شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية

