Search on DataTable

Last post 09-29-2008, 5:43 AM by patriwala. 2 replies.
Sort Posts: Previous Next
  •  10-20-2006, 4:01 AM Post number 3037

    Search on DataTable

    Dear all,

    I have a problem with search on DataTable in VB.NET. I have a DataTable with column Name have some values (Petter,Pettit,Mary,Jame,Jane). And If I search with key word "'Pet%". I can't get the results I want ===> (Petter,Pettit). Help me.....Thanks a lot

    Private Sub FilterDataTable()

    Dim dt As DataTable

    Dim i As Integer

    dt = dtName

    Dim strExpr As String

    strSearch = "Name LIKE  'Pet%'"

    Dim Rows() As DataRow

    Rows = dt.Select(strSearch)

    For i = 0 To Rows.GetUpperBound(0)

    MsgBox(foundRows(i)(0).ToString())

    Next i

    End Sub

  •  11-07-2006, 4:49 AM Post number 4716 in reply to post number 3037

    • quartz is not online. Last active: 11-09-2006, 5:33 PM quartz
    • Top 50 Contributor
    • Joined on 09-25-2006
    • San Diego, California
    • Level 2: Deep Blue

    Re: Search on DataTable

    try  using

        if(dt.Rows.Contains("pet"))


    Omit Needless Words - Strunk, William, Jr.

    Web-based Project Management
  •  09-29-2008, 5:43 AM Post number 69753 in reply to post number 3037

    Re: Search on DataTable

    hi,
       i am not getting what is foundRows(i)(0).ToString() in the for loop code. because your selected row in the Rows.
    you can do one thing MsgBox(Rows(i)(0).ToString());

    i am do that code in C# if you want to check it then below.

     DataSet ds = new DataSet();
            DataTable dt = new DataTable();
            DataColumn dc1 = new DataColumn("c1");
            dt.Columns.Add(dc1);
            DataColumn dc2 = new DataColumn("NAME");
            dt.Columns.Add(dc2);

            for (int i = 0; i < 5; i++)
            {
                DataRow dr1 = dt.NewRow();
                dr1[0] = i;
                dr1[1] = "categ" + i.ToString();
                dt.Rows.Add(dr1);   
            }

            for (int i = 0; i < 5; i++)
            {
                DataRow dr1 = dt.NewRow();
                dr1[0] = i;
                dr1[1] = "test" + i.ToString();
                dt.Rows.Add(dr1);
            }
           
            ds.Tables.Add(dt);
            //you can pass dyanamic condition here
            DataRow[] selectedrow= dt.Select("NAME like 'ca%'");
            for (int i = 0; i < selectedrow.Length; i++)
            {
                //you can put messagebox here
                Response.Write("<br> C1 : " + selectedrow[i][0].ToString());
                Response.Write("<br> C2 : " + selectedrow[i][1].ToString());
            }

    thnx

    Amit S Patriwala
    http://amitpatriwala.wordpress.com
View as RSS news feed in XML