J'utilise vs 2012 Professional et SQL-Server 2012 Express.SqlException n'a pas été gérée par le code utilisateur. (Index du texte intégral)
J'essayais d'exécuter Admin.aspx, qui a une zone de texte pour rechercher des utilisateurs dans une base de données.
Cependant, chaque fois que j'essaie de rechercher un nom d'utilisateur Je reçois cette erreur
Cannot use a CONTAINS or FREETEXT predicate on table or indexed view 'users' because it is not full-text indexed.
D'après ce que je recherche l'indexation en texte intégral doit être activé, pour qui dans mon cas, il est grisé dans SQL Server Management Studio et non disponible (???) dans l'édition Express.
Comment puis-je surmonter ce problème?
Admin.aspx
Imports System.Data.SqlClient
Partial Class Admin
Inherits System.Web.UI.Page
Protected Sub btnSearchUser_Click(sender As Object, e As EventArgs) Handles btnSearchUser.Click
Dim conn As New SqlConnection("Data Source=BRIAN-PC\SQLEXPRESS;Initial Catalog=master_db;Integrated Security=True")
Dim searchComm As String = "SELECT username FROM users WHERE CONTAINS (username, @username)"
Dim searchSQL As New SqlCommand
conn.Open()
searchSQL = New SqlCommand(searchComm, conn)
searchSQL.Parameters.AddWithValue("@username", txtUserSearch.Text)
Dim datareader As SqlDataReader = searchSQL.ExecuteReader()
While datareader.Read
lstUsers.Items.Add(datareader.Item("username"))
End While
datareader.Close()
conn.Close()
End Sub
End Class
Comme vous pouvez le voir, l'utilisateur saisit un nom d'utilisateur dans le champ de recherche, et pour chaque enregistrement qui contient les mots de l'entrée est ajouté comme zone de texte un élément dans la liste.