Click here to Skip to main content
11,571,471 members (75,767 online)
Rate this: bad
good
Please Sign up or sign in to vote.
See more: VB.NET
I can write any query from a text box for eg..

Select * from table
 
select product from food
 
Delete * from good
 
select product,quantity,id from food

How can i get the food or the word just after the word FROM

i need to extact just table name

please help anyone
Posted 8-Mar-14 8:14am
mrukr462
Edited 8-Mar-14 8:20am
Maciej Los186.5K
v2
Comments
Maciej Los at 8-Mar-14 14:21pm
   
What have you tried? Where are you stuck?
mrukr at 8-Mar-14 14:28pm
   
Dim str As String = textbox1.text
If str.Contains("FROM"C) Then
Dim index As Integer = str.IndexOf("FROM"C)
Dim result As String = str.Substring(0, index)
Console.WriteLine("result: " & result)
End If

im not sure if this is not working for the result

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Please, read my comment to the question.

All you need to do is to find FROM word than to extract table name.
How to: Search Strings Using String Methods (C# Programming Guide)[^]
How to: Search Within a String (Visual Basic)[^]
How to: Search Strings Using Regular Expressions (C# Programming Guide)[^] - true, it's c#, but you can convert it via for example developerfusion online converter[^]

But i need to warn you. In some cases, sql query could looks like:
SELECT <field list>
FROM (
    SELECT <field list>
    FROM TableName
    WHERE <condition>
) AS T
WHERE <condition>
What do you expect to find?

Please, read these articles:
SQL Parser[^]
Microsoft.SqlServer.Management.SqlParser.Parser Namespace[^]
There you'll find many usefull information.
  Permalink  
v3

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS


Advertise | Privacy | Mobile
Web04 | 2.8.150624.2 | Last Updated 8 Mar 2014
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100