public override string GetSQLString(ISQL.DBType type) { StringBuilder sb = new StringBuilder(); sb.Append("delete from "); sb.Append(tables.GetSQLString(type)); sb.Append(where.GetSQLString(type)); return(SQLUtils.RemoveMultiBlank(sb.ToString())); }
public override string GetSQLString(ISQL.DBType type) { StringBuilder sb = new StringBuilder(); sb.Append("update "); sb.Append(tables.GetSQLString(type)); sb.Append(" set "); sb.Append(fieldValues.GetSQLString(type)); sb.Append(where.GetSQLString(type)); return(SQLUtils.RemoveMultiBlank(sb.ToString().Trim())); }
public override string GetSQLString(ISQL.DBType type) { StringBuilder sb = new StringBuilder(); if (type == ISQL.DBType.mysql) { if (ignore) { sb.Append("insert "); sb.Append(" ignore "); } else { sb.Append("replace"); } } else { sb.Append("insert "); } sb.Append(" into "); sb.Append(tables.GetSQLString(type)); if (type == ISQL.DBType.mysql) { sb.Append(" set "); sb.Append(fieldValues.GetSQLString(type)); } else { ISQL[] fields = Sharpen.Collections.ToArray(fieldValues.GetFieldMap(), new ISQL[0]); if (fields.Length > 0) { IList <string> fList = new List <string>(); IList <string> vList = new List <string>(); foreach (ISQL f in fields) { SQLCondition sc = (SQLCondition)f; fList.Add("\"" + sc.GetField() + "\""); vList.Add(" '" + SQLUtils.GetStandardSQLValue(sc.GetValue()) + "' "); } sb.Append(" (" + StringUtil.GetStringFromStrings(fList, ",") + ") values(" + StringUtil.GetStringFromStrings(vList, ",") + ") "); } } return(SQLUtils.RemoveMultiBlank(sb.ToString().Trim())); }
public override string GetSQLString(ISQL.DBType type) { if (!StringUtil.IsNullOrEmpty(this.sql)) { return(this.sql); } string field = fields.Size() == 0 ? "*" : fields.GetSQLString(type); string sql = string.Empty; if (type == ISQL.DBType.mysql || limit == null || (limit.GetCount() == 0 && limit.GetStart() == 0)) { sql = "select " + field + " from " + tables.GetSQLString(type) + where.GetSQLString(type) + groupBy.GetSQLString(type) + orderBy.GetSQLString(type) + limit.GetSQLString(type); } else { WhereSQL w1 = where.Clone(); w1.AddCondition(new SQLCondition("rownum", (limit.GetStart() + limit.GetCount() + 1).ToString(), "<", true)); WhereSQL w2 = where.Clone(); w2.AddCondition(new SQLCondition("rownum", (limit.GetStart() + 1).ToString(), "<", true)); sql = "SELECT * FROM ( SELECT A.*, ROWNUM RNNNNNN FROM (SELECT " + field + " FROM " + tables.GetSQLString(type) + where.GetSQLString(type) + groupBy.GetSQLString(type) + orderBy.GetSQLString(type) + ") A WHERE ROWNUM <= " + (limit.GetStart() + limit.GetCount()) + " ) WHERE RNNNNNN >= " + (limit.GetStart() + 1); } return(SQLUtils.RemoveMultiBlank(sql.Trim()).Trim()); }