protected Sql GetWith(Sql sql, string paramPrefix) { int length = withList.Count; if (length == 0) { return(sql.AddFormat("VALUES (NULL)")); } sql.AddFormat("({0}) VALUES (", string.Join(",", withList.Keys)); int i = 0; foreach (var with in withList) { DatabaseProvider.GetParameter(sql, paramPrefix + "v" + i, with.Value); DatabaseProvider.GetParameterValue(sql, paramPrefix + "v" + i); if (i + 1 < length) { sql.AddText(","); } else { sql.AddText(")"); } i++; } return(sql); //int i = 0, j = 0; //return sql // .AddFormat("({0}) VALUES ({1})", // string.Join(",", withList.Keys), // string.Join(",", withList.Values.Select(x => DatabaseProvider.GetParameterValue(paramPrefix + "v" + i++)))) // .AddParameters(withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); //return new Sql( // string.Format("({0}) VALUES ({1})", // string.Join(",", withList.Keys), // string.Join(",", withList.Values.Select(x => DatabaseProvider.GetParameterValue(paramPrefix + "v" + i++)))), // withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); //return string.Format("({0}) VALUES ({1})", // string.Join(",", withList.Keys), // string.Join(",", withList.Values.Select(x => "'" + x + "'")) //); }
public Sql GetSql(Sql sql, string tableAlias) { int length = whereList.Count; if (length == 0) { return(sql); } if (Type == JoinType.Inner) { sql.AddText("INNER JOIN "); } else if (Type == JoinType.Outer) { sql.AddText("LEFT OUTER JOIN "); } else { throw new NotImplementedException("Wrong JoinType: " + Type); } sql.AddFormat("{0} {1} ON ", TableName, tableAlias); for (int i = 0; i < length; i++) { //whereList[i].GetCommandParameter(sql, paramPrefix, i); whereList[i].GetCommandString(sql, "", i); if (i + 1 < length) { sql.AddText(" AND "); } } sql.AddText(" \r\n"); return(sql); }
protected Sql GetWhere(Sql sql, string paramPrefix) { int length = whereList.Count; if (length == 0) { return(sql); } sql.AddText("WHERE \r\n"); for (int i = 0; i < length; i++) { whereList[i].GetCommandParameter(sql, paramPrefix, i); whereList[i].GetCommandString(sql, paramPrefix, i); if (i + 1 < length) { sql.AddText(" AND \r\n"); } } return(sql); }
protected Sql GetWith(Sql sql, string paramPrefix) { int length = withList.Count; if (length == 0) return sql.AddFormat("VALUES (NULL)"); sql.AddFormat("({0}) VALUES (", string.Join(",", withList.Keys)); int i = 0; foreach (var with in withList) { DatabaseProvider.GetParameter(sql, paramPrefix + "v" + i, with.Value); DatabaseProvider.GetParameterValue(sql, paramPrefix + "v" + i); if (i + 1 < length) sql.AddText(","); else sql.AddText(")"); i++; } return sql; //int i = 0, j = 0; //return sql // .AddFormat("({0}) VALUES ({1})", // string.Join(",", withList.Keys), // string.Join(",", withList.Values.Select(x => DatabaseProvider.GetParameterValue(paramPrefix + "v" + i++)))) // .AddParameters(withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); //return new Sql( // string.Format("({0}) VALUES ({1})", // string.Join(",", withList.Keys), // string.Join(",", withList.Values.Select(x => DatabaseProvider.GetParameterValue(paramPrefix + "v" + i++)))), // withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); //return string.Format("({0}) VALUES ({1})", // string.Join(",", withList.Keys), // string.Join(",", withList.Values.Select(x => "'" + x + "'")) //); }
protected Sql GetWith(Sql sql, string paramPrefix) { int length = withList.Count; if (length == 0) { return(sql); } int i = 0; foreach (var with in withList) { DatabaseProvider.GetParameter(sql, paramPrefix + "v" + i, with.Value); DatabaseProvider.GetParameterComparison(sql, with.Key, Relation.Equal, paramPrefix + "v" + i); if (i + 1 < length) { sql.AddText(","); } i++; } return(sql); //int i = 0, j = 0; //return sql // .Join(",", withList.Select(x => DatabaseProvider.GetParameterComparison(x.Key, Relation.Equal, paramPrefix + "v" + i++)).ToArray()) // .AddParameters(withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); //return new Sql( // string.Join(",", withList.Select(x => DatabaseProvider.GetParameterComparison(x.Key, Relation.Equal, paramPrefix + "v" + i++))), // withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); }
protected Sql GetWith(Sql sql, string paramPrefix) { int length = withList.Count; if (length == 0) return sql; int i = 0; foreach (var with in withList) { DatabaseProvider.GetParameter(sql, paramPrefix + "v" + i, with.Value); DatabaseProvider.GetParameterComparison(sql, with.Key, Relation.Equal, paramPrefix + "v" + i); if (i + 1 < length) sql.AddText(","); i++; } return sql; //int i = 0, j = 0; //return sql // .Join(",", withList.Select(x => DatabaseProvider.GetParameterComparison(x.Key, Relation.Equal, paramPrefix + "v" + i++)).ToArray()) // .AddParameters(withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); //return new Sql( // string.Join(",", withList.Select(x => DatabaseProvider.GetParameterComparison(x.Key, Relation.Equal, paramPrefix + "v" + i++))), // withList.Select(x => DatabaseProvider.GetParameter(paramPrefix + "v" + j++, x.Value)).ToArray()); }