2012-02-02 67 views
-4

在我的計劃,我實現了一個簡單的數據庫搜索,它接受一個字符串(姓名或名稱的一部分),並返回相應的詳細信息:在Visual C#.NET數據庫搜索

string nameSearch = textBox1.Text; 
DataRow[] resultRows; 

resultRows = ds1.Tables["Lecturers"].Select("Name='" + nameSearch + "'"); 

但我是沒有得到預期的結果,除非我正確輸入完整名稱。當我只輸入部分名稱時,如何修改'Select()'以獲得結果?

回答

1

您可以嘗試使用RowFilter如下面的例子:

ds1.Tables["Lecturers"].DefaultView.RowFilter = "[Name] LIKE '"+ nameSearch +"'"; 
DataTable dtOutput = ds1.Tables["Lecturers"].DefaultView.ToTable(); 
+0

你不需要「太需要」,這只是一種替代方法 – gbn 2012-02-03 08:32:26

+0

@gbn:更新了我的答案:) – Akhil 2012-02-03 17:34:18

0

使用名稱LIKE「%+ namesearch +'%

0

試試這個?:

resultRows = ds1.Tables["Lecturers"].Select("Name like '%" + nameSearch + "%'"); 

我假設這不是'生產'代碼。在這裏看起來像一個大sql injection