public IExistenceCheckQuery StoredProcedure(string name, IGNQueriable content, [Optional] IEnumerable <IGNParameter> parameters) { this.name = name; this.objectType = IGNDbObjectTypeEnum.StoredProcedure; queriable.AddOperation("CREATE PROCEDURE", queriable.SanitizeName(name), ""); queriable.AddOperation(queriable.FormatSpSubqueryAndParams(parameters ?? new List <IGNParameter>(), content), "", ""); return(this); }
public IExistenceCheckQuery View(string name, IGNQueriable content) { this.name = name; objectType = IGNDbObjectTypeEnum.View; queriable.AddOperation("CREATE VIEW", queriable.SanitizeName(name), ""); queriable.AddOperation("AS", "", "\n"); queriable.AddOperation($"{content}", "", "\n"); return(this); }
internal string FormatSpSubqueryAndParams(IEnumerable <IGNParameter> fields, IGNQueriable subquery) { if (dataDriver.Dialect == DialectEnum.MSSQL) { return($" {GetParams(()=>fields)}\nAS\n{subquery}"); } else if (dataDriver.Dialect == DialectEnum.MySQL) { return($" ({GetParams(()=>fields)})\nBEGIN\n{subquery}\nEND"); } return(string.Empty); }
public static void SetCanExecute(ExistsEnum existsFunc, IGNQueriable queriable) { switch (existsFunc) { case ExistsEnum.Exists: queriable.canExecute = queriable.exists; break; case ExistsEnum.NotExists: queriable.canExecute = !queriable.exists; break; default: queriable.canExecute = true; break; } }
public AlterQuery(IGNQueriable queriable) : base(queriable) { }
public UpdateQuery(IGNQueriable queriable) : base(queriable) { }
public QueryResult(IGNQueriable queriable) { this.queriable = queriable; }
internal CreateQuery(IGNQueriable queriable) : base(queriable) { }
public GroupOrderQuery(IGNQueriable queriable) : base(queriable) { }
public DropQuery(IGNQueriable queriable) : base(queriable) { }
public DeleteQuery(IGNQueriable queriable) : base(queriable) { }
public static void SetExists(bool exists, IGNQueriable queriable) { queriable.exists = queriable.exists && exists; }
public SelectQuery(IGNQueriable queriable, bool distinct, IEnumerable <string> fieldNames = null) : base(queriable) { this.distinct = distinct; this.fieldNames = fieldNames; }
public InsertQuery(IGNQueriable queriable) : base(queriable) { values = new List <string>(); }
internal ConditionalQuery(IGNQueriable queriable) : base(queriable) { }