الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

بداية الترقيم التلقائى من رقم 1 بعد الحذف

بدأه rokaphp في 7 مارس 2008 · 11 رد · 1,684 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

هل ممكن ان يبدأ الترقيم التلقائى فى جدول معين برقم ( 1 ) بعد حذف جميع البيانات منه ؟

وشكرا

#2

هذا لمستخدمى DATA CONTROL

Dim I As Integer
For I = 1 To Data1.Recordset.RecordCount
Data1.Recordset("SID") = I
Data1.Recordset.Update
Data1.Recordset.MoveNext
Next I

اما مستخدمى الاكواد وتعب القلب فالكود ده لهم

If rs.State = 1 Then rs.Close
rs.Open "SELECT * FROM A1 ", cn, 1, 3
Dim I As Integer
For I = 1 To rs.RecordCount
rs!SID = I
rs.Update
rs.MoveNext
Next I

اخى لابد ان تعرف ان الحقل المستخدم فى ذالك ليس ترقيم تلقائى

والله الموفق اعتقد الكود مش محتاج شرح ؟؟

00
 

فاضى 

 

00

#3

الكود لا يعمل :(

#4

ممكن تبعة برنامج صغير لقدر افيدك من عليه

00
 

فاضى 

 

00

#5

ممم

اذكر هناك trigger في sql server تقوم بهذه العملية ..

ولكن اذا تبي تريح مخكـ أحذف الحقل واعمل اضافة له من جديد:) ..

موفق حبيبي ..

#6

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

roka_tarkem.zip

#7

up

#8

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

الطريقة التي اعرفها في الاكسس هي حذف الحقل واضافته من جديد .

لكن بامكانك البحث في قسم الاكسس فمن الاكيد تم طرح هذا الموضوع

#9

ممكن تخلي الحقل رقم وتعمل اللي انته تريده بالكود .. تحياتي

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

الطريقة التي اعرفها في الاكسس هي حذف الحقل واضافته من جديد .

لكن بامكانك البحث في قسم الاكسس فمن الاكيد تم طرح هذا الموضوع

فعلاً أخي ، هناك حلول كثيرة في قسم الـ Access فمن المفضل اللجوء الي المكان المناسب !!

علي العموم ، الأفكار كثيرة ، ولكن الفكرة التي أفضلها هي إجراء تعديل علي الجدول بضبط نوع الحقل الي Counter بحيث أن يبدأ من جديد !!!

أنظر الكود التالي :

Cn.Execute "Alter Table Emp Alter Column Emp_ID Counter"

بس يجب أن تعلم جيداً أن هذا الكود ينفذ مرة واحدة أثناء عملية حذف سجل ، وليس ينفذ كل مرة أثناء عملية الحذف بل ينفذ في حالة الحصول علي عدد سجلات بقيمة صفر ، أي إذا كان عدد السجلات الموجودة بالجدول قيمتها صفر ، في هذه الحالة تبدأ عملية الترقيم من جديد خصوصاً إذا كان هذا الحقل مفتاح رئيسي Primary Key .

مثال :

If(Rs.State = 1)Then Rs.Close
Rs.Open "Select Count(*) From Emp",Cn
If(Rs(0) = 0)Then
	Cn.Execute "Alter Table Emp Alter Column Emp_ID Counter"
	Message('تم إعادة ترقيم المفتاح الرئيسي للجدول');
End If

شكراً

لا تخلط ما بين شخصيتي وأسلوبي .. فشخصيتي هي

ما أنا عليه وتحت تصرفي .. وأسلـوبي يعتمد عليـك

أنت وتصرفاتك

ولحظاتي صمت... وصمـت لحظاتي كلام ... كلامه

اشد آلام ... فصمتي أنا عنوان

عصر التكنولوجيا المعلوماتية(مدونتي الخاصة)

My FaceBook

#11

شكرا

كلمات اتعبت الملائكة في كتابة الأجر فذهبوا وشكوا إلى ربهم .... ماذا يفعلون

فقال لهم سبحانه وتعالى اطووها بصحائفها وضعوها تحت عرشي فتبقى حسناتها إلى يوم القيامة الله اكبر

(( اللهم لك الحمد كما ينبغي لجلال وجهك وعظيم سلطانك))

#12

اخي الكريم

بالنسبة لاعادة الترقيم يدويا يتم ذلك بالطريقة التالية :

افتح قاعدة البيانات أكسيس ثم اذهب الى قائمة ادوات واختر أدوات مساعدة لقواعد البيانات > ضغط واصلاح قواعد البيانات

أما برمجيا فيتم ذلك باستخدام الأمر compactDatabase الذي توفره مكتبه ADO وستجد مثال في توقيعي في برنامج مصانع الطابوق في انشاء نسخه اختياطية لقاعدة البيانات

تحياتي

تم تعديل هذه المشاركة بواسطة omani في 13 مارس 2008 في 21:47

OMANI FOR EVER

-------------------------------------------------

post-12787-12780191801974.jpg

-------------------------------------------------

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…