public FromSelectClause (SelectStatement source) { Source = source; }
protected void OnSelectAllCommand () { TableNode node = (TableNode)CurrentNode.DataItem; IdentifierExpression tableId = new IdentifierExpression (node.Table.Name); SelectStatement sel = new SelectStatement (new FromTableClause (tableId)); IPooledDbConnection conn = node.ConnectionContext.ConnectionPool.Request (); IDbCommand command = conn.CreateCommand (sel); conn.ExecuteTableAsync (command, new ExecuteCallback<DataTable> (OnSelectCommandThreaded), null); }
public UnionClause (SelectStatement union) { Union = union; }
private void OnSelectColumnsCommandGetColumns (object state) { TableNode node = (TableNode)state; ColumnSchemaCollection columns = node.Table.Columns; //this can invoke the schema provider, so it must be in bg thread DispatchService.GuiDispatch (delegate () { SelectColumnDialog dlg = new SelectColumnDialog (true, columns); if (dlg.Run () == (int)Gtk.ResponseType.Ok) { IdentifierExpression tableId = new IdentifierExpression (node.Table.Name); List<IdentifierExpression> cols = new List<IdentifierExpression> (); foreach (ColumnSchema schema in dlg.CheckedColumns) cols.Add (new IdentifierExpression (schema.Name)); SelectStatement sel = new SelectStatement (new FromTableClause (tableId), cols); IPooledDbConnection conn = node.ConnectionContext.ConnectionPool.Request (); IDbCommand command = conn.CreateCommand (sel); conn.ExecuteTableAsync (command, new ExecuteCallback<DataTable> (OnSelectCommandThreaded), null); } dlg.Destroy (); }); }
protected void OnQueryCommand () { TableNode node = (TableNode)CurrentNode.DataItem; IdentifierExpression tableId = new IdentifierExpression (node.Table.Name); SelectStatement sel = new SelectStatement (new FromTableClause (tableId)); SqlQueryView view = new SqlQueryView (); view.SelectedConnectionContext = node.ConnectionContext; IDbFactory fac = DbFactoryService.GetDbFactory (node.ConnectionContext.ConnectionSettings); view.Text = fac.Dialect.GetSql (sel); IdeApp.Workbench.OpenDocument (view, true); }
protected virtual string GetStatementSql (SelectStatement statement) { StringBuilder sb = new StringBuilder (); sb.Append ("SELECT "); bool first = true; foreach (IdentifierExpression expr in statement.Columns) { if (first) first = false; else sb.Append (','); sb.Append (GetSql (expr)); } sb.Append (' '); sb.Append (Environment.NewLine); sb.Append (GetSql (statement.From)); if (statement.Where != null) { sb.Append (GetSql (statement.Where)); sb.Append (' '); sb.Append (Environment.NewLine); } if (statement.OrderBy != null) { sb.Append (GetSql (statement.OrderBy)); sb.Append (' '); sb.Append (Environment.NewLine); } if (statement.GroupBy != null) { sb.Append (GetSql (statement.GroupBy)); sb.Append (' '); sb.Append (Environment.NewLine); } if (statement.Having != null) { sb.Append (GetSql (statement.Having)); sb.Append (' '); sb.Append (Environment.NewLine); } if (statement.Union != null) { sb.Append (GetSql (statement.Union)); sb.Append (' '); sb.Append (Environment.NewLine); } if (statement.Join != null) { sb.Append (GetSql (statement.Join)); sb.Append (' '); sb.Append (Environment.NewLine); } sb.Append (';'); return sb.ToString (); }
public virtual string GetSelectQuery (TableSchema table) { ISqlDialect dialect = this.ConnectionPool.DbFactory.Dialect; IdentifierExpression tableId = new IdentifierExpression (table.Name); List<IdentifierExpression> columns = new List<IdentifierExpression>(); foreach (ColumnSchema col in table.Columns) { columns.Add(new IdentifierExpression(col.Name)); } SelectStatement sel = new SelectStatement (new FromTableClause (tableId),columns); return dialect.GetSql(sel); }
protected virtual string GetStatementSql(SelectStatement statement) { StringBuilder sb = new StringBuilder(); sb.Append("SELECT "); bool first = true; foreach (IdentifierExpression expr in statement.Columns) { if (first) { first = false; } else { sb.Append(','); } sb.Append(GetSql(expr)); } sb.Append(' '); sb.Append(Environment.NewLine); sb.Append(GetSql(statement.From)); if (statement.Where != null) { sb.Append(GetSql(statement.Where)); sb.Append(' '); sb.Append(Environment.NewLine); } if (statement.OrderBy != null) { sb.Append(GetSql(statement.OrderBy)); sb.Append(' '); sb.Append(Environment.NewLine); } if (statement.GroupBy != null) { sb.Append(GetSql(statement.GroupBy)); sb.Append(' '); sb.Append(Environment.NewLine); } if (statement.Having != null) { sb.Append(GetSql(statement.Having)); sb.Append(' '); sb.Append(Environment.NewLine); } if (statement.Union != null) { sb.Append(GetSql(statement.Union)); sb.Append(' '); sb.Append(Environment.NewLine); } if (statement.Join != null) { sb.Append(GetSql(statement.Join)); sb.Append(' '); sb.Append(Environment.NewLine); } sb.Append(';'); return(sb.ToString()); }