【发布时间】:2017-11-01 09:13:08
【问题描述】:
我有一个小问题想要解决,但我遇到了一些麻烦。 我是一个 DataGrid,其中包含姓名、姓氏、地址、电话号码和出生年份等信息。旁边我有一个文本框,它就像一个搜索,我在其中按名称搜索 DataGrid。为了测试,我加了两个人。一个名称为“Mark”,第二个名称为“1”。这个想法是,如果我在文本框中输入“ma”或“mar”,它应该列出每个名字以“ma”或类似名称开头的人。 现在的问题是,当我输入名字“1”时,会显示名字以“1”开头的人,但是当我输入“m”或任何其他字符时,什么也没有发生。就像只有数字有效,字母无效。我做错了什么,问题出在哪里,有人可以帮忙吗?以下是“FilterName”的查询代码:
SQLiteConnection KonekcijaSQL = new
SQLiteConnection(@"DataSource=DzudoKlub.db;Version=3;");
StringBuilder sb = new StringBuilder();
// translation to english "Select * from Person Where name Like
@Name + '%'"
sb.AppendLine("SELECT * ");
sb.AppendLine("FROM Osoba");
if (ime != string.Empty)
{
sb.AppendLine("WHERE Ime like @Ime + '%'");
}
【问题讨论】:
-
未尝试的建议:您是否将
@Ime绑定到文本框的内容?如果是这样,请尝试将'%'附加到您绑定的值,而不是将其包含在 SQL 语句中。