Мне нужно извлечь из простой строки, которые представляют sql-запрос таблицы, которые используются в запросе, без выполнения самого запроса в C#.Использовать таблицы из sql-запроса
Пример:
string strQuery = "SELECT * FROM table1 LEFT JOIN (SELECT * FROM table2) tt WHERE tt.name IN (SELECT name FROM table3)";
ArrayList arrUsedTables = GetUsedTablesFromQuery(strQuery);
и после этой строки объект arrUsedTables
будет содержать: table1
, table2
, table3
Помните, что запрос может быть намного сложнее!
Что ahve вы пробовали до сих пор? – David
Я бы предложил использовать регулярное выражение, однако .... http://stackoverflow.com/a/281059/284240 –
Вам нужен парсер SQL для .Net: http://stackoverflow.com/questions/76083/parsing- sql-in-net –