public override Statement EmitStatement(EmitMode mode) { if (DataType.Columns.Count > 0) { RenameExpression expression = new RenameExpression(); expression.Expression = (Expression)Nodes[0].EmitStatement(mode); for (int index = 0; index < DataType.Columns.Count; index++) { expression.Expressions.Add ( new RenameColumnExpression ( Schema.Object.EnsureRooted(SourceTableType.Columns[index].Name), DataType.Columns[index].Name, TableVar.Columns[index].MetaData == null ? null : TableVar.Columns[index].MetaData.Copy() ) ); } expression.Modifiers = Modifiers; return(expression); } else { return(Nodes[0].EmitStatement(mode)); } }
public override Statement EmitStatement(EmitMode mode) { if (mode == EmitMode.ForStorage) { SaveObjectID(); } else { RemoveObjectID(); } try { CreateRoleStatement statement = new CreateRoleStatement(); statement.RoleName = Schema.Object.EnsureRooted(Name); statement.MetaData = MetaData == null ? null : MetaData.Copy(); return(statement); } finally { if (mode == EmitMode.ForStorage) { RemoveObjectID(); } } }
public override Statement EmitDropStatement(EmitMode mode) { DropRoleStatement statement = new DropRoleStatement(); statement.RoleName = Schema.Object.EnsureRooted(Name); return(statement); }
public DefaultDefinition EmitDefinition(EmitMode mode) { if (mode == EmitMode.ForStorage) { SaveObjectID(); } else { RemoveObjectID(); } try { DefaultDefinition statement = new DefaultDefinition(); statement.MetaData = MetaData == null ? null : MetaData.Copy(); statement.Expression = (Expression)Node.EmitStatement(mode); return(statement); } finally { if (mode == EmitMode.ForStorage) { RemoveObjectID(); } } }
public override Statement EmitStatement(EmitMode mode) { if (mode == EmitMode.ForStorage) { SaveObjectID(); } else { RemoveObjectID(); } try { AlterTableVarStatement statement = (TableVar is BaseTableVar) ? (AlterTableVarStatement) new AlterTableStatement() : (AlterTableVarStatement) new AlterViewStatement(); statement.TableVarName = TableVar.Name; statement.CreateConstraints.Add(EmitDefinition(mode)); return(statement); } finally { if (mode == EmitMode.ForStorage) { RemoveObjectID(); } } }
public ConstraintDefinition EmitDefinition(EmitMode mode) { if (mode == EmitMode.ForStorage) { SaveObjectID(); SaveIsGenerated(); SaveGeneratorID(); } else { RemoveObjectID(); RemoveIsGenerated(); RemoveGeneratorID(); } try { ConstraintDefinition statement = new ConstraintDefinition(); statement.ConstraintName = Name; statement.MetaData = MetaData == null ? null : MetaData.Copy(); statement.Expression = (Expression)Node.EmitStatement(mode); return(statement); } finally { if (mode == EmitMode.ForStorage) { RemoveObjectID(); RemoveIsGenerated(); RemoveGeneratorID(); } } }
public override Statement EmitStatement(EmitMode mode) { CallExpression expression = new CallExpression(); expression.Identifier = Schema.Object.EnsureRooted(_operator.OperatorName); Expression sourceExpression = (Expression)Nodes[0].EmitStatement(mode); if (_aggregateColumnIndexes.Length > 0) { if (_aggregateColumnIndexes.Length == 0) { expression.Expressions.Add(new ColumnExtractorExpression(((TableNode)Nodes[0]).DataType.Columns[_aggregateColumnIndexes[0]].Name, sourceExpression)); } else { ColumnExtractorExpression columnExpression = new ColumnExtractorExpression(); columnExpression.Expression = sourceExpression; for (int index = 0; index < _aggregateColumnIndexes.Length; index++) { columnExpression.Columns.Add(new ColumnExpression(((TableNode)Nodes[0]).DataType.Columns[_aggregateColumnIndexes[index]].Name)); } expression.Expressions.Add(columnExpression); } } else { expression.Expressions.Add(sourceExpression); } expression.Modifiers = Modifiers; return(expression); }
// Statement public override Statement EmitStatement(EmitMode mode) { if (_dataType is Schema.RowType) { RowSelectorExpression expression = new RowSelectorExpression(); if (_specifiedRowType != null) { expression.TypeSpecifier = DataType.EmitSpecifier(mode); } Schema.IRowType rowType = _specifiedRowType != null ? _specifiedRowType : DataType; for (int index = 0; index < rowType.Columns.Count; index++) { expression.Expressions.Add(new NamedColumnExpression((Expression)Nodes[index].EmitStatement(mode), rowType.Columns[index].Name)); } expression.Modifiers = Modifiers; return(expression); } else { EntrySelectorExpression expression = new EntrySelectorExpression(); for (int index = 0; index < DataType.Columns.Count; index++) { expression.Expressions.Add(new NamedColumnExpression((Expression)Nodes[index].EmitStatement(mode), DataType.Columns[index].Name)); } expression.Modifiers = Modifiers; return(expression); } }
//public override int CatalogObjectID { get { return FTableVar == null ? -1 : FTableVar.ID; } } //public override int ParentObjectID { get { return FTableVar == null ? -1 : FTableVar.ID; } } public override Statement EmitStatement(EmitMode mode) { if (mode == EmitMode.ForStorage) { SaveObjectID(); } else { RemoveObjectID(); } try { AttachStatement statement = new AttachStatement(); statement.OperatorName = Schema.Object.EnsureRooted(_operator.OperatorName); statement.EventSourceSpecifier = new ObjectEventSourceSpecifier(Schema.Object.EnsureRooted(_tableVar.Name)); statement.EventSpecifier = new EventSpecifier(); statement.EventSpecifier.EventType = _eventType; statement.MetaData = MetaData == null ? null : MetaData.Copy(); return(statement); } finally { if (mode == EmitMode.ForStorage) { RemoveObjectID(); } } }
public override Statement EmitDropStatement(EmitMode mode) { DropReferenceStatement statement = new DropReferenceStatement(); statement.ReferenceName = Name; return(statement); }
public override Statement EmitDropStatement(EmitMode mode) { AlterScalarTypeStatement statement = new AlterScalarTypeStatement(); statement.ScalarTypeName = Schema.Object.EnsureRooted(_scalarType.Name); statement.Default = new D4.DropDefaultDefinition(); return(statement); }
public override Statement EmitDropStatement(EmitMode mode) { AlterScalarTypeStatement statement = new AlterScalarTypeStatement(); statement.ScalarTypeName = Schema.Object.EnsureRooted(_scalarType.Name); statement.DropConstraints.Add(new DropConstraintDefinition(Name)); return(statement); }
public TypeSpecifier EmitSpecifier(EmitMode mode) { CursorTypeSpecifier specifier = new CursorTypeSpecifier(); specifier.IsGeneric = IsGeneric; specifier.TypeSpecifier = TableType == null ? null : TableType.EmitSpecifier(mode); return(specifier); }
public TypeSpecifier EmitSpecifier(EmitMode mode) { ListTypeSpecifier specifier = new ListTypeSpecifier(); specifier.IsGeneric = IsGeneric; specifier.TypeSpecifier = ElementType == null ? null : ElementType.EmitSpecifier(mode); return(specifier); }
public TypeSpecifier EmitSpecifier(EmitMode mode) { RowTypeSpecifier specifier = new RowTypeSpecifier(); specifier.IsGeneric = IsGeneric; EmitColumns(mode, specifier); return(specifier); }
public override Statement EmitDefinition(EmitMode mode) { ConstraintDefinition statement = new ConstraintDefinition(); statement.ConstraintName = Name; statement.MetaData = MetaData == null ? null : MetaData.Copy(); statement.Expression = (Expression)Node.EmitStatement(mode); return(statement); }
public override Statement EmitStatement(EmitMode mode) { DifferenceExpression expression = new DifferenceExpression(); expression.LeftExpression = (Expression)Nodes[0].EmitStatement(mode); expression.RightExpression = (Expression)Nodes[1].EmitStatement(mode); expression.Modifiers = Modifiers; return(expression); }
public override Statement EmitDropStatement(EmitMode mode) { DetachStatement statement = new DetachStatement(); statement.OperatorName = Schema.Object.EnsureRooted(_operator.OperatorName); statement.EventSourceSpecifier = new ObjectEventSourceSpecifier(Schema.Object.EnsureRooted(_tableVar.Name)); statement.EventSpecifier = new EventSpecifier(); statement.EventSpecifier.EventType = _eventType; return(statement); }
public override Statement EmitDropStatement(EmitMode mode) { AlterTableVarStatement statement = _tableVar is Schema.BaseTableVar ? (AlterTableVarStatement) new AlterTableStatement() : new AlterViewStatement(); statement.TableVarName = Schema.Object.EnsureRooted(_tableVar.Name); DropConstraintDefinition definition = new DropConstraintDefinition(Name); statement.DropConstraints.Add(definition); return(statement); }
public override Statement EmitStatement(EmitMode mode) { AggregateExpression expression = new AggregateExpression(); expression.Expression = (Expression)_sourceNode.EmitStatement(mode); expression.ByColumns.AddRange(_columns); expression.ComputeColumns.AddRange(_computeColumns); expression.Modifiers = Modifiers; return(expression); }
public void EmitStatement(EmitMode mode, D4.OperatorBlock block) { if (ClassDefinition != null) { block.ClassDefinition = (ClassDefinition)ClassDefinition.Clone(); } else { block.Block = BlockNode.EmitStatement(mode); } }
public Statement EmitColumnHandler(TableVar tableVar, TableVarColumn column, EmitMode mode) { AttachStatement statement = new AttachStatement(); statement.MetaData = MetaData; statement.OperatorName = _operator.OperatorName; statement.EventSourceSpecifier = new ColumnEventSourceSpecifier(tableVar.Name, column.Name); statement.EventSpecifier = new EventSpecifier(); statement.EventSpecifier.EventType = _eventType; return(statement); }
public Statement EmitScalarTypeHandler(ScalarType scalarType, EmitMode mode) { AttachStatement statement = new AttachStatement(); statement.MetaData = MetaData; statement.OperatorName = _operator.OperatorName; statement.EventSourceSpecifier = new ObjectEventSourceSpecifier(scalarType.Name); statement.EventSpecifier = new EventSpecifier(); statement.EventSpecifier.EventType = _eventType; return(statement); }
public override Statement EmitStatement(EmitMode mode) { if (mode == EmitMode.ForStorage) { SaveObjectID(); } else { RemoveObjectID(); } try { CreateServerStatement statement = new CreateServerStatement(); statement.ServerName = Schema.Object.EnsureRooted(Name); statement.MetaData = MetaData == null ? null : MetaData.Copy(); if (_users.Count > 0) { Block block = new Block(); block.Statements.Add(statement); foreach (ServerLinkUser user in _users.Values) { block.Statements.Add ( new ExpressionStatement ( new CallExpression ( "CreateServerLinkUserWithEncryptedPassword", new Expression[] { new ValueExpression(user.UserID), new CallExpression("Name", new Expression[] { new ValueExpression(user.ServerLink.Name) }), new ValueExpression(user.ServerLinkUserID), new ValueExpression(user.ServerLinkPassword) } ) ) ); } return(block); } return(statement); } finally { if (mode == EmitMode.ForStorage) { RemoveObjectID(); } } }
public override Statement EmitStatement(EmitMode mode) { ProjectExpression expression = new ProjectExpression(); expression.Expression = (Expression)Nodes[0].EmitStatement(mode); foreach (Schema.TableVarColumn column in TableVar.Columns) { expression.Columns.Add(new ColumnExpression(Schema.Object.EnsureRooted(column.Name))); } expression.Modifiers = Modifiers; return(expression); }
protected void EmitColumns(EmitMode mode, RowTypeSpecifier specifier) { NamedTypeSpecifier columnSpecifier; foreach (Column column in Columns) { columnSpecifier = new NamedTypeSpecifier(); columnSpecifier.Identifier = column.Name; columnSpecifier.TypeSpecifier = column.DataType.EmitSpecifier(mode); specifier.Columns.Add(columnSpecifier); } }
public override Statement EmitStatement(EmitMode mode) { ExtendExpression expression = new ExtendExpression(); expression.Expression = (Expression)Nodes[0].EmitStatement(mode); for (int index = ExtendColumnOffset; index < DataType.Columns.Count; index++) { expression.Expressions.Add(new NamedColumnExpression((Expression)Nodes[index - ExtendColumnOffset + 1].EmitStatement(mode), DataType.Columns[index].Name)); } expression.Modifiers = Modifiers; return(expression); }
public override Statement EmitStatement(EmitMode mode) { AlterTableStatement statement = new AlterTableStatement(); statement.TableVarName = Schema.Object.EnsureRooted(_tableVarColumn.TableVar.Name); AlterColumnDefinition definition = new AlterColumnDefinition(); definition.ColumnName = _tableVarColumn.Name; definition.Default = EmitDefinition(mode); statement.AlterColumns.Add(definition); return(statement); }
public override Statement EmitStatement(EmitMode mode) { RedefineExpression expression = new RedefineExpression(); expression.Expression = (Expression)Nodes[0].EmitStatement(mode); for (int index = 0; index < _redefineColumnOffsets.Length; index++) { expression.Expressions.Add(new NamedColumnExpression((Expression)Nodes[index + 1].EmitStatement(mode), DataType.Columns[_redefineColumnOffsets[index]].Name)); } expression.Modifiers = Modifiers; return(expression); }
public override Statement EmitStatement(EmitMode mode) { if (_operator.IsBuiltin && (NodeCount > 0) && (NodeCount <= 2)) { Expression expression; if (Nodes.Count == 1) { expression = new UnaryExpression ( _operator.OperatorName, _operator.Operands[0].Modifier == Modifier.Var ? new ParameterExpression(Modifier.Var, (Expression)Nodes[0].EmitStatement(mode)) : (Expression)Nodes[0].EmitStatement(mode) ); } else { expression = new BinaryExpression ( _operator.Operands[0].Modifier == Modifier.Var ? new ParameterExpression(Modifier.Var, (Expression)Nodes[0].EmitStatement(mode)) : (Expression)Nodes[0].EmitStatement(mode), _operator.OperatorName, _operator.Operands[1].Modifier == Modifier.Var ? new ParameterExpression(Modifier.Var, (Expression)Nodes[1].EmitStatement(mode)) : (Expression)Nodes[1].EmitStatement(mode) ); } expression.Modifiers = Modifiers; return(expression); } else { CallExpression expression = new CallExpression(); expression.Identifier = Schema.Object.EnsureRooted(_operator.OperatorName); for (int index = 0; index < NodeCount; index++) { if (_operator.Operands[index].Modifier == Modifier.Var) { expression.Expressions.Add(new ParameterExpression(Modifier.Var, (Expression)Nodes[index].EmitStatement(mode))); } else { expression.Expressions.Add((Expression)Nodes[index].EmitStatement(mode)); } } expression.Modifiers = Modifiers; return(expression); } }