2015-07-05 60 views
0

我有一张表,我想在表中进行搜索。如何在LIKE中的C#sql数据库中进行搜索

SELECT tbPhonebook.* 
FROM tbPhonebook  
WHERE Fname LIKE @fanem 

tbPhonebookTableAdaptor,并使用此:

private void search_Click(object sender, EventArgs e) 
{ 
    tbPhonebookTableAdapter.search(this.test4Dataset.tbPhonebook, textBox1.Text); 
} 

,它工作正常,但是当有人搜索一个词,其中包含搜索表达式将显示所有单词。

例如存在于数据库是这些名字:

ali , alireza , soheil , soheilyou , .... 

如果在用户搜索当前的搜索ali程序只是将显示他ali同时alireza还包含ali搜索条件!

在PHP我可以使用这样的:

SELECT * 
FROM tbPhonebook  
WHERE Fname LIKE "%$fanem%" 

,但我不知道C#语法

+0

我不是百分百确定你问什么,但在C#中你可以使用'String.Contains()'方法 – user959631

回答

-1

抛开安全性,你可以使用一个连接字符串为您的查询,如:

"SELECT tbPhonebook.* FROM tbPhonebook WHERE Fname LIKE '%"+textBox1.Text+"%'" 

一个更安全的方法来避免SQL注入的例子可以在这里找到:SQL Parameters

+0

我找到它,我想写的答案,看到你做到了; )tnx anway –

+0

如果你愿意接受答案,你会让我难以置信的高兴! :-) – RhinoDevel

+0

确定我的朋友;),你可以得分问题 –

0

我认为你应该学习c#语法来成为更好的c#开发人员。

我使用这个SQL命令,它适用于我。它会在文本框上输入的任何字符上的textchang事件中搜索我的数据库。

sql = "SELECT * FROM Studentreg WHERE RegNo like '%" + txtquick.Text + "%' or StudentName LIKE '%" + txtquick.Text + "%'"; 
+3

当心小鲍比桌子! –

+2

小鲍比桌:https://xkcd.com/327/ – Kevin

相关问题