DeveelDB  20151217
complete SQL database system, primarly developed for .NET/Mono frameworks
Classes | Public Member Functions | Properties | Private Member Functions | List of all members
Deveel.Data.Sql.Statements.InsertSelectStatement Class Reference
Inheritance diagram for Deveel.Data.Sql.Statements.InsertSelectStatement:
Deveel.Data.Sql.Statements.SqlStatement Deveel.Data.Sql.Statements.IPreparableStatement Deveel.Data.Sql.Statements.IStatement Deveel.Data.Serialization.ISerializable Deveel.Data.Sql.Statements.IStatement Deveel.Data.Sql.IExecutable Deveel.Data.Sql.IExecutable

Classes

class  Prepared
 

Public Member Functions

 InsertSelectStatement (string tableName, IEnumerable< string > columnNames, SqlQueryExpression queryExpression)
 
- Public Member Functions inherited from Deveel.Data.Sql.Statements.SqlStatement
ITable Execute (IRequest context)
 Prepares and evaluates this statement into a tabular result. More...
 

Properties

string TableName [get, private set]
 
IEnumerable< string > ColumnNames [get, private set]
 
SqlQueryExpression QueryExpression [get, private set]
 
- Properties inherited from Deveel.Data.Sql.Statements.SqlStatement
SqlQuery SourceQuery [get, set]
 Gets the SqlQuery that is the origin of this statement. More...
 
bool IsFromQuery [get, private set]
 Gets a boolean value indicating if this object was formed from the parsing of a SqlQuery or if it was manually created. More...
 
- Properties inherited from Deveel.Data.Sql.Statements.IStatement
SqlQuery SourceQuery [get]
 

Private Member Functions

IStatement IPreparableStatement. Prepare (IRequest request)
 

Additional Inherited Members

- Static Public Member Functions inherited from Deveel.Data.Sql.Statements.SqlStatement
static IEnumerable< SqlStatementParse (string sqlSource)
 Parses a given string into one of more statements. More...
 
static IEnumerable< SqlStatementParse (IContext context, string sqlSource)
 Parses a given string into one of more statements. More...
 
static IEnumerable< SqlStatementParse (IContext context, SqlQuery query)
 
- Protected Member Functions inherited from Deveel.Data.Sql.Statements.SqlStatement
 SqlStatement ()
 
 SqlStatement (ObjectData data)
 
virtual void ExecuteStatement (ExecutionContext context)
 
virtual void GetData (SerializeData data)
 
- Package Functions inherited from Deveel.Data.Sql.Statements.SqlStatement
void SetSource (SqlQuery query)
 

Detailed Description

Definition at line 27 of file InsertSelectStatement.cs.

Constructor & Destructor Documentation

Deveel.Data.Sql.Statements.InsertSelectStatement.InsertSelectStatement ( string  tableName,
IEnumerable< string >  columnNames,
SqlQueryExpression  queryExpression 
)
inline

Definition at line 28 of file InsertSelectStatement.cs.

28  {
29  TableName = tableName;
30  ColumnNames = columnNames;
31  QueryExpression = queryExpression;
32  }

Member Function Documentation

IStatement IPreparableStatement. Deveel.Data.Sql.Statements.InsertSelectStatement.Prepare ( IRequest  request)
inlineprivate

Implements Deveel.Data.Sql.Statements.IPreparableStatement.

Definition at line 40 of file InsertSelectStatement.cs.

40  {
41  var tableName = request.Query.ResolveTableName(TableName);
42  if (tableName == null)
43  throw new ObjectNotFoundException(ObjectName.Parse(TableName));
44 
45  var columns = new string[0];
46  if (ColumnNames != null)
47  columns = ColumnNames.ToArray();
48 
49  // TODO: Verify the columns!!!
50 
51  var queryPlan = request.Context.QueryPlanner().PlanQuery(new QueryInfo(request, QueryExpression));
52  return new Prepared(tableName, columns, queryPlan);
53  }

Property Documentation

IEnumerable<string> Deveel.Data.Sql.Statements.InsertSelectStatement.ColumnNames
getprivate set

Definition at line 36 of file InsertSelectStatement.cs.

SqlQueryExpression Deveel.Data.Sql.Statements.InsertSelectStatement.QueryExpression
getprivate set

Definition at line 38 of file InsertSelectStatement.cs.

string Deveel.Data.Sql.Statements.InsertSelectStatement.TableName
getprivate set

Definition at line 34 of file InsertSelectStatement.cs.


The documentation for this class was generated from the following file: