public override string TranslateToSql(SetFieldInfo operation) { switch (operation.Type) { case "WithSQL": return($"{ operation.Field } = { operation.Value }"); case "WithValue": return($"{operation.Field} = {{{ operation.Index }}}"); case "Plus": return($"{operation.Field} = {operation.Field} + {{{ operation.Index }}}"); case "Subtract": return($"{operation.Field} = {operation.Field} - {{{ operation.Index }}}"); case "Multiply": return($"{operation.Field} = {operation.Field} * {{{ operation.Index }}}"); case "Divide": return($"{operation.Field} = {operation.Field} / {{{ operation.Index }}}"); case "Mod": return($"{operation.Field} = {operation.Field} % {{{ operation.Index }}}"); case "Append": return($"{operation.Field} = {operation.Field} || {{{operation.Index}}}"); case "Prepend": return($"{operation.Field} = {{{operation.Index}}} || {operation.Field}"); case "AddMilliseconds": throw new NotImplementedException(); case "AddSeconds": return($"{operation.Field} = {operation.Field} + INTERVAL '{ operation.Value } Seconds'"); case "AddMinutes": return($"{operation.Field} = {operation.Field} + INTERVAL '{ operation.Value } Minutes'"); case "AddHours": return($"{operation.Field} = {operation.Field} + INTERVAL '{ operation.Value } Hours'"); case "AddDays": return($"{operation.Field} = {operation.Field} + INTERVAL '{ operation.Value } Days'"); case "AddMonths": return($"{operation.Field} = {operation.Field} + INTERVAL '{ operation.Value } Months'"); case "AddYears": return($"{operation.Field} = {operation.Field} + INTERVAL '{ operation.Value } Years'"); } return(string.Empty); }
public virtual string TranslateToSql(SetFieldInfo operation) { switch (operation.Type) { case "WithSQL": return($"{ operation.Field } = { operation.Value }"); case "WithValue": return($"{operation.Field} = {{{ operation.Index }}}"); case "Plus": return($"{operation.Field} = {operation.Field} + {{{ operation.Index }}}"); case "Subtract": return($"{operation.Field} = {operation.Field} - {{{ operation.Index }}}"); case "Multiply": return($"{operation.Field} = {operation.Field} * {{{ operation.Index }}}"); case "Divide": return($"{operation.Field} = {operation.Field} / {{{ operation.Index }}}"); case "Mod": return($"{operation.Field} = {operation.Field} % {{{ operation.Index }}}"); case "Append": throw new NotSupportedException("Relational field setter does not support this operation."); case "Prepend": throw new NotSupportedException("Relational field setter does not support this operation."); case "AddMilliseconds": throw new NotSupportedException("Relational field setter does not support this operation."); case "AddSeconds": throw new NotSupportedException("Relational field setter does not support this operation."); case "AddMinutes": throw new NotSupportedException("Relational field setter does not support this operation."); case "AddHours": throw new NotSupportedException("Relational field setter does not support this operation."); case "AddDays": throw new NotSupportedException("Relational field setter does not support this operation."); case "AddMonths": throw new NotSupportedException("Relational field setter does not support this operation."); case "AddYears": throw new NotSupportedException("Relational field setter does not support this operation."); } return(string.Empty); }
public override string TranslateToSql(SetFieldInfo operation) { switch (operation.Type) { case "WithSQL": return($"{ operation.Field } = { operation.Value }"); case "WithValue": return($"{operation.Field} = {{{ operation.Index }}}"); case "Plus": return($"{operation.Field} = {operation.Field} + {{{ operation.Index }}}"); case "Subtract": return($"{operation.Field} = {operation.Field} - {{{ operation.Index }}}"); case "Multiply": return($"{operation.Field} = {operation.Field} * {{{ operation.Index }}}"); case "Divide": return($"{operation.Field} = {operation.Field} / {{{ operation.Index }}}"); case "Mod": return($"{operation.Field} = {operation.Field} % {{{ operation.Index }}}"); case "Append": return($"{operation.Field} = CONCAT({operation.Field}, {{{operation.Index}}})"); case "Prepend": return($"{operation.Field} = CONCAT({{{operation.Index}}}, {operation.Field})"); case "AddMilliseconds": return($"{operation.Field} = DATE_ADD({operation.Field}, INTERVAL {{{operation.Index}}} microsecond)"); case "AddSeconds": return($"{operation.Field} = DATE_ADD({operation.Field}, INTERVAL {{{operation.Index}}} second)"); case "AddMinutes": return($"{operation.Field} = DATE_ADD({operation.Field}, INTERVAL {{{operation.Index}}} minute)"); case "AddHours": return($"{operation.Field} = DATE_ADD({operation.Field}, INTERVAL {{{operation.Index}}} hour)"); case "AddDays": return($"{operation.Field} = DATE_ADD({operation.Field}, INTERVAL {{{operation.Index}}} day)"); case "AddMonths": return($"{operation.Field} = DATE_ADD({operation.Field}, INTERVAL {{{operation.Index}}} month)"); case "AddYears": return($"{operation.Field} = DATE_ADD({operation.Field}, INTERVAL {{{operation.Index}}} year)"); } return(string.Empty); }
public override string TranslateToSql(SetFieldInfo operation) { switch (operation.Type) { case "WithSQL": return($"{ operation.Field } = { operation.Value }"); case "WithValue": return($"{operation.Field} = {{{ operation.Index }}}"); case "Plus": return($"{operation.Field} = {operation.Field} + {{{ operation.Index }}}"); case "Subtract": return($"{operation.Field} = {operation.Field} - {{{ operation.Index }}}"); case "Multiply": return($"{operation.Field} = {operation.Field} * {{{ operation.Index }}}"); case "Divide": return($"{operation.Field} = {operation.Field} / {{{ operation.Index }}}"); case "Mod": return($"{operation.Field} = {operation.Field} % {{{ operation.Index }}}"); case "Append": return($"{operation.Field} = {operation.Field}+{{{operation.Index}}}"); case "Prepend": return($"{operation.Field} = {{{operation.Index}}}+{operation.Field}"); case "AddMilliseconds": return($"{operation.Field} = DATEADD(ms, {{{operation.Index}}}, {operation.Field})"); case "AddSeconds": return($"{operation.Field} = DATEADD(ss, {{{operation.Index}}}, {operation.Field})"); case "AddMinutes": return($"{operation.Field} = DATEADD(mi, {{{operation.Index}}}, {operation.Field})"); case "AddHours": return($"{operation.Field} = DATEADD(hh, {{{operation.Index}}}, {operation.Field})"); case "AddDays": return($"{operation.Field} = DATEADD(dd, {{{operation.Index}}}, {operation.Field})"); case "AddMonths": return($"{operation.Field} = DATEADD(mm, {{{operation.Index}}}, {operation.Field})"); case "AddYears": return($"{operation.Field} = DATEADD(yy, {{{operation.Index}}}, {operation.Field})"); } return(string.Empty); }
public override string TranslateToSql(SetFieldInfo operation) { switch (operation.Type) { case "WithSQL": return($"{ operation.Field } = { operation.Value }"); case "WithValue": return($"{operation.Field} = {{{ operation.Index }}}"); case "Plus": return($"{operation.Field} = {operation.Field} + {{{ operation.Index }}}"); case "Subtract": return($"{operation.Field} = {operation.Field} - {{{ operation.Index }}}"); case "Multiply": return($"{operation.Field} = {operation.Field} * {{{ operation.Index }}}"); case "Divide": return($"{operation.Field} = {operation.Field} / {{{ operation.Index }}}"); case "Mod": return($"{operation.Field} = {operation.Field} % {{{ operation.Index }}}"); case "Append": return($"{operation.Field} = {operation.Field} || {{{operation.Index}}}"); case "Prepend": return($"{operation.Field} = {{{operation.Index}}} || {operation.Field}"); case "AddMilliseconds": throw new NotSupportedException("Sqlite does not support million seconds operation of a datetime type."); case "AddSeconds": if (Convert.ToInt64(operation.Value) > 0) { return($"{operation.Field} = DATETIME({operation.Field}, '+{ operation.Value } SECONDS')"); } else { return($"{operation.Field} = DATETIME({operation.Field}, '{ operation.Value } SECONDS')"); } case "AddMinutes": if (Convert.ToInt64(operation.Value) > 0) { return($"{operation.Field} = DATETIME({operation.Field}, '+{ operation.Value } MINUTES')"); } else { return($"{operation.Field} = DATETIME({operation.Field}, '{ operation.Value } MINUTES')"); } case "AddHours": if (Convert.ToInt64(operation.Value) > 0) { return($"{operation.Field} = DATETIME({operation.Field}, '+{ operation.Value } HOURS')"); } else { return($"{operation.Field} = DATETIME({operation.Field}, '{ operation.Value } HOURS')"); } case "AddDays": if (Convert.ToInt64(operation.Value) > 0) { return($"{operation.Field} = DATETIME({operation.Field}, '+{ operation.Value } DAYS')"); } else { return($"{operation.Field} = DATETIME({operation.Field}, '{ operation.Value } DAYS')"); } case "AddMonths": if (Convert.ToInt64(operation.Value) > 0) { return($"{operation.Field} = DATETIME({operation.Field}, '+{ operation.Value } MONTHS')"); } else { return($"{operation.Field} = DATETIME({operation.Field}, '{ operation.Value } MONTHS')"); } case "AddYears": if (Convert.ToInt64(operation.Value) > 0) { return($"{operation.Field} = DATETIME({operation.Field}, '+{ operation.Value } YEARS')"); } else { return($"{operation.Field} = DATETIME({operation.Field}, '{ operation.Value } YEARS')"); } } return(string.Empty); }