Beispiel #1
0
        public override void BuildQuery(IDatabaseProvider provider)
        {
            if (_fieldValues == null || !_fieldValues.Any())
            {
                return;
            }

            var primaryKeyValueParameter = "PrimaryKeyValue";

            Builder.AppendFormat("UPDATE {0} SET {1} WHERE {2} = {3};", provider.CombineSchemaAndTable(_schema, _table), _fieldValues.Select(x => string.Format("{0} = {1}", x.Key, provider.CreateParameterName(x.Key.Replace("\"", "").Replace(" ", "_")))).Join(", "), _primaryKeyField, provider.CreateParameterName(primaryKeyValueParameter));

            Parameters.Add(primaryKeyValueParameter, _primaryKeyValue);

            foreach (var x in _fieldValues)
            {
                Parameters.Add(x.Key.Replace("\"", "").Replace(" ", "_"), x.Value);
            }
        }