PDA

View Full Version : جستجو در پایگاه داده



ameysams
دوشنبه 20 آذر 1385, 03:05 صبح
با سلام خدمت دوستان عزیز میخواهم وقتی در textbox متنی نوشته شد با کلیک بر روی یک button آن متن در پایگاه داده جستجو شود?ودرdatagrid نمایش داده شود از چه کدهایی باید استفاده کنم؟ در ضمن زبان برنامه نویسی هم vb.netاست . با تشکر

rezaei manesh
دوشنبه 20 آذر 1385, 09:43 صبح
من برای اینکار جداولی رو که نیاز هست رو فقط جستجو می کنم اون برای اون هم در همه فیلد ها اون متن رو جستجو می کنم اگه منظورتون همینه که بگین کمکتون کنم اما اگه می خواهید با یک دستور یک متن رو در کل بانک حستجو کنید که من بلد نیستم
برای نمایش هم اگه می خواهید فیلدهایی که عبارت درون اون هست رو نشون بده که باید برای هر فیلد چک کنید که آیا خروجی دارد یا نه که خیلی پیچیده می شود.
من معمولا برای جستجوهای اینطوری چندتا کنبو و چندتا تکست می زارم که کاربر اوم جداول رو بعد فیلد های مورد نظر رو و بعد عبارت رو انتخاب کنه و...

zarrin_306
دوشنبه 20 آذر 1385, 14:01 عصر
Imports System.Data.SqlClient

Public Class Find
Inherits System.Windows.Forms.Form


Protected dsdata As New DataSet

Protected Const connectionstring As String = "workstation id=ZARRIN;packet size=4096;integrated security=SSPI;initial catalog=Recall;persist security info=False"

Protected Const TABLE_NAME As String = "PhoneBook"



Private Sub loaddb()
Dim cnn As New SqlConnection(connectionstring)

Dim da As New SqlDataAdapter("select * from PhoneBook", cnn)

dsdata.Clear()
da.Fill(dsdata, TABLE_NAME)
DataGrid1.DataSource = dsdata.Tables(TABLE_NAME)
TextBox1.Focus()
TextBox1.Select()
End Sub



Private Sub Filter_db()
If Me.ComboBox1.Text = "نام" Then
With dsdata.Tables(TABLE_NAME)

.DefaultView.RowFilter = "Fname like '%" & TextBox1.Text & "%'"

If .DefaultView.Count = 0 Then

End If
Me.DataGrid1.DataSource = .DefaultView
End With
End If

Private Sub Find_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Call loaddb()
End Sub

Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
Try
Call Filter_db()
Catch ex As Exception
Exit Try
End Try
End Sub