تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
البحث في جدولين مترابطين
#17
sajad كتب :السلام عليكم

في زر البحث استعلم بالشكل التالي:

1- بالنسبة للبحث المطابق
كود :
select * from city,country where city.country_id=country.tid and where mallname=srchtext.text

2- البحث العاام

استبدل = بـ Like



اخي الكريم سجاد

بصراحه لم افهم عليك ماذا تقصد
لاني الكود لدي مثل هذا الشكل

كود :
Imports System.Data
Imports System.Data.OleDb
Public Class Form2

    Dim ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source =" & Application.StartupPath & "\MR.mdb"
    Dim Conn As New OleDbConnection(ConStr)
    Dim DataSet1 As New DataSet
    Dim SQLstr As String
    Dim m As String
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Static m As Integer = 0
        If TextBox1.Text = Trim("") Then Exit Sub
        If RadioButton4.Checked = True Then
            ExactSearch()
        ElseIf RadioButton5.Checked = True Then
            GeneralSearch()
        End If
        Conn.Open()
        Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, Conn)
        DataAdapter1.Fill(DataSet1, "TheTable")
        Conn.Close()
        TextBox7.DataBindings.Add("Text", DataSet1, "TheTable.Mall")
        TextBox2.DataBindings.Add("Text", DataSet1, "TheTable.Code")
        TextBox55.DataBindings.Add("Text", DataSet1, "TheTable.Repair_Cost")
        TextBox5.DataBindings.Add("Text", DataSet1, "TheTable.MR_D")
        TextBox3.DataBindings.Add("Text", DataSet1, "TheTable.Description_repairs")
        TextBox6.DataBindings.Add("Text", DataSet1, "TheTable.Expiry_date_repairs")




        DataGridView1.DataSource = DataSet1
        DataGridView1.DataMember = "TheTable"
        Button1.Enabled = False
        If Me.BindingContext(DataSet1, "TheTable").Count = 0 Then
            MsgBox("No Result, Please Try Again ")
            Exit Sub
        End If
        Button2.Enabled = True
        Button3.Enabled = True
    End Sub
    Public Sub ExactSearch()
        If RadioButton1.Checked = True Then
            SQLstr = "SELECT * FROM TheTable WHERE Code = '" & TextBox1.Text & "'"
        ElseIf RadioButton2.Checked = True Then
            SQLstr = "SELECT * FROM TheTable WHERE Mall = '" & TextBox1.Text & "'"
        End If
    End Sub
    Public Sub GeneralSearch()
        If RadioButton1.Checked = True Then
            SQLstr = "SELECT * FROM TheTable WHERE Code LIKE '%" & TextBox1.Text & "%'"
        ElseIf RadioButton2.Checked = True Then
            SQLstr = "SELECT * FROM TheTable WHERE Mall LIKE '%" & TextBox1.Text & "%'"
        End If
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        TextBox7.DataBindings.Clear()
        TextBox2.DataBindings.Clear()
        TextBox3.DataBindings.Clear()
        TextBox6.DataBindings.Clear()
        TextBox55.DataBindings.Clear()
        TextBox5.DataBindings.Clear()
        TextBox1.Text = ""
        TextBox7.Text = ""
        TextBox2.Text = ""
        TextBox3.Text = ""
        TextBox6.Text = ""
        TextBox5.Text = ""
        TextBox55.Text = ""
        Button1.Enabled = True
        SQLstr = ""
        DataSet1.Clear()
        Me.DataGridView1.DataSource = Nothing
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        FORM1.Show()
        Me.Close()

    End Sub
End Class


المشكله في اسماء الجداول

الجدول الاول اسمه الرئيسي HeadInv_Tbl
الجدول الثاني اسمه InvDetail_Tbl

طبعا قاعده الييانات اسمها MR

الان بالنسبه للكود الذي وضعته

على ما اعتقد يتم وضعه هكذا

للبحث الخاص

