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

كيف اسوي قرعة لأسماء مخزنة في قاعدة بيانات اكسس ؟

بدأه @ام عبدالله@ في 2 فبراير 2010 · 5 رد · 1,047 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كيف اسوي قرعة لأسماء مخزنة في قاعدة بيانات اكسس ؟ بحثت ولم اجد في المنتدى قيم الموضوع:

السلام عليكم

كيف حالكم

عندي قاعدة بيانات اكسس - فيها حقل واحد name

وفيه اسماء

وعندي فورم في تكست بوكس وزر بوتون " إبدأ القرعة "

أبغى لما أضغط على الزر يعرض لي اسم من الاسماء في قاعدة البيانات في تكست بوكس بشكل عشوائي

اخواني ماعندي أدنى فكرة عن موضوع القرعة .. فممكن شرح وافي او الكود ؟

وسؤال بسيط آخر : هل ممكن تنسيق قاعدة البيانات في vb.net مثل asp.net في قريد فيو ؟

من ناحية الالوان والعرض وتنسيق الوان الهيدر والوان الحقول والنصوص داخل قاعدة البيانات

تم تعديل هذه المشاركة بواسطة @ام عبدالله@: بالأمس, 07:44 PM

#2

وعليكم السلام

اذا كان ما فيه حقل id ممكن من خلاله تعرفين اول صف وآخر صف في قاعدة بياناتك يبغى لك كود يحسب كم صف في الجدول بعدها:

//C#
int RandomNumber = RandomClass.Next(4, 14);

'VB.NET
Dim RandomNumber As Integer
RandomNumber = RandomClass.Next(4, 14)

الأربعة تمثل البداية والأربعة عشر تمثل النهاية والرقم العشوائي راح يكون بينهم

للزيادة:

http://www.brettb.com/RandomNumbersInDotNet.asp

تم تعديل هذه المشاركة بواسطة حسام المقحم في 2 فبراير 2010 في 08:39

#3

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

ولا طريقة عرضها في تكست بوكس

ممكن توضيح؟

#4

السلام عليكم

ارجو ان يفي هذا الكود بالغرض

Dim Con As New Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\db.mdb") 'نغير مكان واسم القاعدة
            Con.Open()
            Dim cmd As New Data.OleDb.OleDbCommand("select [name]  from table1" , Con) '<<نضع اسم الجدول

			 Dim da As New OleDbDataAdapter(cmd)

			Dim dt As New DataTable()
			da.Fill(dt)


		 Dim  rd  as new Random()
		 'نختار رقم عشوائي حسب عدد الصفوف في الجدول
         Dim RandomRow As Integer =  rd.Next(0, dt.rows.Count-1)	 
			 'نضع القيمة في مربع النص
			TextBox1.Text =dt.rows(RandomRow)(0)

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

تم تعديل هذه المشاركة بواسطة TareqVB في 2 فبراير 2010 في 22:09 — السبب: تصحيح

#5

يعطيك ألف عافية اخوي تمام وضبط

واشتغل

الله يجزاك ألف خير

بس اذا ممكن سؤالين ؟

في طريقة عشان الاسم مايتكرر ؟ مايطلع مرة ثانية ؟

والسؤال الثاني في طريقة لعرض الاسامي اول شي كاملة بشكل سريع وبعدين يتوقف على اسم معين ؟

#6

السلام عليكم

مبدئيا هذا هو الكود الذي يعرض الاسماء دون تكرار ثم يتوقف على آخر اسم . لكن عرض الاسماء على السريع غير ممكن الا من خلال وضعهم في grid او list .

 'نضع هذا الكود في    Page_Load

        Dim Con As New Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\db.mdb") 'نغير مكان واسم القاعدة
        Con.Open()
        Dim cmd As New Data.OleDb.OleDbCommand("select [name]  from table1", Con) '<<نضع اسم الجدول

        Dim da As New OleDbDataAdapter(cmd)

        Dim dt As New DataTable()
        da.Fill(dt)


        Dim rd As New Random()



        Dim list As New List(Of String)
        For i As Integer = 0 To dt.Rows.Count - 1
            list.Add(dt.Rows(i)(0))
        Next

        Dim index As Integer
        Dim item As String

        session("list") = list




        '---------------------------------
        'وهذا الكود في حدث الزر الذي سيعرض الاسماء


        Dim list As List(Of String)
        list = session("list")
        If list.Count = 1 Then  'عند بقاء عنصر في القائمة نبقيه كما هو 
            Exit Sub
        End If
        index = rd.Next(0, list.Count)
        item = list(index)
        list.RemoveAt(index) 'نحذف الاسم من القائمة حيث تم عرضه

        TextBox1.Text = item


        session("list") = list

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

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

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

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

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