Ejemplo n.º 1
0
        public static string EmitUpdateStatement(AstTableNode astTableNode, IEnumerable <TableColumnValueMapping> assignments, IEnumerable <TableColumnValueMapping> conditions)
        {
            var updateTemplate = new TemplatePlatformEmitter("SimpleUpdate");

            updateTemplate.Map("Table", astTableNode.SchemaQualifiedName);
            var assignmentStrings = new List <string>();

            foreach (var assignmentPair in assignments)
            {
                assignmentStrings.Add(String.Format(CultureInfo.InvariantCulture, "{0} {1} {2}", assignmentPair.ColumnName, assignmentPair.OperatorString, assignmentPair.ColumnValue));
            }

            updateTemplate.Map("ColumnValuePairs", FlattenStringList(assignmentStrings));

            var whereTemplate = new TemplatePlatformEmitter("SimpleWhere");
            var whereStrings  = new List <string>();

            foreach (var wherePair in conditions)
            {
                whereStrings.Add(String.Format(CultureInfo.InvariantCulture, "{0} {1} {2}", wherePair.ColumnName, wherePair.OperatorString, wherePair.ColumnValue));
            }

            whereTemplate.Map("ColumnValuePairs", FlattenStringList(whereStrings, " AND "));

            return(String.Format(CultureInfo.InvariantCulture, "{0} {1}", updateTemplate.Emit(), whereTemplate.Emit()));
        }
Ejemplo n.º 2
0
        public static string EmitSelectAllStatement(AstTableNode astTableNode, IEnumerable <string> columnNames)
        {
            var selectTemplate = new TemplatePlatformEmitter("SimpleSelect");

            selectTemplate.Map("Table", astTableNode.SchemaQualifiedName);
            selectTemplate.Map("Columns", FlattenStringList(columnNames));
            return(selectTemplate.Emit());
        }