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

كيف يمكن ترتيب الاعداد في قواعد البيانات

بدأه memoon في 9 يناير 2007 · 7 رد · 902 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

لدي برنامج أريد أن الأرقام التي في الجدول no ترتب من تلقائيا عندما أنقر على الزر حفظ وعند عمل البرنامج من خلال الكود

لا أريد طريقة الجدول ترقيم تلقائي التي في الأكسس

أرجو ان كلامي واظح

تم تعديل هذه المشاركة بواسطة memoon في 9 يناير 2007 في 17:40

من مواضعي

برنامج يتصل بقواعد بيانات MYSQL

طريقة إرسال البيانات من البرنامج إلى الوورد

قاطعوا المنتجات الدنماركية والهولندية لنصرة رسول الله والإسلام

lom024p4owxcwq2.gif

للمراسلة عبر الماسنجر :

#3

لا ادري هل تقصد اعادة ترقيم الارقام بالتسلسل..؟ أم ترتيبها مهما كان تسلسلها..؟

عموما حبيبي دائما في مثل هذي الحالات أعتمد على عداد السجلات في الجدول rs.RecordCount

ومن خلاله تستطيع مثلا اعادة الترقيم او عمل اجراءات اخرى..

For i = 1 To rs.RecordCount

MsgBox i

Next

+++++++++

أما اذا كنت تقصد عمل ترقيم تلقائي عند اضافة سجل جديد فكل ما عليك هو تحديد Max لحقل الترقيم ثم اضافة واحد على القيمة كالتالي:

If rs.State = adStateOpen Then rs.Close
rs.Open "select MAX(no) AS EXPR1 FROM t1", DB, adOpenStatic, adLockPessimistic
Text1.Text = rs!EXPR1
Textno.Text = Text1.Text+1
End If

تم تعديل هذه المشاركة بواسطة Al-jameel في 10 يناير 2007 في 17:34

#4

مشكور على التوضيح الرائع هو ما كنت أريدة بالظبط

من مواضعي

برنامج يتصل بقواعد بيانات MYSQL

طريقة إرسال البيانات من البرنامج إلى الوورد

قاطعوا المنتجات الدنماركية والهولندية لنصرة رسول الله والإسلام

lom024p4owxcwq2.gif

للمراسلة عبر الماسنجر :

#5

ممكن تضع لنا كود غير هذا الكود

rs.Open "select MAX(no) AS EXPR1 FROM t1", DB, adOpenStatic, adLockPessimistic

رجاءً

لأنة يواجهني مشاكل

اقتباس
مشكور

تم تعديل هذه المشاركة بواسطة memoon في 11 يناير 2007 في 19:25

من مواضعي

برنامج يتصل بقواعد بيانات MYSQL

طريقة إرسال البيانات من البرنامج إلى الوورد

قاطعوا المنتجات الدنماركية والهولندية لنصرة رسول الله والإسلام

lom024p4owxcwq2.gif

للمراسلة عبر الماسنجر :

#6

هلا أخوي

لايهمك الكود اللي انا كاتبه..المهم الفكرة وهي انك تحدد أكبر قيمة وتزيد عليها واحد

اما جملة sql فهناك الكثير من الطرق لكتابتها وجلب القيمة..

يمكنك ايضا ان تستغني عن جملة sql بأن تحدد قيمة عدد أجمالي السجلات rs.RecordCount الموجودة في الجدول ثم تضيف عليها واحد وتسندها في حقل الترقيم للسجل الجديد قبل عملية الحفظ..

#7
Ahly Is The Best كتب:

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

ازيكم احبائى فى الله

انا اريد كود خاص بعمل عداد

بيتحط فى زى " اضافة " بحيث ان المستخدم يضغط على اضافة عميل جديد .. كود العميل اوتوماتيكلى يترقم

انا عاوز الكود لأنة هيحل لى مشاكل كتيرة اوى خصوصا ان حقل كود العميل دا primary key

افيدونا افادكم الله

شكرا :wub:

اقتباس
If Ctm.RecordCount = 0 Then

OsenXPTextBox1.Text = 1

Else

Ctm.MoveLast

OsenXPTextBox1.Text = Ctm.Fields(0) + 1

End If

انا استخدمت الكود دا ونفع معى

فى حالة ان المستخدم يقوم بالضغط على زر

اضافة

يتم تنفيذ الكود تلقائيا

وحفظة

مفيش مشكلة لحد دلوقتى

وعدد السجلات فى الجدول 20

المفروض انى اعمل جديد يجيبلى 21

لكن

المشكلة ظهرت

لما حذفت سجل من السجلات

وليكن مثلا السجل رقم 10

كدا بقيت السجلات

19

ولو ضغطت اضافة

حيعطينى السجل رقم 20 !!

بالرغم من وجود السجل رقم 20 فى السجلات

وبالطبع حيعطينى error

وانا بعمل حفظ

لانة حقل كود العميل

primary key

بالله عليكم لو فية حد يعرف حل للمشكلة دى يساعدنى

شكرا

#8

اخي الكريم Ahly Is The Best

المفروض ان ينفع الكود عند الحذف او بدون حذف لكن يجب ان يكون الحقل الاساسي موجود في الحقل الاول Ctm.Fields(0) والترتيب ايضا حسب هذا الحقل وليس حسب حقل اخر اي الاستعلام يجب ان يكون كما يلي

select id ,name from table order by id

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