PDA

View Full Version : جستجو در ديتاگريد



Hossis
جمعه 21 اسفند 1388, 20:18 عصر
من مي خواهم فيلد خاصي را جستجو کنم و اگر در هر قسمت آن ،‌ واژه يا حرف خاصي باشد، در ديتاگريد نمايش داده شود
مثلا اگر کاربر حرف "قا" را در فيلد "نام" جستجو کرد، ستونهائي که نام قاسم، قادر، عنقا ، شقايق و .. را دارند، فقط نمايش داده شوند.
من از اين کد استفاده مي کردم ولي در اين کد بايد واژه جستجو برابر با تمام فيلد باشد نه بخشي از آن


Friend Sub Search(ByVal columName As String, ByVal findStr As String)
Dim ds As New DataSet
' Dim cr As New CrystalReport1
Dim cnn As OleDbConnection
If findStr = String.Empty Then Exit Sub
cnn = New OleDbConnection(cnnstr)
cnn.Open()
da = New OleDbDataAdapter("Select * from Books Where " & columName & "='*" & findStr & "*'", cnn)
da.Fill(ds, "Books")
DG.DataSource = ds.Tables("Books")
cnn.Close()
For i As Int32 = 0 To DG.Rows.Count - 1
With DG
.Item(0, i).Value = i + 1
End With
Next
End Sub

amin_iman82
شنبه 22 اسفند 1388, 02:23 صبح
باید از LIKE استفاده کنید.
با این مثال من هر کسی که داخل اسمش حرف A باشه نمایش داده میشه.



SELECT * FROM table1 WHERE Name LIKE '%A%'

Hossis
پنج شنبه 27 اسفند 1388, 07:18 صبح
با تشکر!!
حال اگر بخواهيم جستجوي ترکيبي انجام بديم يعني از فيلد نام ،‌کلمه حسن و ا ز فيلد فاميل، کلمه "بخشي" و از فيلد تحصيلات کلمه "ديپلم" رو در يک جستجو بررسي کنيم بايد چکار کرد؟؟