2012-08-25 17 views
-1

我试图使用通配符查询在GridView显示行,但它是不是达到标准...如何使用文本框检索记录?

protected void Button1_Click(object sender, EventArgs e) 
{ 
    SqlCommand com = new SqlCommand("select * from Alphabates where Word 
        like'"+TextBox1.Text+"'", new SqlConnection("data source= 
        USER\\SQLEXPRESS;initial catalog=vicky;integrated 
        security=true")); 

    try 
    { 
     com.Connection.Open(); 
     GridView1.DataSource = com.ExecuteReader(); 
     GridView1.DataBind(); 
     com.Connection.Close(); 
     com.Connection.Dispose(); 
    } 
    catch (SqlException ex) 
    { 
     Label1.Text = ex.Message; 
    } 
} 
+0

什么是你的问题? – nunespascal

+0

@pascal我想要如果我输入ab因此它应该显示我的Alphabates数据库中的所有记录plzz帮助我 –

回答

2

试试这个:

更改您的查询文本周围添加%盒值

通配符搜索需要%符号,以获得所需结果,其他明智这将是一样使用等于(=)签署

"select * from Alphabates where Word like %'"+TextBox1.Text+"%'" 

作为每个如果您想您的评论行开始再给予字:

"select * from Alphabates where Word like '"+TextBox1.Text+"%'" 

例:

select * from Alphabates where Word like 'Some value' 

是相同

select * from Alphabates where Word ='Some value' 

所以你应该将其更改为

select * from Alphabates where Word like '%Some value%' 
+0

'ab%'附近的语法不正确。结果看起来像这样........ :-( –

+0

请检查引号..我已经更新了我的答案.. plz现在检查 –

+0

我希望如果我在'ab'这样的文本框中输入Word,所以它应该显示所有“aback”,“abase”,“abort'开始的词........... –