public override void GenSql(ISqlDumper dmp) { Expr.GenSql(dmp); if (_alias != null) { dmp.Put(" ^as %i", _alias); } }
public override void GenSql(ISqlDumper dmp) { if (Condition != null) { dmp.Put("&n^having &>"); Condition.GenSql(dmp); dmp.Put("&<"); } }
public abstract void PutLogMessage( ISqlDumper dmp, string operationExpr, string targetEntityExpr, string messageExpr, string durationExpr, string procedureExpr, string rowsExpr, IShellContext context);
public static void PutEditorInfo(ISqlDumper dmp, string editorInfo) { if (editorInfo == null) return; dmp.Put("&n-- *** EDITOR-INFO-BEGIN ***&n"); foreach (var line in editorInfo.Split('\n')) { dmp.Put("-- %s&n", line.TrimEnd()); } dmp.Put("-- *** EDITOR-INFO-END ***&n"); }
public static void GenSql(this DmlfSortOrderType type, ISqlDumper dmp) { switch (type) { case DmlfSortOrderType.Ascending: dmp.Put("^asc"); break; case DmlfSortOrderType.Descendning: dmp.Put("^desc"); break; } }
public override void GenSql(ISqlDumper dmp) { dmp.Put("("); bool was = false; foreach(var item in Items) { if (was) dmp.Put("+"); item.GenSql(dmp); was = true; } dmp.Put(")"); }
public override void GenSql(ISqlDumper dmp) { dmp.Put("^insert ^into %f ", InsertTarget); dmp.Put("(%,i) ^ values (", Columns.Select(x => x.TargetColumn)); for (int i = 0; i < Columns.Count; i++) { if (i > 0) dmp.Put(", "); Columns[i].Expr.GenSql(dmp); } dmp.Put(")"); dmp.EndCommand(); }
public override void GenSql(ISqlDumper dmp) { dmp.Put(" ^row_number() ^over (^order ^by "); bool was = false; foreach (var col in OrderBy) { if (was) dmp.Put(", "); col.GenSql(dmp); was = true; } dmp.Put(")"); }
public override void GenSql(ISqlDumper dmp) { dmp.Put(" %k(", FuncName); bool was = false; foreach (var arg in Arguments) { if (was) dmp.Put(","); was = true; arg.GenSql(dmp); } dmp.Put(")"); }
public SqlScriptCompiler(IDatabaseFactory factory, DataSyncSqlModel datasync, IShellContext context, string procName) { _context = context; _procName = procName; _datasync = datasync; _factory = factory; _sw = new StringWriter(); var so = new SqlOutputStream(factory.CreateDialect(), _sw, new SqlFormatProperties()); so.OverrideCommandDelimiter(";"); _dmp = factory.CreateDumper(so, new SqlFormatProperties()); }
protected void GenerateFrom(ISqlDumper dmp) { dmp.Put("&n^from &>"); bool wasfromItem = false; foreach (var fromItem in From) { if (wasfromItem) dmp.Put(",&n"); fromItem.GenSql(dmp); wasfromItem = true; } dmp.Put("&<"); }
public override void GenSql(ISqlDumper dmp) { dmp.Put("^update "); if (TopRecords != null) dmp.Put("^top(%s) ", TopRecords); if (UpdateTarget != null) UpdateTarget.GenSqlRef(dmp); dmp.Put("&n^set "); Columns.GenSql(dmp); if (dmp.Factory.DialectCaps.AllowUpdateFrom) { GenerateFrom(dmp); } if (Where != null) Where.GenSql(dmp); }
public override void GenSql(ISqlDumper dmp) { dmp.Put("^delete "); if (TopRecords != null) dmp.Put("^top(%s) ", TopRecords); if (dmp.Factory.DialectCaps.AllowDeleteFrom) { if (DeleteTarget != null) DeleteTarget.GenSqlRef(dmp); GenerateFrom(dmp); } else { dmp.Put("^from "); if (DeleteTarget != null) DeleteTarget.GenSqlRef(dmp); } if (Where != null) Where.GenSql(dmp); }
public static void GenSql(this DmlfJoinType join, ISqlDumper dmp) { switch (join) { case DmlfJoinType.Inner: dmp.Put("^inner ^join"); break; case DmlfJoinType.Left: dmp.Put("^left ^join"); break; case DmlfJoinType.Right: dmp.Put("^right ^join"); break; case DmlfJoinType.Outer: dmp.Put("^full ^outer ^join"); break; case DmlfJoinType.CrossApply: dmp.Put("^cross ^apply"); break; case DmlfJoinType.OuterApply: dmp.Put("^outer ^apply"); break; } }
public override void GenSqlEmpty(ISqlDumper dmp) { dmp.Put("(1=1)"); }
public override void GenSql(ISqlDumper dmp) { if (Conditions.Count == 0) { GenSqlEmpty(dmp); } else { GenSqlBegin(dmp); bool was = false; bool isIndent = false; foreach (var item in Conditions) { if (was) { if (!isIndent) { dmp.Put("&>"); isIndent = true; } dmp.Put("&n"); GenSqlConjuction(dmp); } GenSqlItem(item, dmp); was = true; } GenSqlEnd(dmp); if (isIndent) dmp.Put("&<"); } }
public virtual void GenSqlItem(DmlfConditionBase item, ISqlDumper dmp) { item.GenSql(dmp); }
public void GenerateScript(TableDataScript script, TableDataSetProperties props, ISqlDumper dmp) { }
protected abstract void DumpOperator(ISqlDumper dmp);
public void GenerateScript(TableDataScript script, TableDataSetProperties props, ISqlDumper dmp) { throw new NotImplementedError("DAE-00381"); }
public override void GenSql(ISqlDumper dmp) { Expr.GenSql(dmp); dmp.Put(" ^is ^not ^null"); }
public override void GenSql(ISqlDumper dmp) { Expr.GenSql(dmp); }
public void SaveChanges(BedTable table, ISqlDumper dmp) { throw new NotImplementedError("DAE-00380"); }
public override void GenSql(ISqlDumper dmp) { LeftExpr.GenSql(dmp); dmp.Put("<"); RightExpr.GenSql(dmp); }
protected override void DumpOperator(ISqlDumper dmp) { dmp.Put(" ^not ^between "); }
public override void GenSqlConjuction(ISqlDumper dmp) { dmp.Put(" ^or "); }
public override void GenSql(ISqlDumper dmp) { dmp.Put("(1=0)"); }
public override void GenSql(ISqlDumper dmp) { Expr.GenSql(dmp); dmp.Put(" "); OrderType.GenSql(dmp); }
public override void GenSql(ISqlDumper dmp) { dmp.Put("^not ^exists ("); Select.GenSql(dmp); dmp.Put(")"); }
public override void GenSql(ISqlDumper dmp) { Column.GenSql(dmp); }
public override void GenSql(ISqlDumper dmp) { dmp.AllowIdentityInsert(TableName, AllowIdentityInsert); }
public override void GenSql(ISqlDumper dmp) { dmp.Put("&r"); // dump separator if needed dmp.WriteRaw(_literal); }
public override void PutLogMessage( ISqlDumper dmp, string operationExpr, string targetEntityExpr, string messageExpr, string durationExpr, string procedureExpr, string rowsExpr, IShellContext context) { if (String.IsNullOrEmpty(TableName)) return; var fullName = new NameWithSchema(context.Replace(TableSchema), context.Replace(TableName)); var insert = new DmlfInsert(); insert.InsertTarget = fullName; if (!String.IsNullOrEmpty(OperationColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = OperationColumn, Expr = new DmlfSqlValueExpression { Value = operationExpr }, }); } if (!String.IsNullOrEmpty(MessageColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = MessageColumn, Expr = new DmlfSqlValueExpression { Value = messageExpr }, }); } if (!String.IsNullOrEmpty(DurationColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = DurationColumn, Expr = new DmlfSqlValueExpression { Value = durationExpr }, }); } if (!String.IsNullOrEmpty(TargetEntityColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = TargetEntityColumn, Expr = new DmlfSqlValueExpression { Value = targetEntityExpr }, }); } if (!String.IsNullOrEmpty(MessageDateColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = MessageDateColumn, Expr = new DmlfSqlValueExpression { Value = "GETDATE()" }, }); } if (!String.IsNullOrEmpty(ImportDateColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = ImportDateColumn, Expr = SqlScriptCompiler.ImportDateTimeExpression, }); } if (!String.IsNullOrEmpty(ProcedureColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = ProcedureColumn, Expr = new DmlfSqlValueExpression { Value = procedureExpr }, }); } if (!String.IsNullOrEmpty(RowsColumn)) { insert.Columns.Add(new DmlfUpdateField { TargetColumn = RowsColumn, Expr = new DmlfSqlValueExpression { Value = rowsExpr }, }); } if (insert.Columns.Any()) { insert.GenSql(dmp); dmp.Put("&n"); } }
public abstract void GenerateSql(ISqlDumper dmp);
public override void GenerateSqlRow(IBedRecord row, ISqlDumper dmp, string[] selcolumns) { dmp.Put("^delete ^from %f ", FullTableName); GenerateWhere(row, dmp, selcolumns); dmp.EndCommand(); }
public virtual void GenerateSql(ISqlDumper dmp) { throw new NotImplementedError("DAE-00107"); }
public virtual void GenSqlEnd(ISqlDumper dmp) { dmp.Put(")"); }
public abstract void GenSqlEmpty(ISqlDumper dmp);
public override void GenSql(ISqlDumper dmp) { dmp.Put("&r"); // dump separator if needed dmp.WriteRaw(Value); }
public abstract void GenSqlConjuction(ISqlDumper dmp);
public override void GenSql(ISqlDumper dmp) { dmp.Put("^count(^distinct "); Argument.GenSql(dmp); dmp.Put(")"); }
public virtual void GenerateSqlRow(IBedRecord row, ISqlDumper dmp, string[] selcolumns) { throw new NotImplementedError("DAE-00106"); }