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

عرض قاعدة البيانات عشوائي

بدأه المبرمج الصغير في 4 نوفمبر 2010 · 10 رد · 648 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

كيف يمكن عرض سجل من قاعدة بيانات أكسس في GridView بطريقة عشوائية (Random) دون استخدام Ascending أو Descending

ولكم مني كل التقدير...

#2

أخي الكريم

الاصل في جلب قاعدة البنات إذا لم تقم بوضع شروط عليا يتم جلبها Ascending حتى لو لم تتكتب Ascending

اما ان تقوم بجلبها بشكل عشوائي يمكن التحايل عليها بوضع شروط في عملية الجلب مثلا

where id in (val1,val2,....) and id beteween (vl4,val6) and

وَعَبْدٌ قَدْ يَنامُ عَلَى حَرِيرٍ ××× وَذُو نَسَبٍ مَفَارِشُهُ التُّرَابُ

#3

أشكرك أخي الفاضل على ردك ..

توضيح رائع .. لكن عند محاولة التطبيق لم أفلح .. ممكن مثال بسيط كي أتصور المسالة أكبر

ومزيد من الشكر والتقدير لشخصك الكريم

تم تعديل هذه المشاركة بواسطة المبرمج الصغير في 4 نوفمبر 2010 في 12:12

#4
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)

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

تم تعديل هذه المشاركة بواسطة EMNALI في 4 نوفمبر 2010 في 12:29

وَعَبْدٌ قَدْ يَنامُ عَلَى حَرِيرٍ ××× وَذُو نَسَبٍ مَفَارِشُهُ التُّرَابُ

#5

رائع أخي الكريم .. لكن المشكلة أن القيم (value1,value2,...) ليست ثابتة من 1 إلى 100 مثلا.

بمعنى أن القيم تتغير فالسجل يزداد .. فهل هناك طريقة استطيع أحصر فيها الرقم من البداية إلى نهاية السجل (From minimum to maximum) بحيث تظهر جميع البيانات حديثة الإضافة

ولك شكري يالغالي

#6

أخي الكريم

تأتي بي اخر 100 عنصر تم إضافته في الجدول

select colum_name,,  from tabel	top  100  order by desc

وَعَبْدٌ قَدْ يَنامُ عَلَى حَرِيرٍ ××× وَذُو نَسَبٍ مَفَارِشُهُ التُّرَابُ

#7

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

أليس كذلك؟

#8

صحيح تنتفي العشوائية

لو قمت بعرض فكرة فأقوم بمساعدتك في عملية جلب البيانات العشوائية

تحيايت

وَعَبْدٌ قَدْ يَنامُ عَلَى حَرِيرٍ ××× وَذُو نَسَبٍ مَفَارِشُهُ التُّرَابُ

#9

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

Random rand = new Random(); 

int i = rand.Next(int minquestionnumber,int maxquestionnumber); //generate random number

DataSet ds=new DataSet();

OleDbDataAdapter da=new OleDbDataAdapter("select questionno,ans1,ans2,ans3 from table where questionno like '"+i.ToString()+"%'",conn);
//question with generated random number will be selected


da.Fill(ds);

لم أفهم كيف يمكن تطبيق (int minquestionnumber,int maxquestionnumber); الموجود في المثال

تم تعديل هذه المشاركة بواسطة المبرمج الصغير في 4 نوفمبر 2010 في 16:02

#10

عزيزي اسف على التأخير في الرد

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

عند هذالشخص مجموعة من الاسئلة كل مجموعة مخصصصة لمستوى معين

هما اقل قيمة واعلى قيمة ويتم الاختيار بينهما الاسءلة المطروحة وإذا كانت قاعدة البيانات متواجدة دليك قم بكتابة بدل هذان المتغيران ارقام مثلا 10 و 20 وقم بالتجربة

minquestionnumber

maxquestionnumber

تحياتي

وَعَبْدٌ قَدْ يَنامُ عَلَى حَرِيرٍ ××× وَذُو نَسَبٍ مَفَارِشُهُ التُّرَابُ

#11

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

اخى العزيز

الذى فهمتمك من كلامك انك عاوز تجيب داتا عشوائية من جدول معين

SELECT TOP 1 column FROM table
ORDER BY NEWID()

هو هنا بيجيب واحد بس ممكن ا نت تغيره

اتمنى اكون فهمتك صح و يفيدك الاستعلام ده

اتوقع انه سهل مش محتاج شرح

تم تعديل هذه المشاركة بواسطة bodaman22 في 7 نوفمبر 2010 في 15:32

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