منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : أريد عمل بحث فى قاعدة البيانات بأستخدام ال like مع search
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم 

عاوز اعمل بحث فى قاعدة البيانات بأستخدام ال like 

بحيث يبحث عن السجل المطلوب مع البقاء على الداتا ست الموجوده لمعرفة موقع السجل 


توضيح أكثر 

عندي جدول به 

1- أحمد 
2- ماجد
3 هانى
........
.....
....
100

عندما أقف على احمد      ( 1 من أجمالى 100)  عند عمل البحث بجملة الاس كيو ال يقفل الداتا ست على السجل الذي يحتوي على نتيجه البحث ويكون (1 من أجمال 1) ولا استطيع التنقل بين السجلات  

فكيف ابحث وانتقل للموقع مع تشغيل ازرار التنقل 

عند الاضافة أريده يقف على أخر سجل تم أضافته 
وكذلك التعديل وشكراً
وعليكم السلام اخي

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

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

اتمنى ان يكون كلامي واضح ...

الكود الاول:
كود :
Private Sub TXT_Search_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TXT_Search.TextChanged
       Try
           da = New SqlDataAdapter("SELECT * FROM " & TB_Name & " WHERE " & TB_Col_Name & " LIKE '%" & TXT_Search.Text & "%'", sqlconn)
           dt.Clear()
           da.Fill(dt)
           Me.DataGridView.DataSource = dt
           rowSelection()
           sqlconn.Close()
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try
   End Sub

حيث ان :
Dim da As New SqlDataAdapter

    Dim dt As New DataTable

الكود الثاني:

كود :
Private Sub rowSelection()
       Try
           If Me.DataGridView.RowCount = 0 Then lbl_num_rec.Text = "لا يوجد سجلات" : Exit Sub
           With Me.DataGridView
               .ClearSelection()
               .Rows(x).Selected = True
               .FirstDisplayedScrollingRowIndex = x

               TXT_Name.Text = .Rows(x).Cells(1).Value.ToString
               TXT_Address.Text = .Rows(x).Cells(2).Value.ToString
             
               lbl_num_rec.Text = x + 1 & " من " & dt.Rows.Count
           End With
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try

حيث ان :
 Dim x As Integer = 0

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


تقبل تحياتي.........