public static string Format(string sql) { var tokenizer = new PoorMansTSqlFormatterLib.Tokenizers.TSqlStandardTokenizer(); var parser = new PoorMansTSqlFormatterLib.Parsers.TSqlStandardParser(); var tokenizedSql = tokenizer.TokenizeSQL(sql); var parsedSql = parser.ParseSQL(tokenizedSql); var innerFormatter = new PoorMansTSqlFormatterLib.Formatters.TSqlStandardFormatter(); //webBrowser_OutputSql.SetHTML(_formatter.FormatSQLTree(parsedSql)); return innerFormatter.FormatSQLTree(parsedSql); }
public static string Format(string sql) { var tokenizer = new PoorMansTSqlFormatterLib.Tokenizers.TSqlStandardTokenizer(); var parser = new PoorMansTSqlFormatterLib.Parsers.TSqlStandardParser(); var tokenizedSql = tokenizer.TokenizeSQL(sql); var parsedSql = parser.ParseSQL(tokenizedSql); var innerFormatter = new PoorMansTSqlFormatterLib.Formatters.TSqlStandardFormatter(); //webBrowser_OutputSql.SetHTML(_formatter.FormatSQLTree(parsedSql)); return(innerFormatter.FormatSQLTree(parsedSql)); }
private void TokenizeSql(DataTable dt, string columnName) { var col = dt.Columns.Add("short_query").Ordinal; var tokenizer = new PoorMansTSqlFormatterLib.Tokenizers.TSqlStandardTokenizer(); var parser = new PoorMansTSqlFormatterLib.Parsers.TSqlStandardParser(); foreach (DataRow r in dt.Rows) { var qry = r.Field <string>(columnName); if (qry.Length <= 100) { r[col] = qry; } else { var res = parser.ParseSQL( tokenizer.TokenizeSQL(qry) ); var txt = ""; var tmp = res.SelectSingleNode("/SqlRoot/SqlStatement/Clause/OtherKeyword"); if (tmp != null) { txt += tmp.InnerText + " [...] "; } var tmp2 = res.SelectNodes("/SqlRoot/SqlStatement/*/SelectionTarget"); if (tmp2 != null) { txt += String.Join(", ", tmp2.Cast <XmlNode>().Select(x => x.InnerText).Take(5)); } if (String.IsNullOrWhiteSpace(txt)) { txt = qry.Substring(1, 100); } r[col] = txt; } //res document xml } }
private void TokenizeSql(DataTable dt, string columnName) { var col = dt.Columns.Add("short_query").Ordinal; var tokenizer = new PoorMansTSqlFormatterLib.Tokenizers.TSqlStandardTokenizer(); var parser = new PoorMansTSqlFormatterLib.Parsers.TSqlStandardParser(); foreach (DataRow r in dt.Rows) { var qry = r.Field<string>(columnName); if (qry.Length <= 100) { r[col] = qry; } else { var res = parser.ParseSQL( tokenizer.TokenizeSQL(qry) ); var txt = ""; var tmp = res.SelectSingleNode("/SqlRoot/SqlStatement/Clause/OtherKeyword"); if (tmp != null) txt += tmp.InnerText + " [...] "; var tmp2 = res.SelectNodes("/SqlRoot/SqlStatement/*/SelectionTarget"); if (tmp2 != null) { txt += String.Join(", ", tmp2.Cast<XmlNode>().Select(x => x.InnerText).Take(5)); } if (String.IsNullOrWhiteSpace(txt)) txt = qry.Substring(1, 100); r[col] = txt; } //res document xml } }