كود :
Public Sub ExactSearch()
        If RadioButton1.Checked = True Then
            SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo=HeadInv_Tbl.ID and where Mall_Name=textbox1.text"
        ElseIf RadioButton2.Checked = True Then
            SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo=HeadInv_Tbl.ID and where MRNo=textbox1.text"
        End If
    End Sub

للبحث العام

كود :
Public Sub GeneralSearch()
        If RadioButton1.Checked = True Then
            SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo Like HeadInv_Tbl.ID and where Mall_Name Like '%" & TextBox1.Text & "%'"
        ElseIf RadioButton2.Checked = True Then
            SQLstr = "SELECT * FROM InvDetail_Tbl,HeadInv_Tbl WHERE InvDetail_Tbl.HeadInvNo Like HeadInv_Tbl.ID and where MRNo Like '%" & TextBox1.Text & "%'"
        End If
    End Sub


يبقى الجزء هذا

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

ولكن بالنسبه ل "TheTable"

لم اعرف كيف اغيرها هل اضعها اسم الجدول الاول او الجدول الثاني وهل يلزم ان اضع الجدولين مع بعض

شاهد الكود

كود :
Static m As Integer = 0
        If TextBox1.Text = Trim("") Then Exit Sub
        If RadioButton4.Checked = True Then
            ExactSearch()
        ElseIf RadioButton5.Checked = True Then
            GeneralSearch()
        End If
        Conn.Open()
        Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, Conn)
        DataAdapter1.Fill(DataSet1, "HeadInv_Tbl")
        DataAdapter1.Fill(DataSet1, "InvDetail_Tbl")
        Conn.Close()
        TextBox7.DataBindings.Add("Text", DataSet1, "TheTable.Mall")
        TextBox2.DataBindings.Add("Text", DataSet1, "TheTable.Code")
        TextBox55.DataBindings.Add("Text", DataSet1, "TheTable.Repair_Cost")
        TextBox5.DataBindings.Add("Text", DataSet1, "TheTable.MR_D")
        TextBox3.DataBindings.Add("Text", DataSet1, "TheTable.Description_repairs")
        TextBox6.DataBindings.Add("Text", DataSet1, "TheTable.Expiry_date_repairs")


        DataGridView1.DataSource = DataSet1
        DataGridView1.DataMember = "HeadInv_Tbl"
        DataGridView1.DataMember = "InvDetail_Tbl"
        Button1.Enabled = False
        If Me.BindingContext(DataSet1, "HeadInv_Tbl").Count = 0 Then
            MsgBox("No Result, Please Try Again ")
            Exit Sub
        End If
        Button2.Enabled = True
        Button3.Enabled = True
    End Sub


لكم جزيل الشكر
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
البحث في جدولين مترابطين - بواسطة Sajad - 13-08-13, 10:53 AM
البحث في جدولين مترابطين - بواسطة Sajad - 13-08-13, 11:26 AM
البحث في جدولين مترابطين - بواسطة Sajad - 13-08-13, 05:35 PM
البحث في جدولين مترابطين - بواسطة Sajad - 13-08-13, 08:43 PM
البحث في جدولين مترابطين - بواسطة Sajad - 14-08-13, 08:02 PM
البحث في جدولين مترابطين - بواسطة Sajad - 15-08-13, 11:23 AM
البحث في جدولين مترابطين - بواسطة alaqsa_mybb_import6622 - 15-08-13, 12:10 PM
البحث في جدولين مترابطين - بواسطة Sajad - 15-08-13, 12:19 PM
البحث في جدولين مترابطين - بواسطة Sajad - 15-08-13, 01:05 PM
البحث في جدولين مترابطين - بواسطة Sajad - 15-08-13, 02:13 PM
البحث في جدولين مترابطين - بواسطة Sajad - 15-08-13, 05:13 PM
البحث في جدولين مترابطين - بواسطة Sajad - 15-08-13, 06:38 PM
البحث في جدولين مترابطين - بواسطة mr_mgm - 18-08-13, 10:45 AM


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم