Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C Datagrid的WHERE子句的文本框_C#_Sql_Datagrid - Fatal编程技术网

C# C Datagrid的WHERE子句的文本框

C# C Datagrid的WHERE子句的文本框,c#,sql,datagrid,C#,Sql,Datagrid,VS 2010 C网站我有TextBox1来过滤SQL数据库中的名字,该数据库将显示在Datagrid中,但我无法找到将用户输入从TextBox1.Text链接到Datagrid筛选的WHERE子句的正确方法。我试过: SelectCommand="SELECT * FROM [TestName] WHERE ([TestFirstName] LIKE '%' + TextBox1.Text + '%')" 试试这个: SelectCommand="SELECT * FROM [TestNam

VS 2010 C网站我有TextBox1来过滤SQL数据库中的名字,该数据库将显示在Datagrid中,但我无法找到将用户输入从TextBox1.Text链接到Datagrid筛选的WHERE子句的正确方法。我试过:

SelectCommand="SELECT * FROM [TestName] WHERE ([TestFirstName] LIKE '%' + TextBox1.Text + '%')"
试试这个:

SelectCommand="SELECT * FROM [TestName] WHERE ([TestFirstName] LIKE '%" + TextBox1.Text + "%')" 

注意+TextBox1.Text+周围的引号。上面的示例似乎在寻找文本字符串TextBox1.Text,而不是TextBox1.Text的实际值。

如果要使用SqlDataSource或ObjectDataSource将数据绑定到datagrid,则可以简单地将WHERE子句放入正在使用的数据源的FilterExpression属性中

SelectCommand = "SELECT * FROM [TestName] WHERE ([TestFirstName] LIKE '% " + TextBox1.Text + "%')";
protected void ObjectDataSource1_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
        {
            string filterstr = "";

            if (this.tbSearchEmpID.Text.Trim() != String.Empty)
            {
                filterstr += "EmpId LIKE '%" + this.tbSearchEmpID.Text.Trim() + "%'";
            }

            this.ObjectDataSource1.FilterExpression = filterstr;
        }

SQL不是dbms,您是说MS SQL Server吗?“仍然错误”是什么意思?你有例外吗?这是ASP.NT还是Winforms?您是否正在使用ADO.NET连接到数据库,是否可以显示更多代码?看起来像WebForms SqlDataSource。您应该能够在查询中使用控制参数。TextBox1.Text=*;删除表用户;-最好使用参数:
SelectCommand="SELECT * FROM [TestName] WHERE ([TestFirstName] LIKE '%' + @TestFirstName2 + '%')">
    <SelectParameters>
        <asp:ControlParameter ControlID="TextBox1" Name="TestFirstName2" 
            PropertyName="Text" Type="String" />
    </SelectParameters>