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

مشكلة بال DataReader

مغلق
بدأه صلاح الثبيتي في 12 يوليو 2005 · 7 رد · 781 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم :)

أستخدم الـ DataReader لقراءة البيانات من قاعدة البيانات بشكل متوالي (يعني ورا بعض) لكن انا ابحث عن ميثود (Method) أقدر من خلالها قراءة اول سجل و آخر سجل (First record & last record)..

المشكله: مالقيت ميثود جاهزه بـ DataReader لقراءة اول سجل و آخر سجل بقاعدة البيانات !!

هل من حل؟؟

#2

القراءة من الـData Reader هي بطريقة "خرطوم المياه" Water hose أي أنك لا تستطيع سوى قراءة السجل المؤشر عليه ثم الإنتقال للتالي، و حالما انتقلت لا تستطيع العودة. لذا لا أظن أنه توجد Method للقيام بما تريده. عليك المرور بجميع السجلات. يمكن أن تقوم باثنين query باستعمال كلمة top و لكن هذا يعتمد على الـquery الذي تستخدمه الآن.

#3

مشكور على الرد ..

بالنسبه لأخر سجل ..

كيف أصل إلى آخر سجل بالداتاريدر من خلال while loop لقراءة كامل السجلات و اذا وصلت الى اخر سجل .. اقوم بعرضه؟؟!!

#4

تستطيع من خلال جملة الاستعلام عرض آخر سجل فقط بدل عم ال Loop من خلال ال datareader بحيث ترتيب البيانات ترتيب تنازلي

select top 1 * from table order by id desc

حيث top تحدد عدد السجلات التي تود استعراضها.

تم تعديل هذه المشاركة بواسطة عبدالله جابر شقليه في 12 يوليو 2005 في 21:51

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#5

أخ عبدالله

أول مره أعرف "top" و مشكور على المعلومه لكن المشكله اني ما اقدر استخدم الجمله اللي انت وضعتها لأن الداتابيس ماهي مرتبه بترتيب معين !!! :(

انا استخدم اكسس .. هل في طريقه معينه اعرف فيها اخر سجل بالجدول؟؟

تم تعديل هذه المشاركة بواسطة صلاح الثبيتي في 13 يوليو 2005 في 00:12

#6

لا أعرف أخ صلاح الثبيتي اذا كان هناك طريقه أخرى لمعرفة آخر سجل من خلال جمل الاستعلام، لو كان يوجد في الأكسس مثل الفانكشن limit في mysql لتحديد السجلات التي تود عرضها بين هذه الفترة ، فعندها تقوم بعملية استعلام لجلب عدد السجلات في الجدول ولو كانت مثلا 50 سجل تكون الفترة على سبيل المثال

select * from table limit 50,50

طبعا هذه تستخدم في mysql فلا أعرف اذا كان هناك فانكشن تقوم بنفس العمل في الأكسس.

وانت قم بإضافة حقل مثلا id للجدول من نوع autonumber لكي تحصل على ترقيم تلقائي فمن خلاله تستطيع استخدام الجملة التي ذكرتها لك المشاركة في الأعلى.

بالنسبة لطريقتك لل for loop انه فقط تعرض آخر سجل عرف متغيرات لكل حقل من الحقول في الجدول واجعله داخل ال for loop تتغيره قيمه فعندما ينتهي ال loop سوف يكون تم تخزين آخر سجل بداخل المتغيرات، وبعدها تقوم بعملية العرض.

وان شاءالله يكون هناك حلول من أحد الأخوان لطرق أسهل توفر العناء وتسرع من عملية تنفيذ الكود.

مع التحية

MCP

MCTS:.Net Framework 2.0: Web Applications

MCPD:Web Developer

#7

مالها الData Set

ممكن تستخدمها في اي تعامل قادم لداتا داخل تطبيقك بشرط تقسيم البرنامج ل Layers

:)

هذا الموضوع مغلق.

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