I am creating search page for my website using IIS Index Search.
on search.aspx page on the click event of search button i put this code
Private Sub btnsearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsearch.Click
Dim strCatalog As String
strCatalog = "MyCatalogName"
Dim strQuery As String
strQuery = "Select DocTitle,Filename,Size,PATH,VPath,Characterization,Write,Directory,Rank from SCOPE() where FREETEXT('" & txtsearch.Text & "') ORDER BY Rank DESC"
Dim connString As String = "Provider=MSIDXS.1;Integrated Security .='';Data Source='" & strCatalog & "'"
Dim cn As New System.Data.OleDb.OleDbConnection(connString)
Dim cmd As New System.Data.OleDb.OleDbDataAdapter(strQuery, cn)
Dim myDataSet As New DataSet()
cmd.Fill(myDataSet)
Dim source As New DataView(myDataSet.Tables(0))
ResultDataGrid.DataSource = source
ResultDataGrid.DataBind()
End Sub
End Class
Now when its returning results its not returning proper results what it should be
i think on this line problem occur, i think its not searching all the index pages on catalog.
strQuery = "Select DocTitle,Filename,Size,PATH,VPath,Characterization,Write,Directory,Rank from SCOPE() where FREETEXT('" & txtsearch.Text & "') ORDER BY Rank DESC"
so i want to do something like this
FREETEXT('" & txtsearch.Text & "') insetad of this i want to do something like
appatel786
0 Points
5 Posts
IIS Index Search
Jan 03, 2013 01:48 PM|LINK
Hi,
I am creating search page for my website using IIS Index Search.
on search.aspx page on the click event of search button i put this code
Private Sub btnsearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsearch.Click Dim strCatalog As String strCatalog = "MyCatalogName" Dim strQuery As String strQuery = "Select DocTitle,Filename,Size,PATH,VPath,Characterization,Write,Directory,Rank from SCOPE() where FREETEXT('" & txtsearch.Text & "') ORDER BY Rank DESC" Dim connString As String = "Provider=MSIDXS.1;Integrated Security .='';Data Source='" & strCatalog & "'" Dim cn As New System.Data.OleDb.OleDbConnection(connString) Dim cmd As New System.Data.OleDb.OleDbDataAdapter(strQuery, cn) Dim myDataSet As New DataSet() cmd.Fill(myDataSet) Dim source As New DataView(myDataSet.Tables(0)) ResultDataGrid.DataSource = source ResultDataGrid.DataBind() End Sub End ClassNow when its returning results its not returning proper results what it should be
i think on this line problem occur, i think its not searching all the index pages on catalog.
strQuery = "Select DocTitle,Filename,Size,PATH,VPath,Characterization,Write,Directory,Rank from SCOPE() where FREETEXT('" & txtsearch.Text & "') ORDER BY Rank DESC"
so i want to do something like this
FREETEXT('" & txtsearch.Text & "') insetad of this i want to do something like
FREETEXT({DocTitle,FielName,Contents},'" & txtsearch.Text & "')
but when i try that its returning Syntax Error.
Exception Details: System.Data.OleDb.OleDbException: Incorrect syntax near '{'. Expected CREATE, ID, STRING. SQLSTATE=42000
what can i do?
css-chlukito
Member
378 Points
49 Posts
Re: IIS Index Search
Jan 10, 2013 04:37 AM|LINK
Hi,
I think it should use '()' for column list, not '{}'.
FREETEXT((DocTitle,FielName,Contents),'" & txtsearch.Text & "')
http://msdn.microsoft.com/en-us/library/ms176078%28v=sql.105%29.aspx
Please 'Mark as Answer' if this post helps you.