我想使用ASP.NET在我的网站上创建一个搜索引擎。该引擎将从数据库中搜索用户的输入文本(SQL Server 2008)。有谁知道如何创建这个搜索引擎?我真的需要你的帮助。谢谢!
这是我的代码:
Partial Class Search
Inherits System.Web.UI.Page
Dim sqlconn As New SqlConnection("server=.\SQLEXPRESS; AttachDbFilename=C:\Documents and Settings\USER\Desktop\science\App_Data\Library.mdf;Integrated Security=True;User Instance=True")
Protected Sub btnSearch_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSearch.Click
Dim sqlquery As String = "SELECT DISTINCT packagename,packagecategory FROM package Where "
If txtTitle.Text <> "" Then
sqlquery += "packagename LIKE '%" + txtname.Text + "%' AND "
Else
sqlquery += "packagename Like '%%' AND "
End If
If DropDownList1.SelectedValue <> "Any" Then
sqlquery += "packagecategory LIKE '%" + DropDownList1.SelectedValue + "%' AND "
Else
sqlquery += "packagecategory Like '%%' AND "
End If
我发现在列表视图中显示结果的问题......
答案 0 :(得分:2)
看看Lucene.net是否有开箱即用的解决方案。
答案 1 :(得分:1)
一种可以加快查询速度的方法是不搜索COLUMN_NAME LIKE'%%',因为在您的示例中,所有内容都会匹配,基本上会删除它们。
答案 2 :(得分:0)
最简单的方法是使用db连接器,然后使用SELECT * FROM table WHERE text LIKE '$USERINPUT'
答案 3 :(得分:0)
Checkout Lucene.NET:http://incubator.apache.org/lucene.net/
答案 4 :(得分:0)
因为您使用的是Sql Server,所以请查看Full-Text Search,它可以帮助您。
Lucene.net也是Mark提到的选项。